1 # Test ticket creation with REST using non ascii subject
4 use RT::Test tests => 9;
7 # \x{XX} where XX is less than 255 is not treated as unicode code point
8 my $subject = Encode::decode('latin1', "Sujet accentu\x{e9}");
9 my $text = Encode::decode('latin1', "Contenu accentu\x{e9}");
11 my ($baseurl, $m) = RT::Test->started_ok;
13 my $queue = RT::Test->load_or_create_queue(Name => 'General');
14 ok($queue->Id, "loaded the General queue");
16 my $content = "id: ticket/new
28 Starts: 2009-03-10 16:14:55
29 Due: 2009-03-10 16:14:55
32 $m->post("$baseurl/REST/1.0/ticket/new", [
35 # error message from HTTP::Message: content must be bytes
36 content => Encode::encode_utf8($content),
37 ], Content_Type => 'form-data' );
39 my ($id) = $m->content =~ /Ticket (\d+) created/;
40 ok($id, "got ticket #$id");
42 my $ticket = RT::Ticket->new(RT->SystemUser);
44 is($ticket->Id, $id, "loaded the REST-created ticket");
45 is($ticket->Subject, $subject, "ticket subject successfully set");
47 my $attach = $ticket->Transactions->First->Attachments->First;
48 is($attach->Subject, $subject, "attachement subject successfully set");
49 is($attach->GetHeader('Subject'), $subject, "attachement header subject successfully set");