@@ -3,26 +3,32 @@ import { Effect } from "effect"
33
44import { parseOrThrow } from "./parser-helpers.js"
55
6+ const assertApplyAllActiveOnly = ( args : ReadonlyArray < string > , expectedActiveOnly : boolean ) => {
7+ const command = parseOrThrow ( args )
8+ expect ( command . _tag ) . toBe ( "ApplyAll" )
9+ if ( command . _tag === "ApplyAll" ) {
10+ expect ( command . activeOnly ) . toBe ( expectedActiveOnly )
11+ }
12+ }
13+
614describe ( "parseArgs apply-all --active" , ( ) => {
7- it . effect ( "parses apply-all and update-all without --active as activeOnly=false" , ( ) =>
15+ it . effect ( "parses apply-all without --active as activeOnly=false" , ( ) =>
16+ Effect . sync ( ( ) => {
17+ assertApplyAllActiveOnly ( [ "apply-all" ] , false )
18+ } ) )
19+
20+ it . effect ( "parses update-all without --active as activeOnly=false" , ( ) =>
21+ Effect . sync ( ( ) => {
22+ assertApplyAllActiveOnly ( [ "update-all" ] , false )
23+ } ) )
24+
25+ it . effect ( "parses apply-all with --active as activeOnly=true" , ( ) =>
826 Effect . sync ( ( ) => {
9- for ( const alias of [ "apply-all" , "update-all" ] as const ) {
10- const command = parseOrThrow ( [ alias ] )
11- expect ( command . _tag ) . toBe ( "ApplyAll" )
12- if ( command . _tag === "ApplyAll" ) {
13- expect ( command . activeOnly ) . toBe ( false )
14- }
15- }
27+ assertApplyAllActiveOnly ( [ "apply-all" , "--active" ] , true )
1628 } ) )
1729
18- it . effect ( "parses apply-all and update-all with --active as activeOnly=true" , ( ) =>
30+ it . effect ( "parses update-all with --active as activeOnly=true" , ( ) =>
1931 Effect . sync ( ( ) => {
20- for ( const alias of [ "apply-all" , "update-all" ] as const ) {
21- const command = parseOrThrow ( [ alias , "--active" ] )
22- expect ( command . _tag ) . toBe ( "ApplyAll" )
23- if ( command . _tag === "ApplyAll" ) {
24- expect ( command . activeOnly ) . toBe ( true )
25- }
26- }
32+ assertApplyAllActiveOnly ( [ "update-all" , "--active" ] , true )
2733 } ) )
2834} )
0 commit comments