github.com/yasker/longhorn-engine@v0.0.0-20160621014712-6ed6cfca0729/integration/data/test_snapshot.py (about) 1 import cmd 2 import common 3 from common import dev, backing_dev # NOQA 4 from common import read_dev, read_from_backing_file 5 6 7 def test_snapshot_revert(dev): # NOQA 8 offset = 0 9 length = 128 10 11 snap1_data = common.random_string(length) 12 common.verify_data(dev, offset, snap1_data) 13 snap1 = cmd.snapshot_create() 14 15 snap2_data = common.random_string(length) 16 common.verify_data(dev, offset, snap2_data) 17 snap2 = cmd.snapshot_create() 18 19 snap3_data = common.random_string(length) 20 common.verify_data(dev, offset, snap3_data) 21 snap3 = cmd.snapshot_create() 22 23 snapList = cmd.snapshot_ls() 24 assert snap1 in snapList 25 assert snap2 in snapList 26 assert snap3 in snapList 27 28 cmd.snapshot_revert(snap2) 29 readed = read_dev(dev, offset, length) 30 assert readed == snap2_data 31 32 cmd.snapshot_revert(snap1) 33 readed = read_dev(dev, offset, length) 34 assert readed == snap1_data 35 36 37 # BUG: https://github.com/rancher/longhorn/issues/108 38 def test_snapshot_rm(dev): # NOQA 39 offset = 0 40 length = 128 41 42 snap1_data = common.random_string(length) 43 common.verify_data(dev, offset, snap1_data) 44 snap1 = cmd.snapshot_create() 45 46 snap2_data = common.random_string(length) 47 common.verify_data(dev, offset, snap2_data) 48 snap2 = cmd.snapshot_create() 49 50 snap3_data = common.random_string(length) 51 common.verify_data(dev, offset, snap3_data) 52 snap3 = cmd.snapshot_create() 53 54 snapList = cmd.snapshot_ls() 55 assert snap1 in snapList 56 assert snap2 in snapList 57 assert snap3 in snapList 58 59 cmd.snapshot_rm(snap2) 60 61 readed = read_dev(dev, offset, length) 62 assert readed == snap3_data 63 64 cmd.snapshot_revert(snap1) 65 readed = read_dev(dev, offset, length) 66 assert readed == snap1_data 67 68 69 def test_snapshot_revert_with_backing_file(backing_dev): # NOQA 70 dev = backing_dev # NOQA 71 72 offset = 0 73 length = 256 74 75 snap0 = cmd.snapshot_create() 76 before = read_dev(dev, offset, length) 77 assert before != "" 78 79 exists = read_from_backing_file(offset, length) 80 assert before == exists 81 82 test_snapshot_revert(dev) 83 84 cmd.snapshot_revert(snap0) 85 after = read_dev(dev, offset, length) 86 assert before == after