+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;