(t *testing.T)
| 9470 | } |
| 9471 | |
| 9472 | func TestTaskNameUniqueness(t *testing.T) { |
| 9473 | t.Parallel() |
| 9474 | |
| 9475 | db, _ := dbtestutil.NewDB(t) |
| 9476 | |
| 9477 | org := dbgen.Organization(t, db, database.Organization{}) |
| 9478 | user1 := dbgen.User(t, db, database.User{}) |
| 9479 | user2 := dbgen.User(t, db, database.User{}) |
| 9480 | template := dbgen.Template(t, db, database.Template{ |
| 9481 | OrganizationID: org.ID, |
| 9482 | CreatedBy: user1.ID, |
| 9483 | }) |
| 9484 | tv := dbgen.TemplateVersion(t, db, database.TemplateVersion{ |
| 9485 | TemplateID: uuid.NullUUID{UUID: template.ID, Valid: true}, |
| 9486 | OrganizationID: org.ID, |
| 9487 | CreatedBy: user1.ID, |
| 9488 | }) |
| 9489 | |
| 9490 | taskName := "my-task" |
| 9491 | |
| 9492 | // Create initial task for user1. |
| 9493 | task1 := dbgen.Task(t, db, database.TaskTable{ |
| 9494 | OrganizationID: org.ID, |
| 9495 | OwnerID: user1.ID, |
| 9496 | Name: taskName, |
| 9497 | TemplateVersionID: tv.ID, |
| 9498 | Prompt: "Test prompt", |
| 9499 | }) |
| 9500 | require.NotEqual(t, uuid.Nil, task1.ID) |
| 9501 | |
| 9502 | tests := []struct { |
| 9503 | name string |
| 9504 | ownerID uuid.UUID |
| 9505 | taskName string |
| 9506 | wantErr bool |
| 9507 | }{ |
| 9508 | { |
| 9509 | name: "duplicate task name same user", |
| 9510 | ownerID: user1.ID, |
| 9511 | taskName: taskName, |
| 9512 | wantErr: true, |
| 9513 | }, |
| 9514 | { |
| 9515 | name: "duplicate task name different case same user", |
| 9516 | ownerID: user1.ID, |
| 9517 | taskName: "MY-TASK", |
| 9518 | wantErr: true, |
| 9519 | }, |
| 9520 | { |
| 9521 | name: "same task name different user", |
| 9522 | ownerID: user2.ID, |
| 9523 | taskName: taskName, |
| 9524 | wantErr: false, |
| 9525 | }, |
| 9526 | } |
| 9527 | |
| 9528 | for _, tt := range tests { |
| 9529 | t.Run(tt.name, func(t *testing.T) { |
nothing calls this directly
no test coverage detected