import rt 3.6.4
[freeside.git] / rt / lib / t / regression / 13-attribute-tests.t
index 945bbcf..fdac94e 100644 (file)
@@ -1,5 +1,6 @@
-
-use Test::More tests => 24;
+use strict;
+use warnings;
+use Test::More tests => 34;
 use RT;
 RT::LoadConfig();
 RT::Init();
@@ -19,6 +20,8 @@ ok($user->id, "Created a test user");
 
 ok(1, $user->Attributes->BuildSelectQuery);
 my $attr = $user->Attributes;
+# XXX: Order by id as some tests depend on it
+$attr->OrderByCols({ FIELD => 'id' });
 
 ok(1, $attr->BuildSelectQuery);
 
@@ -28,6 +31,12 @@ ok (UNIVERSAL::isa($attr,'RT::Attributes'), 'got the attributes object');
 ($id, $msg) =  $user->AddAttribute(Name => 'TestAttr', Content => 'The attribute has content'); 
 ok ($id, $msg);
 is ($attr->Count,1, " One attr after adidng a first one");
+
+my $first_attr = $user->FirstAttribute('TestAttr');
+ok($first_attr, "got some sort of attribute");
+isa_ok($first_attr, 'RT::Attribute');
+is($first_attr->Content, 'The attribute has content', "got the right content back");
+
 ($id, $msg) = $attr->DeleteEntry(Name => $runid);
 ok(!$id, "Deleted non-existant entry  - $msg");
 is ($attr->Count,1, "1 attr after deleting an empty attr");
@@ -37,11 +46,22 @@ is ("@names", "TestAttr");
 
 
 ($id, $msg) = $user->AddAttribute(Name => $runid, Content => "First");
+ok($id, $msg);
+
+my $runid_attr = $user->FirstAttribute($runid);
+ok($runid_attr, "got some sort of attribute");
+isa_ok($runid_attr, 'RT::Attribute');
+is($runid_attr->Content, 'First', "got the right content back");
 
 is ($attr->Count,2, " Two attrs after adding an attribute named $runid");
 ($id, $msg) = $user->AddAttribute(Name => $runid, Content => "Second");
 ok($id, $msg);
 
+$runid_attr = $user->FirstAttribute($runid);
+ok($runid_attr, "got some sort of attribute");
+isa_ok($runid_attr, 'RT::Attribute');
+is($runid_attr->Content, 'First', "got the first content back still");
+
 is ($attr->Count,3, " Three attrs after adding a secondvalue to $runid");
 ($id, $msg) = $attr->DeleteEntry(Name => $runid, Content => "First");
 ok($id, $msg);