Przeglądaj źródła

Dpkg::IPC: Add testsuite

Frank Lichtenheld 18 lat temu
rodzic
commit
6b5953225c
2 zmienionych plików z 58 dodań i 1 usunięć
  1. 2 1
      scripts/Makefile.am
  2. 56 0
      scripts/t/800_Dpkg_IPC.t

+ 2 - 1
scripts/Makefile.am

@@ -76,7 +76,8 @@ EXTRA_DIST = \
 	t/600_Dpkg_Changelog/misplaced-tz \
 	t/600_Dpkg_Changelog/shadow \
 	t/700_Dpkg_Control.t \
-	t/700_Dpkg_Control/control-1
+	t/700_Dpkg_Control/control-1 \
+	t/800_Dpkg_IPC.t
 
 CLEANFILES = \
 	$(bin_SCRIPTS) $(sbin_SCRIPTS) $(changelog_SCRIPTS) \

+ 56 - 0
scripts/t/800_Dpkg_IPC.t

@@ -0,0 +1,56 @@
+# -*- mode: cperl -*-
+
+use Test::More tests => 7;
+
+use strict;
+use warnings;
+use File::Temp qw(tempfile);
+
+use_ok('Dpkg::IPC');
+
+$/ = undef;
+
+my ($tmp_fh, $tmp_name) = tempfile;
+my ($tmp2_fh, $tmp2_name) = tempfile;
+
+my $string = "foo\nbar\n";
+my $string2;
+
+open TMP, '>', $tmp_name;
+print TMP $string;;
+close TMP;
+
+my $pid = fork_and_exec(exec => "cat",
+			from_string => \$string,
+			to_string => \$string2);
+
+ok($pid);
+
+is($string2, $string, "{from,to}_string");
+
+$pid = fork_and_exec(exec => "cat",
+		     from_handle => $tmp_fh,
+		     to_handle => $tmp2_fh);
+
+ok($pid);
+
+wait_child($pid);
+
+open TMP, '<', $tmp2_name;
+$string2 = <TMP>;
+close TMP;
+
+is($string2, $string, "{from,to}_handle");
+
+$pid = fork_and_exec(exec => "cat",
+		     from_file => $tmp_name,
+		     to_file => $tmp2_name,
+		     wait_child => 1);
+
+ok($pid);
+
+open TMP, '<', $tmp2_name;
+$string2 = <TMP>;
+close TMP;
+
+is($string2, $string, "{from,to}_file");