More tests
This commit is contained in:
parent
a9ca9918a5
commit
66d36242fd
1 changed files with 38 additions and 5 deletions
43
t/Crud.t
43
t/Crud.t
|
|
@ -28,7 +28,7 @@ my $session = WebGUI::Test->session;
|
|||
#----------------------------------------------------------------------------
|
||||
# Tests
|
||||
|
||||
plan tests => 11; # Increment this number for each test you create
|
||||
plan tests => 29; # Increment this number for each test you create
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
|
|
@ -49,10 +49,43 @@ is($col, 'lastUpdated', "structure: lastUpdated name");
|
|||
is($type, 'datetime', "structure: lastUpdated type");
|
||||
$sth->finish;
|
||||
|
||||
my $crud = WebGUI::Crud->create($session);
|
||||
isa_ok($crud, "WebGUI::Crud", "isa WebGUI::Crud");
|
||||
like($crud->get('dateCreated'), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, "dateCreated looks like a date");
|
||||
like($crud->get('lastUpdated'), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, "lastUpdated looks like a date");
|
||||
# check data
|
||||
my $record1 = WebGUI::Crud->create($session);
|
||||
isa_ok($record1, "WebGUI::Crud", "isa WebGUI::Crud");
|
||||
like($record1->get('dateCreated'), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, "dateCreated looks like a date");
|
||||
like($record1->get('lastUpdated'), qr/\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}/, "lastUpdated looks like a date");
|
||||
like($record1->get('sequenceNumber'), qr/\d+/, "sequenceNumber looks like a number");
|
||||
is($record1->get('sequenceNumber'), 1, "record 1 sequenceNumber is 1");
|
||||
like($record1->get('id'), qr/[A-Za-z0-9_-]{22}/, "id looks like a guid");
|
||||
|
||||
# instanciation
|
||||
my $record2 = WebGUI::Crud->create($session);
|
||||
isnt($record1->getId, $record2->getId, "can retrieve unique rows");
|
||||
my $copyOfRecord2 = WebGUI::Crud->new($session, $record2->getId);
|
||||
is($record2->getId, $copyOfRecord2->getId, "can reinstanciate record");
|
||||
|
||||
# sequencing
|
||||
is($record2->get('sequenceNumber'), 2, "record 1 sequenceNumber is 2");
|
||||
my $record3 = WebGUI::Crud->create($session);
|
||||
is($record3->get('sequenceNumber'), 3, "record 1 sequenceNumber is 3");
|
||||
my $record4 = WebGUI::Crud->create($session);
|
||||
is($record4->get('sequenceNumber'), 4, "record 1 sequenceNumber is 4");
|
||||
ok($record4->demote, "demotion reports success");
|
||||
is($record4->get('sequenceNumber'), 4, "can't demote further than end");
|
||||
ok($record1->promote, "promotion reports success");
|
||||
is($record1->get('sequenceNumber'), 1, "can't promote further than beginning");
|
||||
$record4->promote;
|
||||
is($record4->get('sequenceNumber'), 3, "promotion from end works");
|
||||
$record4->demote;
|
||||
is($record4->get('sequenceNumber'), 4, "demotion to end works");
|
||||
$record1->demote;
|
||||
is($record1->get('sequenceNumber'), 2, "demotion from beginning works");
|
||||
$record1->promote;
|
||||
is($record1->get('sequenceNumber'), 1, "promotion to beginning works");
|
||||
$record2->demote;
|
||||
is($record2->get('sequenceNumber'), 3, "demotion from middle works");
|
||||
$record2->promote;
|
||||
is($record2->get('sequenceNumber'), 2, "promotion from middle works");
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue