Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
emulab
emulab-devel
Commits
37a8e824
Commit
37a8e824
authored
Dec 06, 2005
by
Kevin Atkinson
Browse files
Added test for emulab synchronization mechanism.
parent
6f8d31fb
Changes
10
Hide whitespace changes
Inline
Side-by-side
image-test/image-test
View file @
37a8e824
...
...
@@ -148,7 +148,7 @@ sub get_parms ($) {
sub
get_numnodes
($)
{
# FIXME: needs better error detection
my
(
$test
)
=
@_
;
open
F
,
"
$testsdir
/
$test
/num-nodes
";
open
F
,
"
$testsdir
/
$test
/num-nodes
"
or
die
"
Unable to open
$test
/num-nodes
\n
"
;
local
$_
=
<
F
>
;
chop
;
return
$_
;
...
...
image-test/tests/sync/info
0 → 100644
View file @
37a8e824
Test emulab synchronization mechanism.
image-test/tests/sync/nsfile.ns
0 → 100644
View file @
37a8e824
set ns [new Simulator]
source tb_compat.tcl
set node0 [$ns node]
set node1 [$ns node]
set node2 [$ns node]
set node3 [$ns node]
set node4 [$ns node]
tb-set-sync-server $node0
tb-set-node-startcmd $node0 "@DATADIR@/startcmd0.sh /proj/@PID@/exp/@EID@/tmp/"
tb-set-node-startcmd $node1 "@DATADIR@/startcmd1.sh /proj/@PID@/exp/@EID@/tmp/"
tb-set-node-startcmd $node2 "@DATADIR@/startcmd2.sh /proj/@PID@/exp/@EID@/tmp/"
tb-set-node-startcmd $node3 "@DATADIR@/startcmd3.sh /proj/@PID@/exp/@EID@/tmp/"
tb-set-node-startcmd $node4 "@DATADIR@/startcmd4.sh /proj/@PID@/exp/@EID@/tmp/"
$ns run
image-test/tests/sync/num-nodes
0 → 100644
View file @
37a8e824
5
image-test/tests/sync/startcmd0.sh
0 → 100755
View file @
37a8e824
#!/bin/sh
cd
$1
perl
-e
'sleep(rand()*30)'
echo
0
>
node0up
/usr/testbed/bin/emulab-sync
-i
2
cat
node0up node1up node2up
>
node0res
image-test/tests/sync/startcmd1.sh
0 → 100755
View file @
37a8e824
#!/bin/sh
cd
$1
perl
-e
'sleep(rand()*30)'
echo
1
>
node1up
/usr/testbed/bin/emulab-sync
cat
node0up node1up node2up
>
node1res
image-test/tests/sync/startcmd2.sh
0 → 100755
View file @
37a8e824
#!/bin/sh
cd
$1
;
/usr/testbed/bin/emulab-sync
-a
-i
2
-n
barrier2
perl
-e
'sleep(rand()*30)'
echo
2
>
node2up
/usr/testbed/bin/emulab-sync
cat
node0up node1up node2up
>
node2res
image-test/tests/sync/startcmd3.sh
0 → 100755
View file @
37a8e824
#!/bin/sh
cd
$1
sleep
55
echo
3
>
node3up
/usr/testbed/bin/emulab-sync
-n
barrier2
cat
node3up node4up
>
node3res
image-test/tests/sync/startcmd4.sh
0 → 100755
View file @
37a8e824
#!/bin/sh
cd
$1
sleep
60
echo
4
>
node4up
/usr/testbed/bin/emulab-sync
-n
barrier2
cat
node3up node4up
>
node4res
image-test/tests/sync/tests.pl
0 → 100644
View file @
37a8e824
sub
compare_file
($@)
{
my
$n
=
shift
;
my
$f
=
new
IO::
File
"
/proj/
$pid
/exp/
$eid
/tmp/node
${n}
res
"
or
die
"
*** Unable to open result file for node
$n
.
\n
";
while
(
<
$f
>
)
{
chop
;
my
$expected
=
shift
;
die
"
*** Results file for node
$n
did not match expected output
\n
"
unless
$_
eq
$expected
;
}
die
"
*** Results file for node
$n
did not match expected output
\n
"
if
<
$f
>
;
return
1
;
}
print
"
Sleeping 45 seconds...
\n
";
sleep
45
;
test
'
sync1
',
[]
,
sub
{
compare_file
0
,
0
,
1
,
2
;
compare_file
1
,
0
,
1
,
2
;
compare_file
2
,
0
,
1
,
2
;
};
print
"
Sleeping 30 seconds...
\n
";
sleep
30
;
test
'
sync2
',
[]
,
sub
{
compare_file
3
,
3
,
4
;
compare_file
4
,
3
,
4
;
};
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment