Skip to content

Commit 368fa2b

Browse files
committed
Make gen and add test fixtures
Remove TS changes
1 parent 59e8924 commit 368fa2b

File tree

8 files changed

+37
-111
lines changed

8 files changed

+37
-111
lines changed

coderd/database/dbauthz/dbauthz.go

+7-7
Original file line numberDiff line numberDiff line change
@@ -772,13 +772,6 @@ func (q *querier) DeleteReplicasUpdatedBefore(ctx context.Context, updatedAt tim
772772
return q.db.DeleteReplicasUpdatedBefore(ctx, updatedAt)
773773
}
774774

775-
func (q *querier) DeleteUserOauthMergeStates(ctx context.Context, userID uuid.UUID) error {
776-
if err := q.authorizeContext(ctx, rbac.ActionDelete, rbac.ResourceSystem); err != nil {
777-
return err
778-
}
779-
return q.db.DeleteUserOauthMergeStates(ctx, userID)
780-
}
781-
782775
func (q *querier) DeleteTailnetAgent(ctx context.Context, arg database.DeleteTailnetAgentParams) (database.DeleteTailnetAgentRow, error) {
783776
if err := q.authorizeContext(ctx, rbac.ActionUpdate, rbac.ResourceTailnetCoordinator); err != nil {
784777
return database.DeleteTailnetAgentRow{}, err
@@ -793,6 +786,13 @@ func (q *querier) DeleteTailnetClient(ctx context.Context, arg database.DeleteTa
793786
return q.db.DeleteTailnetClient(ctx, arg)
794787
}
795788

789+
func (q *querier) DeleteUserOauthMergeStates(ctx context.Context, userID uuid.UUID) error {
790+
if err := q.authorizeContext(ctx, rbac.ActionDelete, rbac.ResourceSystem); err != nil {
791+
return err
792+
}
793+
return q.db.DeleteUserOauthMergeStates(ctx, userID)
794+
}
795+
796796
func (q *querier) GetAPIKeyByID(ctx context.Context, id string) (database.APIKey, error) {
797797
return fetch(q.log, q.auth, q.db.GetAPIKeyByID)(ctx, id)
798798
}

coderd/database/dbfake/dbfake.go

+8-8
Original file line numberDiff line numberDiff line change
@@ -1187,6 +1187,14 @@ func (q *fakeQuerier) DeleteReplicasUpdatedBefore(_ context.Context, before time
11871187
return nil
11881188
}
11891189

1190+
func (*fakeQuerier) DeleteTailnetAgent(context.Context, database.DeleteTailnetAgentParams) (database.DeleteTailnetAgentRow, error) {
1191+
return database.DeleteTailnetAgentRow{}, ErrUnimplemented
1192+
}
1193+
1194+
func (*fakeQuerier) DeleteTailnetClient(context.Context, database.DeleteTailnetClientParams) (database.DeleteTailnetClientRow, error) {
1195+
return database.DeleteTailnetClientRow{}, ErrUnimplemented
1196+
}
1197+
11901198
func (q *fakeQuerier) DeleteUserOauthMergeStates(_ context.Context, userID uuid.UUID) error {
11911199
q.mutex.Lock()
11921200
defer q.mutex.Unlock()
@@ -1208,14 +1216,6 @@ func (q *fakeQuerier) DeleteUserOauthMergeStates(_ context.Context, userID uuid.
12081216
return nil
12091217
}
12101218

1211-
func (*fakeQuerier) DeleteTailnetAgent(context.Context, database.DeleteTailnetAgentParams) (database.DeleteTailnetAgentRow, error) {
1212-
return database.DeleteTailnetAgentRow{}, ErrUnimplemented
1213-
}
1214-
1215-
func (*fakeQuerier) DeleteTailnetClient(context.Context, database.DeleteTailnetClientParams) (database.DeleteTailnetClientRow, error) {
1216-
return database.DeleteTailnetClientRow{}, ErrUnimplemented
1217-
}
1218-
12191219
func (q *fakeQuerier) GetAPIKeyByID(_ context.Context, id string) (database.APIKey, error) {
12201220
q.mutex.RLock()
12211221
defer q.mutex.RUnlock()

coderd/database/dbmetrics/dbmetrics.go

+7-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
INSERT INTO oauth_merge_state(
2+
state_string,
3+
created_at,
4+
expires_at,
5+
to_login_type,
6+
user_id
7+
) VALUES (
8+
gen_random_uuid()::text,
9+
now(),
10+
now() + interval '24 hour',
11+
'oidc',
12+
(SELECT id FROM users LIMIT 1)
13+
)

coderd/database/querier.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

site/src/components/AuditLogRow/AuditLogDescription/AuditLogDescription.test.tsx

-20
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import {
44
MockWorkspaceCreateAuditLogForDifferentOwner,
55
MockAuditLogSuccessfulLogin,
66
MockAuditLogUnsuccessfulLoginKnownUser,
7-
MockAuditOauthConvert,
87
} from "testHelpers/entities"
98
import { AuditLogDescription } from "./AuditLogDescription"
109
import { AuditLogRow } from "../AuditLogRow"
@@ -85,25 +84,6 @@ describe("AuditLogDescription", () => {
8584
const statusPill = screen.getByRole("status")
8685
expect(statusPill).toHaveTextContent("201")
8786
})
88-
it("renders the correct string for login type conversion", async () => {
89-
render(<AuditLogRow auditLog={MockAuditOauthConvert} />)
90-
91-
expect(
92-
screen.getByText(
93-
t("auditLog:table.logRow.description.unlinkedAuditDescription", {
94-
truncatedDescription: `${MockAuditOauthConvert.user?.username} created login type conversion to ${MockAuditOauthConvert.resource_target}`,
95-
target: "",
96-
onBehalfOf: undefined,
97-
})
98-
.replace(/<[^>]*>/g, " ")
99-
.replace(/\s{2,}/g, " ")
100-
.trim(),
101-
),
102-
).toBeInTheDocument()
103-
104-
const statusPill = screen.getByRole("status")
105-
expect(statusPill).toHaveTextContent("201")
106-
})
10787
it("renders the correct string for unsuccessful login for a known user", async () => {
10888
render(<AuditLogRow auditLog={MockAuditLogUnsuccessfulLoginKnownUser} />)
10989

site/src/components/SignInForm/SignInForm.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ export const SignInForm: FC<React.PropsWithChildren<SignInFormProps>> = ({
9999
{loginPageTranslation.t("signInTo")}{" "}
100100
<strong>{commonTranslation.t("coder")}</strong>
101101
</h1>
102-
<Maybe condition={Boolean(error)}>
102+
<Maybe condition={error !== undefined}>
103103
<div className={styles.error}>
104104
<ErrorAlert error={error} />
105105
</div>

site/src/pages/UserSettingsPage/AccountPage/AccountPage.tsx

-67
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,13 @@ import { AccountForm } from "../../../components/SettingsAccountForm/SettingsAcc
44
import { useAuth } from "components/AuthProvider/AuthProvider"
55
import { useMe } from "hooks/useMe"
66
import { usePermissions } from "hooks/usePermissions"
7-
import { SignInForm } from "components/SignInForm/SignInForm"
8-
import { retrieveRedirect } from "utils/redirect"
9-
import { useQuery } from "@tanstack/react-query"
10-
import { convertToOauth, getAuthMethods } from "api/api"
11-
import { AuthMethods } from "api/typesGenerated"
12-
import axios from "axios"
13-
import { Maybe } from "components/Conditionals/Maybe"
147

158
export const AccountPage: FC = () => {
16-
const queryKey = ["get-auth-methods"]
17-
const {
18-
data: authMethodsData,
19-
error: authMethodsError,
20-
isLoading: authMethodsLoading,
21-
isFetched: authMethodsFetched,
22-
} = useQuery({
23-
// select: (res: AuthMethods) => {
24-
// return {
25-
// ...res,
26-
// // Disable the password auth in this account section. For merging accounts,
27-
// // we only want to support oidc.
28-
// password: {
29-
// enabled: false,
30-
// },
31-
// }
32-
// },
33-
queryKey,
34-
queryFn: getAuthMethods,
35-
})
36-
379
const [authState, authSend] = useAuth()
3810
const me = useMe()
3911
const permissions = usePermissions()
4012
const { updateProfileError } = authState.context
4113
const canEditUsers = permissions && permissions.updateUsers
42-
// Extra
43-
const redirectTo = retrieveRedirect(location.search)
44-
console.log(authState.context.data, authMethodsError)
4514

4615
return (
4716
<Section title="Account" description="Update your account info">
@@ -60,42 +29,6 @@ export const AccountPage: FC = () => {
6029
})
6130
}}
6231
/>
63-
64-
<Maybe condition={authMethodsData?.me_login_type === "password"}>
65-
<SignInForm
66-
authMethods={authMethodsData}
67-
redirectTo={redirectTo}
68-
isSigningIn={false}
69-
error={authMethodsError}
70-
onSubmit={async (credentials: {
71-
email: string
72-
password: string
73-
}) => {
74-
const mergeState = await convertToOauth(
75-
credentials.email,
76-
credentials.password,
77-
"oidc",
78-
)
79-
80-
window.location.href = `/api/v2/users/oidc/callback?oidc_merge_state=${
81-
mergeState?.state_string
82-
}&redirect=${encodeURIComponent(redirectTo)}`
83-
// await axios.get(
84-
// `/api/v2/users/oidc/callback?oidc_merge_state=${
85-
// mergeState?.state_string
86-
// }&redirect=${encodeURIComponent(redirectTo)}`,
87-
// )
88-
89-
{
90-
/* <Link
91-
href={`/api/v2/users/oidc/callback?redirect=${encodeURIComponent(
92-
redirectTo,
93-
)}`}
94-
> */
95-
}
96-
}}
97-
></SignInForm>
98-
</Maybe>
9932
</Section>
10033
)
10134
}

0 commit comments

Comments
 (0)