File tree Expand file tree Collapse file tree 1 file changed +133
-0
lines changed
src/plugin/composables/__tests__ Expand file tree Collapse file tree 1 file changed +133
-0
lines changed Original file line number Diff line number Diff line change 1+ import {
2+ useColumnErrorCheck ,
3+ useDeepMerge ,
4+ } from '../helpers' ;
5+
6+ describe ( 'Helpers Composable' , ( ) => {
7+
8+ describe ( 'useColumnErrorCheck' , ( ) => {
9+ describe ( 'Errors' , ( ) => {
10+ const propName = 'columns' ;
11+
12+ it ( 'should not throw an error when using correct column values' , ( ) => {
13+ const invokeCheck = ( ) => {
14+ useColumnErrorCheck ( {
15+ columns : {
16+ lg : 12 ,
17+ md : 12 ,
18+ sm : 12 ,
19+ xl : 12 ,
20+ } ,
21+ propName : propName ,
22+ } ) ;
23+ } ;
24+
25+ cy . wrap ( null ) . then ( ( ) => {
26+ expect ( invokeCheck ) . not . to . throw ( ) ;
27+ } ) ;
28+ } ) ;
29+
30+ it ( 'should fail if using incorrect column values' , ( ) => {
31+ const invokeCheck = ( ) => {
32+ useColumnErrorCheck ( {
33+ columns : {
34+ lg : 120 ,
35+ md : 120 ,
36+ sm : 120 ,
37+ xl : 120 ,
38+ } ,
39+ propName : propName ,
40+ } ) ;
41+ } ;
42+
43+ expect ( ( ) => useColumnErrorCheck ( {
44+ columns : {
45+ lg : 120 ,
46+ md : 120 ,
47+ sm : 120 ,
48+ xl : 120 ,
49+ } ,
50+ propName : propName ,
51+ } ) ) ;
52+
53+ cy . wrap ( null ) . then ( ( ) => {
54+ expect ( invokeCheck ) . to . throw ( `The ${ propName } values must be between 1 and 12` ) ;
55+ } ) ;
56+ } ) ;
57+ } ) ;
58+ } ) ;
59+
60+ describe ( 'useDeepMerge' , ( ) => {
61+ it ( 'should deep merge 3 objects' , ( ) => {
62+
63+ const attrs = { class : 'foo-class' } ;
64+
65+ const injectedOptions = {
66+ autoPage : false ,
67+ autoPageDelay : 1000 ,
68+ color : 'primary' ,
69+ density : 'compact' ,
70+ fieldColumns : {
71+ lg : 12 ,
72+ md : 12 ,
73+ sm : 6 ,
74+ } ,
75+ summaryColumns : {
76+ md : 12 ,
77+ sm : 6 ,
78+ } ,
79+ zed : {
80+ foo : {
81+ bar : 'baz' ,
82+ qux : 'qux' ,
83+ } ,
84+ } ,
85+ } ;
86+
87+ const props = {
88+ autoPage : true ,
89+ autoPageDelay : 250 ,
90+ color : 'secondary' ,
91+ density : 'default' ,
92+ fieldColumns : {
93+ md : 6 ,
94+ sm : 12 ,
95+ } ,
96+ summaryColumns : {
97+ md : 6 ,
98+ sm : 12 ,
99+ } ,
100+ zed : {
101+ foo : {
102+ bar : 'biz' ,
103+ } ,
104+ } ,
105+ } ;
106+
107+ const mergedProps = useDeepMerge ( attrs , injectedOptions , props ) ;
108+
109+ expect ( mergedProps ) . to . deep . equal ( {
110+ autoPage : true ,
111+ autoPageDelay : 250 ,
112+ class : 'foo-class' ,
113+ color : 'secondary' ,
114+ density : 'default' ,
115+ fieldColumns : {
116+ lg : 12 ,
117+ md : 6 ,
118+ sm : 12 ,
119+ } ,
120+ summaryColumns : {
121+ md : 6 ,
122+ sm : 12 ,
123+ } ,
124+ zed : {
125+ foo : {
126+ bar : 'biz' ,
127+ qux : 'qux' ,
128+ } ,
129+ } ,
130+ } ) ;
131+ } ) ;
132+ } ) ;
133+ } ) ;
You can’t perform that action at this time.
0 commit comments