@@ -17,12 +17,14 @@ const SELECTORS = {
17
17
FIELD_SELECT_MEDIA : "FieldItem_images" ,
18
18
FIELD_SELECT_BOOLEAN : "FieldItem_yes_no" ,
19
19
FIELD_SELECT_ONE_TO_ONE : "FieldItem_one_to_one" ,
20
+ FIELD_SELECT_CURRENCY : "FieldItem_currency" ,
20
21
MEDIA_CHECKBOX_LIMIT : "MediaCheckbox_limit" ,
21
22
MEDIA_CHECKBOX_LOCK : "MediaCheckbox_group_id" ,
22
23
DROPDOWN_ADD_OPTION : "DropdownAddOption" ,
23
24
DROPDOWN_DELETE_OPTION : "DeleteOption" ,
24
25
AUTOCOMPLETE_MODEL_ZUID : "Autocomplete_relatedModelZUID" ,
25
26
AUTOCOMPLETE_FIELED_ZUID : "Autocomplete_relatedFieldZUID" ,
27
+ AUTOCOMPLETE_FIELD_CURRENCY : "Autocomplete_currency" ,
26
28
INPUT_LABEL : "FieldFormInput_label" ,
27
29
INPUT_NAME : "FieldFormInput_name" ,
28
30
INPUT_OPTION_LABEL : "OptionLabel" ,
@@ -357,6 +359,44 @@ describe("Schema: Fields", () => {
357
359
cy . getBySelector ( `Field_${ fieldName } ` ) . should ( "exist" ) ;
358
360
} ) ;
359
361
362
+ it ( "Creates a currency field" , ( ) => {
363
+ cy . intercept ( "**/fields?showDeleted=true" ) . as ( "getFields" ) ;
364
+
365
+ const fieldLabel = `Currency ${ timestamp } ` ;
366
+ const fieldName = `currency_${ timestamp } ` ;
367
+
368
+ // Open the add field modal
369
+ cy . getBySelector ( SELECTORS . ADD_FIELD_BTN ) . should ( "exist" ) . click ( ) ;
370
+ cy . getBySelector ( SELECTORS . ADD_FIELD_MODAL ) . should ( "exist" ) ;
371
+
372
+ // Select one-to-one relationship field
373
+ cy . getBySelector ( SELECTORS . FIELD_SELECT_CURRENCY ) . should ( "exist" ) . click ( ) ;
374
+
375
+ // Select default currency
376
+ cy . getBySelector ( SELECTORS . AUTOCOMPLETE_FIELD_CURRENCY ) . type ( "phil" ) ;
377
+ cy . get ( "[role=listbox] [role=option]" ) . first ( ) . click ( ) ;
378
+
379
+ // Fill up fields
380
+ cy . getBySelector ( SELECTORS . INPUT_LABEL ) . should ( "exist" ) . type ( fieldLabel ) ;
381
+
382
+ // Navigate to rules tab and add default value
383
+ cy . getBySelector ( SELECTORS . RULES_TAB_BTN ) . click ( ) ;
384
+ // click on the default value checkbox
385
+ cy . getBySelector ( SELECTORS . DEFAULT_VALUE_CHECKBOX ) . click ( ) ;
386
+ // enter a default value
387
+ cy . getBySelector ( SELECTORS . DEFAULT_VALUE_INPUT ) . type ( "1000.50" ) ;
388
+ // Verify default currency
389
+ cy . getBySelector ( SELECTORS . DEFAULT_VALUE_INPUT ) . contains ( "PHP" ) ;
390
+ // Click done
391
+ cy . getBySelector ( SELECTORS . SAVE_FIELD_BUTTON ) . should ( "exist" ) . click ( ) ;
392
+ cy . getBySelector ( SELECTORS . ADD_FIELD_MODAL ) . should ( "not.exist" ) ;
393
+
394
+ cy . wait ( "@getFields" ) ;
395
+
396
+ // Check if field exists
397
+ cy . getBySelector ( `Field_${ fieldName } ` ) . should ( "exist" ) ;
398
+ } ) ;
399
+
360
400
it ( "Creates a field via add another field button" , ( ) => {
361
401
cy . intercept ( "**/fields?showDeleted=true" ) . as ( "getFields" ) ;
362
402
0 commit comments