tests: cleanup snapshot.c

Signed-off-by: 2xsec <dh48.jeong@samsung.com>
This commit is contained in:
2xsec 2018-07-03 18:25:54 +09:00
parent 70b12b4a83
commit 63f769f9c5
No known key found for this signature in database
GPG Key ID: 0BE2750EE612F372

View File

@ -32,23 +32,28 @@
static void try_to_remove(void)
{
struct lxc_container *c;
c = lxc_container_new(RESTNAME, NULL);
if (c) {
c->snapshot_destroy_all(c);
if (c->is_defined(c))
c->destroy(c);
lxc_container_put(c);
}
c = lxc_container_new(MYNAME2, NULL);
if (c) {
c->destroy_with_snapshots(c);
lxc_container_put(c);
}
c = lxc_container_new(MYNAME, NULL);
if (c) {
c->snapshot_destroy_all(c);
if (c->is_defined(c))
c->destroy(c);
lxc_container_put(c);
}
}
@ -66,6 +71,7 @@ int main(int argc, char *argv[])
template = argv[1];
try_to_remove();
c = lxc_container_new(MYNAME, NULL);
if (!c) {
fprintf(stderr, "%s: %d: failed to load first container\n", __FILE__, __LINE__);
@ -76,15 +82,19 @@ int main(int argc, char *argv[])
fprintf(stderr, "%d: %s thought it was defined\n", __LINE__, MYNAME);
(void) c->destroy_with_snapshots(c);
}
if (!c->set_config_item(c, "lxc.net.0.type", "empty")) {
fprintf(stderr, "%s: %d: failed to set network type\n", __FILE__, __LINE__);
goto err;
}
c->save_config(c, NULL);
if (!c->createl(c, template, NULL, NULL, 0, NULL)) {
fprintf(stderr, "%s: %d: failed to create %s container\n", __FILE__, __LINE__, template);
goto err;
}
c->load_config(c, NULL);
if (c->snapshot(c, NULL) != 0) {
@ -110,13 +120,14 @@ int main(int argc, char *argv[])
fprintf(stderr, "%s: %d: failed listing containers\n", __FILE__, __LINE__);
goto err;
}
if (strcmp(s->name, "snap0") != 0) {
fprintf(stderr, "%s: %d: snapshot had bad name\n", __FILE__, __LINE__);
goto err;
}
for (i=0; i<n; i++) {
for (i=0; i<n; i++)
s[i].free(&s[i]);
}
free(s);
if (!c->snapshot_restore(c, "snap0", RESTNAME)) {
@ -152,13 +163,14 @@ int main(int argc, char *argv[])
fprintf(stderr, "%s: %d: failed listing containers\n", __FILE__, __LINE__);
goto err;
}
if (strcmp(s->name, "snap0") != 0) {
fprintf(stderr, "%s: %d: snapshot had bad name\n", __FILE__, __LINE__);
goto err;
}
for (i=0; i<n; i++) {
for (i=0; i<n; i++)
s[i].free(&s[i]);
}
free(s);
if (!c2->snapshot_restore(c2, "snap0", NULL)) {
@ -177,6 +189,7 @@ good:
printf("All tests passed\n");
exit(0);
err:
lxc_container_put(c);
try_to_remove();