From c1a59a2046a41b06317315aa319230b630cdd9e2 Mon Sep 17 00:00:00 2001
From: Guillaume Rousse <guillaume.rousse@renater.fr>
Date: Tue, 14 Nov 2017 12:15:58 +0100
Subject: [PATCH] initial import

---
 t/account-manager.t | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100755 t/account-manager.t

diff --git a/t/account-manager.t b/t/account-manager.t
new file mode 100755
index 0000000..16b7619
--- /dev/null
+++ b/t/account-manager.t
@@ -0,0 +1,41 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use English qw(-no_match_vars);
+use IPC::Run qw(run);
+use Test::More;
+
+plan tests => 6;
+
+my ($out, $err, $rc);
+
+($out, $err, $rc) = run_executable('account-manager.pl', '--help');
+ok($rc == 0, '--help exit status');
+is($err, '', '--help stderr');
+like(
+    $out,
+    qr/^Usage:/,
+    '--help stdout'
+);
+
+($out, $err, $rc) = run_executable('account-manager.pl');
+ok($rc == 2, 'no action exit status');
+like(
+    $err,
+    qr/no action given, aborting/,
+    'no action stderr'
+);
+is($out, '', 'no action stdout');
+
+sub run_executable {
+    my ($executable, $args) = @_;
+
+    my @args = $args ? split(/\s+/, $args) : ();
+    run(
+        [ $EXECUTABLE_NAME, 'bin/' . $executable, @args ],
+        \my ($in, $out, $err)
+    );
+    return ($out, $err, $CHILD_ERROR >> 8);
+}
-- 
GitLab