{ my $fail = 0; eval {new WARC::Fields (WARC_Type => 'warcinfo', BOGUS => undef); $fail = 1;}; ok($fail == 0 && $@ =~ m/key without value/, 'reject construction with missing value'); $fail = 0; eval {new WARC::Fields (WARC_Type => 'warcinfo', '::Bogus' => 1); $fail = 1;}; ok($fail == 0 && $@ =~ m/invalid field name/, 'reject construction with field name with actual leading colon'); # more tests elided... }