#!/usr/bin/env perl package Project; use parent 'ActiveResource::Base'; package Issue; use parent 'ActiveResource::Base'; package main; use common::sense; use Test::More; ActiveResource::Base->site("http://localhost:3000"); ActiveResource::Base->user("admin"); ActiveResource::Base->password("admin"); subtest "Some simple matter of finding" => sub { my $project = Project->find(1); is $project->name, "test"; my $issue = Issue->find(1); is $issue->id, 1; is $issue->project->id, 1; is $issue->project->name, "test"; is $issue->status->name, "Resolved"; ok $issue->can('save'); done_testing; }; subtest "Creating new issues" => sub { my $issue = Issue->create( project => { id => 1 }, subject => "Created from $$, " . __FILE__, ); like($issue->id, /^\d+$/); like($issue->subject, /^Created from \d+,/); done_testing; }; subtest "lvalue attribute setter and saving" => sub { my $issue = Issue->find(1); my $old_description = $issue->description; my $new_description = "Shiny new description. $$"; $issue->description = $new_description; $issue->save; is $issue->description, $new_description; { my $i2 = Issue->find(1); is $i2->description, $new_description; } $issue->description = $old_description; $issue->save; is $issue->description, $new_description; done_testing; }; done_testing;