4 use Test::More tests => 9;
6 use_ok('SQL::Abstract') or BAIL_OUT( "$@" );
8 is SQL::Abstract->generate( [ -name => qw/me id/]), "me.id",
9 "Simple name generator";
11 is SQL::Abstract->generate(
13 [ -name => qw/me id/],
14 [ -name => qw/me foo bar/],
17 ), "me.id, me.foo.bar, bar",
20 is SQL::Abstract->generate(
21 [ -alias => [ -name => qw/me id/], "foobar", ]
25 is SQL::Abstract->generate(
27 [ '>', [-name => qw/me id/], [-value => 500 ] ]
29 ), "WHERE me.id > ?", "where clause";
32 is SQL::Abstract->generate(
34 [ '>', [-name => qw/me id/], [-value => 500 ] ],
35 [ '==', [-name => qw/me name/], [-value => '200' ] ]
37 ), "WHERE me.id > ? AND me.name = ?", "where clause";
40 is SQL::Abstract->generate(
42 [ '>', [-name => qw/me id/], [-value => 500 ] ],
43 [ '==', [-name => qw/me name/], [-value => '200' ] ],
45 ), "WHERE me.id > ? OR me.name = ?", "where clause";
48 is SQL::Abstract->generate(
50 [ '>', [-name => qw/me id/], [-value => 500 ] ],
52 [ '==', [-name => qw/me name/], [-value => '200' ] ],
53 [ '==', [-name => qw/me name/], [-value => '100' ] ]
56 ), "WHERE me.id > ? OR me.name = ? OR me.name = ?", "where clause";
58 is SQL::Abstract->generate(
60 [ '==', [-name => qw/me id/], [-value => 500 ] ],
62 [ '>', [-name => qw/me name/], [-value => '200' ] ],
63 [ '<', [-name => qw/me name/], [-value => '100' ] ]
66 ), "WHERE me.id = ? OR (me.name > ? AND me.name < ?)", "where clause";