summaryrefslogtreecommitdiffstats
path: root/t/03-dist.t
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2010-11-21 17:43:09 -0600
committerJesse Luehrs <doy@tozt.net>2010-11-21 17:43:09 -0600
commit7ff55144b9c6f9c4933f1b21cc04c1199e9f5de5 (patch)
tree1c88ae55265fd4e0064e386a3bd9ee078b3ff048 /t/03-dist.t
parent8cc54374790f8728eb1be75bbbab33b91ae69838 (diff)
downloaddist-checkconflicts-7ff55144b9c6f9c4933f1b21cc04c1199e9f5de5.tar.gz
dist-checkconflicts-7ff55144b9c6f9c4933f1b21cc04c1199e9f5de5.zip
allow using the dist name in the error message
Diffstat (limited to 't/03-dist.t')
-rw-r--r--t/03-dist.t70
1 files changed, 70 insertions, 0 deletions
diff --git a/t/03-dist.t b/t/03-dist.t
new file mode 100644
index 0000000..a9555b5
--- /dev/null
+++ b/t/03-dist.t
@@ -0,0 +1,70 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use Test::More;
+use Test::Fatal;
+use lib 't/lib/03';
+
+{
+ use_ok('Foo::Conflicts::Good');
+ is_deeply(
+ [ Foo::Conflicts::Good->calculate_conflicts ],
+ [],
+ "correct versions for all conflicts",
+ );
+ is(
+ exception { Foo::Conflicts::Good->check_conflicts },
+ undef,
+ "no conflict error"
+ );
+}
+
+{
+ use_ok('Foo::Conflicts::Bad');
+ is_deeply(
+ [ Foo::Conflicts::Bad->calculate_conflicts ],
+ [
+ { package => 'Foo', installed => '0.02', required => '0.03' },
+ { package => 'Foo::Two', installed => '0.02', required => '0.02' },
+ ],
+ "correct versions for all conflicts",
+ );
+ is(
+ exception { Foo::Conflicts::Bad->check_conflicts },
+ "Conflicts detected for Foo:\n Foo is version 0.02, but must be greater than version 0.03\n Foo::Two is version 0.02, but must be greater than version 0.02\n",
+ "correct conflict error"
+ );
+}
+
+{
+ use_ok('Bar::Conflicts::Good');
+ is_deeply(
+ [ Bar::Conflicts::Good->calculate_conflicts ],
+ [],
+ "correct versions for all conflicts",
+ );
+ is(
+ exception { Bar::Conflicts::Good->check_conflicts },
+ undef,
+ "no conflict error"
+ );
+}
+
+{
+ use_ok('Bar::Conflicts::Bad');
+ is_deeply(
+ [ Bar::Conflicts::Bad->calculate_conflicts ],
+ [
+ { package => 'Bar', installed => '0.02', required => '0.03' },
+ { package => 'Bar::Two', installed => '0.02', required => '0.02' },
+ ],
+ "correct versions for all conflicts",
+ );
+ is(
+ exception { Bar::Conflicts::Bad->check_conflicts },
+ "Conflicts detected for Bar:\n Bar is version 0.02, but must be greater than version 0.03\n Bar::Two is version 0.02, but must be greater than version 0.02\n",
+ "correct conflict error"
+ );
+}
+
+done_testing;