use strict; use warnings; use RT::Test tests => 'no_declare'; my (undef, $m) = RT::Test->started_ok; $m->login; $m->follow_link( id => 'admin-custom-fields-create' ); $m->submit_form_ok({ form_name => "ModifyCustomField", fields => { Name => 'Images', TypeComposite => 'Image-1', LookupType => 'RT::Queue-RT::Ticket', }, }); $m->content_contains("Object created"); my $cfid = $m->form_name('ModifyCustomField')->value('id'); ok $cfid, "Created CF correctly"; $m->follow_link_ok( {id => "page-applies-to"} ); $m->form_with_fields( "AddCustomField-1" ); $m->tick( "AddCustomField-1", 0 ); $m->click_ok( "UpdateObjs" ); $m->content_contains("Object created"); $m->submit_form_ok({ form_name => "CreateTicketInQueue", fields => { Queue => 'General' }, }); $m->content_contains("Upload one image"); $m->submit_form_ok({ form_name => "TicketCreate", fields => { Subject => 'Test ticket', Content => 'test', }, }); $m->content_like( qr/Ticket \d+ created/, "a ticket is created succesfully" ); $m->follow_link_ok( {id => "page-basics"} ); $m->content_contains("Upload one image"); $m->submit_form_ok({ form_name => "TicketModify", fields => { "Object-RT::Ticket-1-CustomField-1-Upload" => RT::Test::get_relocatable_file('bpslogo.png', '..', 'data'), }, }); $m->content_contains("bpslogo.png added"); $m->content_contains("/Download/CustomFieldValue/1/bpslogo.png"); $m->form_name("TicketModify"); $m->tick("Object-RT::Ticket-1-CustomField-1-DeleteValueIds", 1); $m->click_ok("SubmitTicket"); $m->content_lacks("/Download/CustomFieldValue/1/bpslogo.png"); undef $m; done_testing;