@@ -117,6 +117,7 @@ def assert_command(key, value)
117117
118118 assert_boolean "#{ key } .private" , value [ 'private' ]
119119 assert_boolean "#{ key } .default" , value [ 'default' ]
120+ assert_boolean "#{ key } .expose" , value [ 'expose' ]
120121 assert_version "#{ key } .version" , value [ 'version' ]
121122 assert_catch_all "#{ key } .catch_all" , value [ 'catch_all' ]
122123 assert_string_or_array "#{ key } .alias" , value [ 'alias' ]
@@ -141,11 +142,16 @@ def assert_command(key, value)
141142 refute repeatable_arg , "#{ key } .catch_all makes no sense with repeatable arg (#{ repeatable_arg } )"
142143 end
143144
145+ if value [ 'expose' ]
146+ assert value [ 'commands' ] , "#{ key } .expose makes no sense without commands"
147+ end
148+
144149 if key == "root"
145150 refute value [ 'alias' ] , "#{ key } .alias makes no sense"
146151 refute value [ 'group' ] , "#{ key } .group makes no sense"
147152 refute value [ 'default' ] , "#{ key } .default makes no sense"
148153 refute value [ 'private' ] , "#{ key } .private makes no sense"
154+ refute value [ 'expose' ] , "#{ key } .expose makes no sense"
149155 else
150156 refute value [ 'version' ] , "#{ key } .version makes no sense"
151157 refute value [ 'extensible' ] , "#{ key } .extensible makes no sense"
0 commit comments