summaryrefslogtreecommitdiff
path: root/tests/pretend-pbuilder
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2018-07-27 14:30:13 +0800
committerSean Whitton <spwhitton@spwhitton.name>2018-07-28 18:18:52 +0800
commite1d8c5971e9506c4bf8cdba37a1b7e69a494260e (patch)
tree37655402af645aaaf6ab9e5f38ed61c33d2eb8f2 /tests/pretend-pbuilder
parente7f59af8133f6e80a4a18b171664af8517555360 (diff)
test suite: add stubbed test for pbuilder subcommand
pbuilder requires root, but we want to be able to test the subcommand outside of autopkgtest too. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'tests/pretend-pbuilder')
-rwxr-xr-xtests/pretend-pbuilder26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/pretend-pbuilder b/tests/pretend-pbuilder
new file mode 100755
index 0000000..8495a2f
--- /dev/null
+++ b/tests/pretend-pbuilder
@@ -0,0 +1,26 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use Getopt::Long;
+
+my $operation = shift;
+die "pbuilder: you should use me only to build, dgit"
+ unless ($operation eq "build" || $operation eq "b");
+
+my $debbuildopts = undef;
+my $distribution = undef;
+GetOptions('debbuildopts=s' => \$debbuildopts,
+ 'distribution=s' => \$distribution);
+
+# ignore user args; last argument has to be the .dsc filename
+my $dsc = $ARGV[-1];
+die "pbuilder: last argument has wrong file extension"
+ unless ($dsc =~ m/^(.*)_.*\.dsc$/);
+
+system "dpkg-source -x $dsc pbuilder";
+chdir 'pbuilder';
+system <<END
+dpkg-buildpackage --changes-option=-DDistribution=$distribution $debbuildopts
+END