-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtest-output.txt
More file actions
130 lines (111 loc) · 17.3 KB
/
Copy pathtest-output.txt
File metadata and controls
130 lines (111 loc) · 17.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
console.error
An update to ProfileSetupForm inside a test was not wrapped in act(...).
When testing, code that causes React state updates should be wrapped into act(...):
act(() => {
/* fire events that update state */
});
/* assert on the output */
This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act
[0m [90m 110 |[39m [36mconst[39m handleSubmit [33m=[39m [36masync[39m (event[33m:[39m [33mFormEvent[39m) [33m=>[39m {
[90m 111 |[39m event[33m.[39mpreventDefault()[33m;[39m
[31m[1m>[22m[39m[90m 112 |[39m setError([32m""[39m)[33m;[39m
[90m |[39m [31m[1m^[22m[39m
[90m 113 |[39m
[90m 114 |[39m [36mif[39m ([33m![39m[33mUSERNAME_REGEX[39m[33m.[39mtest(form[33m.[39musername[33m.[39mtrim())) {
[90m 115 |[39m setError([32m"username must be 3-30 chars and use letters, numbers, dot, underscore, or hyphen"[39m)[33m;[39m[0m
at node_modules/react-dom/cjs/react-dom-client.development.js:18758:19
at runWithFiberInDEV (node_modules/react-dom/cjs/react-dom-client.development.js:874:13)
at warnIfUpdatesNotWrappedWithActDEV (node_modules/react-dom/cjs/react-dom-client.development.js:18757:9)
at scheduleUpdateOnFiber (node_modules/react-dom/cjs/react-dom-client.development.js:16409:11)
at dispatchSetStateInternal (node_modules/react-dom/cjs/react-dom-client.development.js:9170:13)
at dispatchSetState (node_modules/react-dom/cjs/react-dom-client.development.js:9127:7)
at setError (components/ProfileSetupForm.tsx:112:5)
at executeDispatch (node_modules/react-dom/cjs/react-dom-client.development.js:19116:9)
at runWithFiberInDEV (node_modules/react-dom/cjs/react-dom-client.development.js:874:13)
at processDispatchQueue (node_modules/react-dom/cjs/react-dom-client.development.js:19166:19)
at node_modules/react-dom/cjs/react-dom-client.development.js:19767:9
at batchedUpdates$1 (node_modules/react-dom/cjs/react-dom-client.development.js:3255:40)
at dispatchEventForPluginEventSystem (node_modules/react-dom/cjs/react-dom-client.development.js:19320:7)
at dispatchEvent (node_modules/react-dom/cjs/react-dom-client.development.js:23585:11)
at dispatchDiscreteEvent (node_modules/react-dom/cjs/react-dom-client.development.js:23553:11)
at HTMLDivElement.callTheUserObjectsOperation (node_modules/jsdom/lib/jsdom/living/generated/EventListener.js:26:30)
at innerInvokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:350:25)
at invokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:286:3)
at HTMLFormElementImpl._dispatch (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:233:9)
at HTMLFormElementImpl.dispatchEvent (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:104:17)
at Proxy.dispatchEvent (node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:241:34)
at Object.dispatchEvent (__tests__/unit/components/ProfileSetupForm.test.tsx:139:20)
console.error
An update to ProfileSetupForm inside a test was not wrapped in act(...).
When testing, code that causes React state updates should be wrapped into act(...):
act(() => {
/* fire events that update state */
});
/* assert on the output */
This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act
[0m [90m 113 |[39m
[90m 114 |[39m [36mif[39m ([33m![39m[33mUSERNAME_REGEX[39m[33m.[39mtest(form[33m.[39musername[33m.[39mtrim())) {
[31m[1m>[22m[39m[90m 115 |[39m setError([32m"username must be 3-30 chars and use letters, numbers, dot, underscore, or hyphen"[39m)[33m;[39m
[90m |[39m [31m[1m^[22m[39m
[90m 116 |[39m [36mreturn[39m[33m;[39m
[90m 117 |[39m }
[90m 118 |[39m[0m
at node_modules/react-dom/cjs/react-dom-client.development.js:18758:19
at runWithFiberInDEV (node_modules/react-dom/cjs/react-dom-client.development.js:874:13)
at warnIfUpdatesNotWrappedWithActDEV (node_modules/react-dom/cjs/react-dom-client.development.js:18757:9)
at scheduleUpdateOnFiber (node_modules/react-dom/cjs/react-dom-client.development.js:16409:11)
at dispatchSetStateInternal (node_modules/react-dom/cjs/react-dom-client.development.js:9170:13)
at dispatchSetState (node_modules/react-dom/cjs/react-dom-client.development.js:9127:7)
at setError (components/ProfileSetupForm.tsx:115:7)
at executeDispatch (node_modules/react-dom/cjs/react-dom-client.development.js:19116:9)
at runWithFiberInDEV (node_modules/react-dom/cjs/react-dom-client.development.js:874:13)
at processDispatchQueue (node_modules/react-dom/cjs/react-dom-client.development.js:19166:19)
at node_modules/react-dom/cjs/react-dom-client.development.js:19767:9
at batchedUpdates$1 (node_modules/react-dom/cjs/react-dom-client.development.js:3255:40)
at dispatchEventForPluginEventSystem (node_modules/react-dom/cjs/react-dom-client.development.js:19320:7)
at dispatchEvent (node_modules/react-dom/cjs/react-dom-client.development.js:23585:11)
at dispatchDiscreteEvent (node_modules/react-dom/cjs/react-dom-client.development.js:23553:11)
at HTMLDivElement.callTheUserObjectsOperation (node_modules/jsdom/lib/jsdom/living/generated/EventListener.js:26:30)
at innerInvokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:350:25)
at invokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:286:3)
at HTMLFormElementImpl._dispatch (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:233:9)
at HTMLFormElementImpl.dispatchEvent (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:104:17)
at Proxy.dispatchEvent (node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:241:34)
at Object.dispatchEvent (__tests__/unit/components/ProfileSetupForm.test.tsx:139:20)
node.exe : FAIL __tests__/unit/components/ProfileSetupForm.test.tsx
At line:1 char:1
+ & "C:\Program Files\nodejs/node.exe" "C:\Program Files\nodejs/node_mo ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (FAIL __tests__/...upForm.test.tsx:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
ProfileSetupForm Component
√ shows a loading spinner before data arrives (43 ms)
√ renders the "Complete Your Profile" heading after loading (87 ms)
√ renders Username, First Name, Last Name fields (27 ms)
√ renders the "Continue to Dashboard" submit button (35 ms)
√ redirects to /dashboard if profile is already completed (19 ms)
√ shows invalid username message for short usernames (< 3 chars) (162 ms)
√ shows invalid message for usernames with invalid characters (430 ms)
√ shows error when submitting with an empty/invalid username (103 ms)
√ pre-populates fields with existing profile data from API (16 ms)
× disables the submit button when username has invalid format (291 ms)
√ redirects to /login if no authenticated user is found (20 ms)
● ProfileSetupForm Component › disables the submit button when username has invalid format
expect(element).toBeDisabled()
Received element is not disabled:
<button class="w-full rounded-lg bg-indigo-600 py-2.5 font-semibold text-white transition-colors
hover:bg-indigo-700 disabled:opacity-60" type="submit" />
[0m [90m 176 |[39m
[90m 177 |[39m [90m// Submit button should be disabled for invalid usernames[39m
[31m[1m>[22m[39m[90m 178 |[39m expect(screen[33m.[39mgetByRole([32m'button'[39m[33m,[39m {
name[33m:[39m [35m/continue to dashboard/i[39m }))[33m.[39mtoBeDisabled()[33m;[39m
[90m |[39m [31m[1m^[22m[39m
[90m 179 |[39m expect(mockProfileUpdate)[33m.[39mnot[33m.[39mtoHaveBeenCalled()[33m;[39m
[90m 180 |[39m })[33m;[39m
[90m 181 |[39m[0m
at Object.toBeDisabled (__tests__/unit/components/ProfileSetupForm.test.tsx:178:76)
Test Suites: 1 failed, 1 total
Tests: 1 failed, 10 passed, 11 total
Snapshots: 0 total
Time: 2.491 s
Ran all test suites matching __tests__/unit/components/ProfileSetupForm.test.tsx.