()
| 2724 | } |
| 2725 | |
| 2726 | func (s *MethodTestSuite) TestUser() { |
| 2727 | s.Run("GetAuthorizedUsers", s.Mocked(func(dbm *dbmock.MockStore, _ *gofakeit.Faker, check *expects) { |
| 2728 | arg := database.GetUsersParams{} |
| 2729 | dbm.EXPECT().GetAuthorizedUsers(gomock.Any(), arg, gomock.Any()).Return([]database.GetUsersRow{}, nil).AnyTimes() |
| 2730 | // No asserts because SQLFilter. |
| 2731 | check.Args(arg, emptyPreparedAuthorized{}).Asserts() |
| 2732 | })) |
| 2733 | s.Run("DeleteAPIKeysByUserID", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2734 | key := testutil.Fake(s.T(), faker, database.APIKey{}) |
| 2735 | dbm.EXPECT().DeleteAPIKeysByUserID(gomock.Any(), key.UserID).Return(nil).AnyTimes() |
| 2736 | check.Args(key.UserID).Asserts(rbac.ResourceApiKey.WithOwner(key.UserID.String()), policy.ActionDelete).Returns() |
| 2737 | })) |
| 2738 | s.Run("ExpirePrebuildsAPIKeys", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2739 | dbm.EXPECT().ExpirePrebuildsAPIKeys(gomock.Any(), gomock.Any()).Times(1).Return(nil) |
| 2740 | check.Args(dbtime.Now()).Asserts(rbac.ResourceApiKey, policy.ActionDelete).Returns() |
| 2741 | })) |
| 2742 | s.Run("GetQuotaAllowanceForUser", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2743 | u := testutil.Fake(s.T(), faker, database.User{}) |
| 2744 | arg := database.GetQuotaAllowanceForUserParams{UserID: u.ID, OrganizationID: uuid.New()} |
| 2745 | dbm.EXPECT().GetQuotaAllowanceForUser(gomock.Any(), arg).Return(int64(0), nil).AnyTimes() |
| 2746 | check.Args(arg).Asserts(u, policy.ActionRead).Returns(int64(0)) |
| 2747 | })) |
| 2748 | s.Run("GetQuotaConsumedForUser", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2749 | u := testutil.Fake(s.T(), faker, database.User{}) |
| 2750 | arg := database.GetQuotaConsumedForUserParams{OwnerID: u.ID, OrganizationID: uuid.New()} |
| 2751 | dbm.EXPECT().GetQuotaConsumedForUser(gomock.Any(), arg).Return(int64(0), nil).AnyTimes() |
| 2752 | check.Args(arg).Asserts(u, policy.ActionRead).Returns(int64(0)) |
| 2753 | })) |
| 2754 | s.Run("GetUserAISeatStates", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2755 | a := testutil.Fake(s.T(), faker, database.User{}) |
| 2756 | b := testutil.Fake(s.T(), faker, database.User{}) |
| 2757 | ids := []uuid.UUID{a.ID, b.ID} |
| 2758 | seatStates := []uuid.UUID{a.ID} |
| 2759 | dbm.EXPECT().GetUserAISeatStates(gomock.Any(), ids).Return(seatStates, nil).AnyTimes() |
| 2760 | check.Args(ids).Asserts(rbac.ResourceAiSeat, policy.ActionRead).Returns(seatStates) |
| 2761 | })) |
| 2762 | s.Run("GetUserByEmailOrUsername", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2763 | u := testutil.Fake(s.T(), faker, database.User{}) |
| 2764 | arg := database.GetUserByEmailOrUsernameParams{Email: u.Email} |
| 2765 | dbm.EXPECT().GetUserByEmailOrUsername(gomock.Any(), arg).Return(u, nil).AnyTimes() |
| 2766 | check.Args(arg).Asserts(u, policy.ActionRead).Returns(u) |
| 2767 | })) |
| 2768 | s.Run("GetUserByID", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2769 | u := testutil.Fake(s.T(), faker, database.User{}) |
| 2770 | dbm.EXPECT().GetUserByID(gomock.Any(), u.ID).Return(u, nil).AnyTimes() |
| 2771 | check.Args(u.ID).Asserts(u, policy.ActionRead).Returns(u) |
| 2772 | })) |
| 2773 | s.Run("GetUsersByIDs", s.Mocked(func(dbm *dbmock.MockStore, faker *gofakeit.Faker, check *expects) { |
| 2774 | a := testutil.Fake(s.T(), faker, database.User{CreatedAt: dbtime.Now().Add(-time.Hour)}) |
| 2775 | b := testutil.Fake(s.T(), faker, database.User{CreatedAt: dbtime.Now()}) |
| 2776 | ids := []uuid.UUID{a.ID, b.ID} |
| 2777 | dbm.EXPECT().GetUsersByIDs(gomock.Any(), ids).Return([]database.User{a, b}, nil).AnyTimes() |
| 2778 | check.Args(ids).Asserts(a, policy.ActionRead, b, policy.ActionRead).Returns(slice.New(a, b)) |
| 2779 | })) |
| 2780 | s.Run("GetUsers", s.Mocked(func(dbm *dbmock.MockStore, _ *gofakeit.Faker, check *expects) { |
| 2781 | arg := database.GetUsersParams{} |
| 2782 | dbm.EXPECT().GetAuthorizedUsers(gomock.Any(), arg, gomock.Any()).Return([]database.GetUsersRow{}, nil).AnyTimes() |
| 2783 | // Asserts are done in a SQL filter |
nothing calls this directly
no test coverage detected