factor out arg handling
[scpubgit/DKit.git] / t / basic_rule.t
index 6c78c96..c6d6795 100644 (file)
@@ -33,13 +33,16 @@ my $solver = DX::Solver->new(
   facts => { servers => \%servers, shells => \%shells }
 );
 
-$solver->add_rule(server => [ 'S' ] => [ member_of => qw(S servers) ]);
+$solver->add_rule(
+  server => [ 'S' ] => [ member_of => S => [ value => 'servers' ] ]
+);
 
 my $s = $solver->query([ 'S' ], [ call => server => 'S' ]);
 
 is_deeply([ map $_->{S}{name}, $s->results ], [ sort @servers ]);
 
-$solver->add_rule(shell => [ 'S' ] => [ member_of => qw(S shells) ])
+$solver->add_rule(
+  shell => [ 'S' ] => [ member_of => S => [ value => 'shells' ] ])
        ->add_rule(name => [ qw(T N) ],
                     [ constrain => [ qw(T N) ],
                       sub { $_[0]->{name} eq $_[1] } ]