Commit | Line | Data |
4f30591b |
1 | #!/usr/bin/perl |
2 | |
3 | use strict; |
4 | use warnings; |
5 | use Test::More; |
6 | use SQL::Abstract; |
7 | |
4f30591b |
8 | my $obj = bless {}, "Foo::Bar"; |
9 | |
10 | is(SQL::Abstract->_refkind(undef), 'UNDEF', 'UNDEF'); |
11 | |
12 | is(SQL::Abstract->_refkind({}), 'HASHREF', 'HASHREF'); |
13 | is(SQL::Abstract->_refkind([]), 'ARRAYREF', 'ARRAYREF'); |
14 | |
15 | is(SQL::Abstract->_refkind(\{}), 'HASHREFREF', 'HASHREFREF'); |
16 | is(SQL::Abstract->_refkind(\[]), 'ARRAYREFREF', 'ARRAYREFREF'); |
17 | |
18 | is(SQL::Abstract->_refkind(\\{}), 'HASHREFREFREF', 'HASHREFREFREF'); |
19 | is(SQL::Abstract->_refkind(\\[]), 'ARRAYREFREFREF', 'ARRAYREFREFREF'); |
20 | |
21 | is(SQL::Abstract->_refkind("foo"), 'SCALAR', 'SCALAR'); |
22 | is(SQL::Abstract->_refkind(\"foo"), 'SCALARREF', 'SCALARREF'); |
23 | is(SQL::Abstract->_refkind(\\"foo"), 'SCALARREFREF', 'SCALARREFREF'); |
24 | |
25 | # objects are treated like scalars |
26 | is(SQL::Abstract->_refkind($obj), 'SCALAR', 'SCALAR'); |
27 | is(SQL::Abstract->_refkind(\$obj), 'SCALARREF', 'SCALARREF'); |
28 | is(SQL::Abstract->_refkind(\\$obj), 'SCALARREFREF', 'SCALARREFREF'); |
29 | |
10e6c946 |
30 | done_testing; |