@@ -24,9 +24,10 @@ test('scope-enum with plain message and always should succeed empty enum', async
2424} ) ;
2525
2626test ( 'scope-enum with plain message and never should error empty enum' , async ( ) => {
27- const [ actual ] = scopeEnum ( await parsed . plain , 'never' , [ ] ) ;
27+ const [ actual , message ] = scopeEnum ( await parsed . plain , 'never' , [ ] ) ;
2828 const expected = false ;
2929 expect ( actual ) . toEqual ( expected ) ;
30+ expect ( message ) . toEqual ( 'scope must not be one of []' ) ;
3031} ) ;
3132
3233test ( 'with plain message should succeed correct enum' , async ( ) => {
@@ -36,15 +37,17 @@ test('with plain message should succeed correct enum', async () => {
3637} ) ;
3738
3839test ( 'scope-enum with plain message should error false enum' , async ( ) => {
39- const [ actual ] = scopeEnum ( await parsed . plain , 'always' , [ 'foo' ] ) ;
40+ const [ actual , message ] = scopeEnum ( await parsed . plain , 'always' , [ 'foo' ] ) ;
4041 const expected = false ;
4142 expect ( actual ) . toEqual ( expected ) ;
43+ expect ( message ) . toEqual ( 'scope must be one of [foo]' ) ;
4244} ) ;
4345
4446test ( 'scope-enum with plain message should error forbidden enum' , async ( ) => {
45- const [ actual ] = scopeEnum ( await parsed . plain , 'never' , [ 'bar' ] ) ;
47+ const [ actual , message ] = scopeEnum ( await parsed . plain , 'never' , [ 'bar' ] ) ;
4648 const expected = false ;
4749 expect ( actual ) . toEqual ( expected ) ;
50+ expect ( message ) . toEqual ( 'scope must not be one of [bar]' ) ;
4851} ) ;
4952
5053test ( 'scope-enum with plain message should succeed forbidden enum' , async ( ) => {
@@ -95,14 +98,21 @@ test('scope-enum with empty scope and never should succeed empty enum', async ()
9598 expect ( actual ) . toEqual ( expected ) ;
9699} ) ;
97100
98- test ( 'scope-enum with multiple scopes should succeed on message with multiple scopes' , async ( ) => {
99- const [ actual ] = scopeEnum ( await parsed . multiple , 'never' , [ 'bar' , 'baz' ] ) ;
101+ test ( 'scope-enum with multiple scopes should error on message with multiple scopes' , async ( ) => {
102+ const [ actual , message ] = scopeEnum ( await parsed . multiple , 'never' , [
103+ 'bar' ,
104+ 'baz' ,
105+ ] ) ;
100106 const expected = false ;
101107 expect ( actual ) . toEqual ( expected ) ;
108+ expect ( message ) . toEqual ( 'scope must not be one of [bar, baz]' ) ;
102109} ) ;
103110
104111test ( 'scope-enum with multiple scopes should error on message with forbidden enum' , async ( ) => {
105- const [ actual ] = scopeEnum ( await parsed . multiple , 'never' , [ 'bar' , 'qux' ] ) ;
112+ const [ actual , message ] = scopeEnum ( await parsed . multiple , 'never' , [
113+ 'bar' ,
114+ 'qux' ,
115+ ] ) ;
106116 const expected = true ;
107117 expect ( actual ) . toEqual ( expected ) ;
108118} ) ;
@@ -113,6 +123,12 @@ test('scope-enum with multiple scopes should error on message with superfluous s
113123 expect ( actual ) . toEqual ( expected ) ;
114124} ) ;
115125
126+ test ( 'scope-enum with multiple scope should succeed on message with multiple scopes' , async ( ) => {
127+ const [ actual ] = scopeEnum ( await parsed . multiple , 'always' , [ 'bar' , 'baz' ] ) ;
128+ const expected = true ;
129+ expect ( actual ) . toEqual ( expected ) ;
130+ } ) ;
131+
116132test ( 'scope-enum with multiple scope with comma+space should succeed on message with multiple scopes' , async ( ) => {
117133 const [ actual ] = scopeEnum ( await parsed . multipleCommaSpace , 'always' , [
118134 'bar' ,
0 commit comments