use Test::More; eval 'use DBD::SQLite 1.0 ()'; plan skip_all => "DBD::SQLite required to run test querylet" if $@; plan tests => 8; use Querylet; database: dbi:SQLite:dbname=./t/wafers.db query: SELECT wafer_id, material, diameter, failurecode FROM grown_wafers WHERE reactor_id = 105 AND product_type <> 'Calibration' ORDER BY material, diameter delete rows where: $row->{material} !~ /^[a-z]+$/i add column surface_area: $value = $row->{diameter} * 3.14; delete column diameter add column cost: $value = $row->{surface_area} * 100 if $row->{material} eq 'GaAs'; $value = $row->{surface_area} * 200 if $row->{material} eq 'InP'; munge column failurecode: $value = 10 if $value == 3; # 3's have been reclassified munge all values: $value = '(null)' unless defined $value; no output no Querylet; ok(1, "made it here alive"); isa_ok($q, "Querylet::Query"); isa_ok($q->results, "ARRAY"); isa_ok($q->results->[0], "HASH"); cmp_ok(@{$q->results}, '==', 160, "correct number of results"); is($q->results->[0]->{material}, 'GaAs', 'first material correct'); is($q->results->[0]->{surface_area}, 6.28, 'first surfarea correct',); is($q->results->[0]->{cost}, 628, 'first cost correct',);