aboutsummaryrefslogtreecommitdiffstats
path: root/perl/test/s/mount.t
blob: 26f6fc2a3034802343228f35f216acf3194634de (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/perl -w
use test::helper qw($_point $_loop $_real $_pidfile);
use strict;
use Test::More tests => 3;
ok(!(scalar grep(/ on $_point /,`cat /proc/mounts`)),"already mounted");
ok(-f $_loop,"loopback exists");

if(!fork()) {
	#close(STDIN);
	close(STDOUT);
	close(STDERR);
	`echo $$ >test/s/mounted.pid`;
	exec("perl $_loop $_point");
	exit(1);
}
select(undef, undef, undef, 0.5);
my ($success) = `cat /proc/mounts` =~ / $_point /;
ok($success,"mount succeeded");
system("rm -rf $_real");
unless($success) {
	kill('INT',`cat $_pidfile`);
	unlink($_pidfile);
} else {
	mkdir($_real);
}