Example #1
0
func TestCreateAccount(t *testing.T) {
	t.Skip("FIXME: please remove dependency on external services")
	tokenBuffer := make([]byte, 16)
	_, err := rand.Read(tokenBuffer)
	if err != nil {
		t.Fatal(err)
	}
	token := hex.EncodeToString(tokenBuffer)[:12]
	username := "******" + token
	authConfig := &registry.AuthConfig{
		Username:      username,
		Password:      "******",
		Email:         fmt.Sprintf("*****@*****.**", token),
		ServerAddress: "https://registry-stage.hub.docker.com/v1/",
	}
	status, err := registry.Login(authConfig, nil)
	if err != nil {
		t.Fatal(err)
	}
	expectedStatus := fmt.Sprintf(
		"Account created. Please see the documentation of the registry %s for instructions how to activate it.",
		authConfig.ServerAddress,
	)
	if status != expectedStatus {
		t.Fatalf("Expected status: \"%s\", found \"%s\" instead.", expectedStatus, status)
	}

	status, err = registry.Login(authConfig, nil)
	if err == nil {
		t.Fatalf("Expected error but found nil instead")
	}

	expectedError := "Login: Account is not Active"

	if !strings.Contains(err.Error(), expectedError) {
		t.Fatalf("Expected message \"%s\" but found \"%s\" instead", expectedError, err)
	}
}
Example #2
0
func TestLogin(t *testing.T) {
	t.Skip("FIXME: please remove dependency on external services")
	os.Setenv("DOCKER_INDEX_URL", "https://registry-stage.hub.docker.com/v1/")
	defer os.Setenv("DOCKER_INDEX_URL", "")
	authConfig := &registry.AuthConfig{
		Username:      "******",
		Password:      "******",
		Email:         "*****@*****.**",
		ServerAddress: "https://registry-stage.hub.docker.com/v1/",
	}
	status, err := registry.Login(authConfig, nil)
	if err != nil {
		t.Fatal(err)
	}
	if status != "Login Succeeded" {
		t.Fatalf("Expected status \"Login Succeeded\", found \"%s\" instead", status)
	}
}