From 15625010836f7f2fd58809a01cb05e29862c522d Mon Sep 17 00:00:00 2001 From: Leon Wright Date: Sun, 6 May 2018 12:02:47 +0800 Subject: [PATCH 1/3] Avoid upstream JSON::PP bug on recent Perl versions --- dist.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/dist.ini b/dist.ini index e46c52f..bace2aa 100644 --- a/dist.ini +++ b/dist.ini @@ -59,6 +59,7 @@ IO::Socket::SSL = 0 EV = 0 Twiggy = 0 LWP::Protocol::https = 0 +JSON::XS = 0 [OurPkgVersion] [PodWeaver] From e565b9597f45da0485a39bfaf085e7c080a4f9a4 Mon Sep 17 00:00:00 2001 From: Leon Wright Date: Sun, 6 May 2018 12:13:24 +0800 Subject: [PATCH 2/3] We're testing for failure, full message not important. --- t/App/KSP_CKAN/Tools/NetKAN.t | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/t/App/KSP_CKAN/Tools/NetKAN.t b/t/App/KSP_CKAN/Tools/NetKAN.t index 05a5fca..8e06d6a 100644 --- a/t/App/KSP_CKAN/Tools/NetKAN.t +++ b/t/App/KSP_CKAN/Tools/NetKAN.t @@ -85,7 +85,7 @@ TODO: { isnt( $netkan->inflate, 0, "Return failure correctly" ); subtest 'Status Setting' => sub { - is($status->status->{'DogeCoinFlag-broken'}{last_error}, "JSON deserialization error", "'last_error' set on failure"); + like($status->status->{'DogeCoinFlag-broken'}{last_error}, qr/^JSON deserialization error.+/, "'last_error' set on failure"); is($status->status->{'DogeCoinFlag-broken'}{failed}, 1, "'failed' true on failure"); is($status->status->{'DogeCoinFlag-broken'}{last_indexed}, undef, "'last_index' undef when no successful indexing has ever occured"); is($status->status->{'DogeCoinFlag'}{last_error}, undef, "'last_error' undef on success"); From 4a2d5cfb1789619cf99ad8299e57d41b21ef7e41 Mon Sep 17 00:00:00 2001 From: Leon Wright Date: Sun, 6 May 2018 12:33:27 +0800 Subject: [PATCH 3/3] Add test for #63 --- t/App/KSP_CKAN/Tools/NetKAN.t | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/t/App/KSP_CKAN/Tools/NetKAN.t b/t/App/KSP_CKAN/Tools/NetKAN.t index 8e06d6a..89287e2 100644 --- a/t/App/KSP_CKAN/Tools/NetKAN.t +++ b/t/App/KSP_CKAN/Tools/NetKAN.t @@ -187,6 +187,12 @@ EOF "Error wasn't parsable", "Receive 'Error wasn't parsable' when none parsed" ); + + is ( + $netkan->_parse_error("2656 [1] FATAL CKAN.NetKAN.Program (null) - 303747d7-0830-4d.tmp is not a valid ZIP file: Error in step EntryHeader for Budget part cost set to 0.cfg: Exception during test - 'Compression method not supported'"), + "303747d7-0830-4d.tmp is not a valid ZIP file: Error in step EntryHeader for Budget part cost set to 0.cfg: Exception during test - 'Compression method not supported'", + ".+ greediness fixed in regex - #63" + ); }; # Cleanup after ourselves