2016-03-15 03:55:05 +08:00
|
|
|
#!/usr/bin/env bats
|
|
|
|
|
|
|
|
load helpers
|
|
|
|
|
|
|
|
function setup() {
|
|
|
|
teardown_busybox
|
|
|
|
setup_busybox
|
|
|
|
}
|
|
|
|
|
|
|
|
function teardown() {
|
|
|
|
teardown_busybox
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "runc delete" {
|
2016-05-14 06:49:45 +08:00
|
|
|
# run busybox detached
|
|
|
|
runc run -d --console /dev/pts/ptmx test_busybox
|
2016-03-15 03:55:05 +08:00
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
# check state
|
|
|
|
wait_for_container 15 1 test_busybox
|
|
|
|
|
|
|
|
testcontainer test_busybox running
|
2016-05-16 16:21:52 +08:00
|
|
|
|
2016-05-09 21:06:42 +08:00
|
|
|
runc kill test_busybox KILL
|
2016-03-15 03:55:05 +08:00
|
|
|
# wait for busybox to be in the destroyed state
|
2016-05-20 08:28:58 +08:00
|
|
|
retry 10 1 eval "__runc state test_busybox | grep -q 'stopped'"
|
2016-03-15 03:55:05 +08:00
|
|
|
|
|
|
|
# delete test_busybox
|
2016-05-09 21:06:42 +08:00
|
|
|
runc delete test_busybox
|
2016-05-16 16:21:52 +08:00
|
|
|
|
2016-05-09 21:06:42 +08:00
|
|
|
runc state test_busybox
|
2016-03-15 03:55:05 +08:00
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
}
|
2016-06-29 06:21:42 +08:00
|
|
|
|
|
|
|
@test "runc delete --force" {
|
|
|
|
# run busybox detached
|
|
|
|
runc run -d --console /dev/pts/ptmx test_busybox
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
# check state
|
|
|
|
wait_for_container 15 1 test_busybox
|
|
|
|
|
|
|
|
testcontainer test_busybox running
|
|
|
|
|
|
|
|
# force delete test_busybox
|
|
|
|
runc delete --force test_busybox
|
|
|
|
|
|
|
|
runc state test_busybox
|
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
}
|
2016-09-23 14:30:59 +08:00
|
|
|
|
|
|
|
@test "run delete with multi-containers" {
|
|
|
|
# create busybox1 detached
|
|
|
|
runc create --console /dev/pts/ptmx test_busybox1
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
testcontainer test_busybox1 created
|
|
|
|
|
|
|
|
# run busybox2 detached
|
|
|
|
runc run -d --console /dev/pts/ptmx test_busybox2
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
wait_for_container 15 1 test_busybox2
|
|
|
|
testcontainer test_busybox2 running
|
|
|
|
|
|
|
|
# delete both test_busybox1 and test_busybox2 container
|
|
|
|
runc delete test_busybox1 test_busybox2
|
|
|
|
|
|
|
|
runc state test_busybox1
|
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
|
|
|
|
runc state test_busybox2
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
runc kill test_busybox2 KILL
|
|
|
|
# wait for busybox2 to be in the destroyed state
|
|
|
|
retry 10 1 eval "__runc state test_busybox2 | grep -q 'stopped'"
|
|
|
|
|
|
|
|
# delete test_busybox2
|
|
|
|
runc delete test_busybox2
|
|
|
|
|
|
|
|
runc state test_busybox2
|
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@test "run delete --force with multi-containers" {
|
|
|
|
# create busybox1 detached
|
|
|
|
runc create --console /dev/pts/ptmx test_busybox1
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
testcontainer test_busybox1 created
|
|
|
|
|
|
|
|
# run busybox2 detached
|
|
|
|
runc run -d --console /dev/pts/ptmx test_busybox2
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
|
|
|
|
wait_for_container 15 1 test_busybox2
|
|
|
|
testcontainer test_busybox2 running
|
|
|
|
|
|
|
|
# delete both test_busybox1 and test_busybox2 container
|
|
|
|
runc delete --force test_busybox1 test_busybox2
|
|
|
|
|
|
|
|
runc state test_busybox1
|
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
|
|
|
|
runc state test_busybox2
|
|
|
|
[ "$status" -ne 0 ]
|
|
|
|
}
|