testrail-bulk-mark-results.t 1.3 KB

12345678910111213141516171819202122232425262728293031
  1. use strict;
  2. use warnings;
  3. use Test::More "tests" => 5;
  4. use FindBin;
  5. use Capture::Tiny qw{capture_merged};
  6. use lib $FindBin::Bin.'/../bin';
  7. require 'testrail-bulk-mark-results';
  8. use lib $FindBin::Bin.'/lib';
  9. use Test::LWP::UserAgent::TestRailMock;
  10. #check plan mode
  11. my @args = (qw{--apiurl http://testrail.local --user test@fake.fake --password fake -j },"CRUSH ALL HUMANS", '-r', "SEND T-1000 INFILTRATION UNITS BACK IN TIME", 'blocked', "Build was bad.");
  12. my ($out,$code) = TestRail::Bin::BulkMarkResults::run('browser' => $Test::LWP::UserAgent::TestRailMock::mockObject, 'args' => \@args);
  13. is($code, 0, "Exit code OK running against normal run");
  14. chomp $out;
  15. like($out,qr/set the status of 1 cases to blocked/,"Sets test correctly in single run mode");
  16. @args = qw{--help};
  17. $0 = $FindBin::Bin.'/../bin/testrail-bulk-mark-results';
  18. ($out,(undef,$code)) = capture_merged {TestRail::Bin::BulkMarkResults::run('browser' => $Test::LWP::UserAgent::TestRailMock::mockObject, 'args' => \@args)};
  19. is($code, 0, "Exit code OK asking for help");
  20. like($out,qr/encoding of arguments/i,"Help output OK");
  21. #Make sure that the binary itself processes args correctly
  22. $out = `$^X $0 --help`;
  23. like($out,qr/encoding of arguments/i,"Appears we can run binary successfully");
  24. #TODO more thorough testing