Skip to content

Commit b30f36e

Browse files
committed
refactor: add test case for duplicate prefixes & remove redundant check on duplicate project name
1 parent 935eead commit b30f36e

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

master/internal/api_project.go

-3
Original file line numberDiff line numberDiff line change
@@ -542,9 +542,6 @@ func (a *apiServer) PostProject(
542542
if strings.Contains(err.Error(), "projects_key_key") {
543543
return nil,
544544
status.Errorf(codes.AlreadyExists, "project with key %s already exists", projectKey)
545-
} else if strings.Contains(err.Error(), "projects_name_key") {
546-
return nil,
547-
status.Errorf(codes.AlreadyExists, "project with name %s already exists", req.Name)
548545
}
549546
}
550547

master/internal/api_project_intg_test.go

+21
Original file line numberDiff line numberDiff line change
@@ -435,3 +435,24 @@ func TestCreateProjectWithDuplicateProjectKey(t *testing.T) {
435435
require.Error(t, err)
436436
require.Equal(t, status.Errorf(codes.AlreadyExists, "project with key %s already exists", projectKey), err)
437437
}
438+
439+
func TestCreateProjectWithDefaultKeyAndDuplicatePrefix(t *testing.T) {
440+
api, _, ctx := setupAPITest(t, nil)
441+
wresp, werr := api.PostWorkspace(ctx, &apiv1.PostWorkspaceRequest{Name: uuid.New().String()})
442+
require.NoError(t, werr)
443+
444+
projectName := uuid.New().String()
445+
projectKeyPrefix := projectName[:3]
446+
resp1, err := api.PostProject(ctx, &apiv1.PostProjectRequest{
447+
Name: projectName, WorkspaceId: wresp.Workspace.Id,
448+
})
449+
require.NoError(t, err)
450+
require.Equal(t, (projectKeyPrefix + "1"), resp1.Project.Key)
451+
452+
resp2, err := api.PostProject(ctx, &apiv1.PostProjectRequest{
453+
Name: projectName + "2", WorkspaceId: wresp.Workspace.Id,
454+
})
455+
require.NoError(t, err)
456+
require.NoError(t, err)
457+
require.Equal(t, (projectKeyPrefix + "2"), resp2.Project.Key)
458+
}

0 commit comments

Comments
 (0)