@@ -156,6 +156,35 @@ describe("CreateWorkspacePage", () => {
156
156
expect ( validationError ) . toBeInTheDocument ( ) ;
157
157
} ) ;
158
158
159
+ it ( "rich parameter: number validation fails with custom error" , async ( ) => {
160
+ jest
161
+ . spyOn ( API , "getTemplateVersionRichParameters" )
162
+ . mockResolvedValueOnce ( [
163
+ MockTemplateVersionParameter1 ,
164
+ {
165
+ ...MockTemplateVersionParameter2 ,
166
+ validation_error : "These are values: {min}, {max}, and {value}." ,
167
+ validation_monotonic : undefined // only needs min-max rules
168
+ } ,
169
+ ] ) ;
170
+
171
+ renderCreateWorkspacePage ( ) ;
172
+ await waitForLoaderToBeRemoved ( ) ;
173
+
174
+ const secondParameterField = await screen . findByLabelText (
175
+ MockTemplateVersionParameter2 . name ,
176
+ { exact : false } ,
177
+ ) ;
178
+ expect ( secondParameterField ) . toBeDefined ( ) ;
179
+ fireEvent . change ( secondParameterField , {
180
+ target : { value : "4" } ,
181
+ } ) ;
182
+ fireEvent . submit ( secondParameterField ) ;
183
+
184
+ const validationError = await screen . findByText ( "These are values: 1, 3, and 4." ) ;
185
+ expect ( validationError ) . toBeInTheDocument ( ) ;
186
+ } ) ;
187
+
159
188
it ( "auto create a workspace if uses mode=auto" , async ( ) => {
160
189
const param = "first_parameter" ;
161
190
const paramValue = "It works!" ;
0 commit comments