summaryrefslogtreecommitdiffstats
path: root/TestUnits/xlators/cluster/afr/basic/testcases.py
diff options
context:
space:
mode:
Diffstat (limited to 'TestUnits/xlators/cluster/afr/basic/testcases.py')
-rw-r--r--TestUnits/xlators/cluster/afr/basic/testcases.py250
1 files changed, 146 insertions, 104 deletions
diff --git a/TestUnits/xlators/cluster/afr/basic/testcases.py b/TestUnits/xlators/cluster/afr/basic/testcases.py
index e2b3f95..195088b 100644
--- a/TestUnits/xlators/cluster/afr/basic/testcases.py
+++ b/TestUnits/xlators/cluster/afr/basic/testcases.py
@@ -12,32 +12,27 @@ import clientutils
import serverutils
import parser
import validate
+from atfutils import commands
write_op = ">"
append_op = ">>"
mounts = ['mount1']
-commands = {
- 'ls' : 'ls',
- 'stat' : 'stat',
- 'echo' : 'echo',
- 'cat' : 'cat',
- 'touch' : 'touch',
- 'rename': 'mv',
- 'unlink': 'rm',
- 'mkdir' : 'mkdir -p',
- 'hardlink' : 'ln',
- 'symlink' : 'ln -s',
- 'setattr' : 'setfattr',
- 'getattr' : 'getfattr',
- 'truncate' : 'truncate',
- 'unlink_force' : 'rm -f',
- 'unlink_dir_force' : 'rm -rf'
- }
+bricks = ['brick1', 'brick2']
def reset_testenv():
- return_status = clientutils.umountall()
- if return_status:
- return return_status
+ """
+ * Unmount all mounts specified in the testenv file.
+ * Stop the Volume (Active Volume)
+ * Delete the Volume
+ * Stop Glusterd on all servers
+ * Remove the glusterd dir (/etc/glusterd)
+ * Remove all glusterd logs from all servers
+ """
+ output = clientutils.umountall()
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
glusterutils.volume_stop("server1", force=True)
glusterutils.volume_delete("server1")
glusterutils.glusterd_stop_allservers()
@@ -47,32 +42,46 @@ def reset_testenv():
def setup_testenv():
"""
- """
- return_status = glusterutils.glusterd_start_allservers(force=True)
- if return_status:
- return return_status
-
- return_status = glusterutils.peer_probe("server1")
- if return_status:
- return return_status
-
- return_status = glusterutils.create_brick_allservers()
- if return_status:
- return return_status
-
- return_status = glusterutils.volume_create("server1")
- if return_status:
- return return_status
-
- glusterutils.volume_set("server1", key="diagnostics.client-log-level", value="DEBUG")
-
- return_status = glusterutils.volume_start("server1")
- if return_status:
- return return_status
-
- return_status = clientutils.mountall()
- if return_status:
- return return_status
+ * Start glusterd on all servers
+ * Peer Probe all servers in the storage pool
+ * Create Bricks on the servers
+ * Create Volume
+ * Start Volume
+ * Mount to the Volume from all mounts specified in testenv
+ """
+ output = glusterutils.glusterd_start_allservers(force=True)
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
+ output = glusterutils.peer_probe("server1")
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
+ output = glusterutils.create_brick_allservers()
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
+ output = glusterutils.volume_create("server1")
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
+ output = glusterutils.volume_set("server1",
+ key="diagnostics.client-log-level",
+ value="DEBUG")
+
+ output = glusterutils.volume_start("server1")
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
+
+ output = clientutils.mountall()
+ assert_success_status = atfutils.assert_success(output["exitstatus"])
+ if assert_success_status is not 0:
+ return assert_success_status
return 0
@@ -83,7 +92,6 @@ def file_write():
return_status = 1
data = "Hello World. This is testing write file operation"
filename = "write.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -98,7 +106,8 @@ def file_write():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -114,7 +123,6 @@ def file_lookup():
"""
return_status = 1
filename = "stat.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['touch'], filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -129,7 +137,8 @@ def file_lookup():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -146,7 +155,6 @@ def file_read():
return_status = 1
data = "Hello World. This is testing read file operation"
filename = "read.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -161,13 +169,15 @@ def file_read():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
return_status = validate.validate_md5sums(mounts, bricks)
if return_status is not 0:
return return_status
+
return 0
def file_append():
@@ -178,7 +188,6 @@ def file_append():
data1 = "Hello World. This is testing append file operation."
data2 = "Appending data to file."
filename = "append.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data1, write_op, filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -193,7 +202,8 @@ def file_append():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -210,7 +220,8 @@ def file_append():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -226,7 +237,6 @@ def file_truncate():
return_status = 1
data = "Hello World. This is testing truncate file operation"
filename = "truncate.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -241,7 +251,8 @@ def file_truncate():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -251,7 +262,8 @@ def file_truncate():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -268,7 +280,6 @@ def file_hardlink():
filename1 = "testlink.txt"
filename2 = "hardlink_to_testlink.txt"
data = "Hello World. This is testing file hard link operation"
- bricks = ['brick1', 'brick2']
# Create a file
command = ' '.join([commands['echo'], data, write_op, filename1])
@@ -285,7 +296,8 @@ def file_hardlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -307,7 +319,8 @@ def file_hardlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -317,7 +330,8 @@ def file_hardlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -334,7 +348,6 @@ def file_symlink():
filename1 = "testsymlink.txt"
filename2 = "symlink_to_testsymlink.txt"
data = "Hello World. This is testing file sym link operation"
- bricks = ['brick1', 'brick2']
# Create a file
command = ' '.join([commands['echo'], data, write_op, filename1])
@@ -351,7 +364,8 @@ def file_symlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -372,16 +386,19 @@ def file_symlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
command = ' '.join([commands['cat'], filename2])
output = clientutils.execute_on_mount("mount1", command)
expected_output = data
+ return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -399,7 +416,6 @@ def file_set_get_fattr():
value = "set_get_attr_test"
data = "Hello World. This is testing set_get_attr file operation"
filename = "set_get_fattr.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename])
output = clientutils.execute_on_mount("mount1", command)
@@ -421,7 +437,8 @@ def file_set_get_fattr():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -438,7 +455,6 @@ def file_rename():
data = "Hello World. This is testing rename file operation"
filename1 = "rename_me.txt"
filename2 = "rename_to.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename1])
output = clientutils.execute_on_mount("mount1", command)
@@ -453,7 +469,8 @@ def file_rename():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -467,10 +484,13 @@ def file_rename():
command = ' '.join([commands['ls'], filename1])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "No such file or directory"
- return_status = atfutils.validate_output(output, 1, expected_output, stream="stderr")
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 1, expected_output, stream="stderr")
+ return_status = validate.validate_on_bricks(bricks, command, 1,
+ expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
@@ -480,7 +500,8 @@ def file_rename():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -490,7 +511,8 @@ def file_rename():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -506,7 +528,6 @@ def file_unlink():
return_status = 1
data = "Hello World. This is testing unlink file operation"
filename1 = "unlink_me.txt"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['echo'], data, write_op, filename1])
output = clientutils.execute_on_mount("mount1", command)
@@ -521,7 +542,8 @@ def file_unlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -535,10 +557,13 @@ def file_unlink():
command = ' '.join([commands['ls'], filename1])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "No such file or directory"
- return_status = atfutils.validate_output(output, 1, expected_output, stream="stderr")
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 1, expected_output, stream="stderr")
+ return_status = validate.validate_on_bricks(bricks, command, 1,
+ expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
@@ -553,7 +578,6 @@ def dir_mkdir():
"""
return_status = 1
dirname = "dir_mkdir"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname])
output = clientutils.execute_on_mount("mount1", command)
@@ -568,7 +592,8 @@ def dir_mkdir():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -583,7 +608,6 @@ def dir_lookup():
"""
return_status = 1
dirname = "dir_lookup"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname])
output = clientutils.execute_on_mount("mount1", command)
@@ -598,7 +622,8 @@ def dir_lookup():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -613,7 +638,6 @@ def dir_read():
"""
return_status = 1
dirname = "dir_read"
- bricks = ['brick1', 'brick2']
subdirlist = []
command = ' '.join([commands['mkdir'], dirname])
@@ -640,7 +664,8 @@ def dir_read():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -656,7 +681,6 @@ def dir_hardlink():
return_status = 1
dirname1 = "dir_hlink"
dirname2 = "hardlink_to_dir_hlink"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
@@ -671,24 +695,29 @@ def dir_hardlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
command = ' '.join([commands['hardlink'], dirname1, dirname2])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "hard link not allowed for directory"
- return_status = atfutils.validate_output(output, 1, expected_output, stream="stderr")
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
command = ' '.join([commands['stat'], dirname2])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "No such file or directory"
- return_status = atfutils.validate_output(output, 1, expected_output, stream="stderr")
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 1, expected_output, stream="stderr")
+ return_status = validate.validate_on_bricks(bricks, command, 1,
+ expected_output,
+ stream="stderr")
if return_status is not 0:
return return_status
@@ -704,7 +733,6 @@ def dir_symlink():
return_status = 1
dirname1 = "dir_symlink"
dirname2 = "symlink_to_dir_symlink"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
@@ -719,7 +747,8 @@ def dir_symlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -736,7 +765,8 @@ def dir_symlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -753,7 +783,6 @@ def dir_set_get_fattr():
name = "trusted.name"
value = "set_get_attr_test"
dirname = "set_get_attr"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname])
output = clientutils.execute_on_mount("mount1", command)
@@ -768,7 +797,8 @@ def dir_set_get_fattr():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -785,7 +815,8 @@ def dir_set_get_fattr():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -801,7 +832,6 @@ def dir_rename():
return_status = 1
dirname1 = "dir_rename_me"
dirname2 = "dir_rename_to"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
@@ -816,7 +846,8 @@ def dir_rename():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -830,9 +861,14 @@ def dir_rename():
command = ' '.join([commands['stat'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "No such file or directory"
- if atfutils.validate_output(output, 1, expected_output, stream="stderr"):
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
+ if return_status is not 0:
return return_status
- if validate.validate_on_bricks(bricks, command, 1, expected_output, stream="stderr"):
+ return_status = validate.validate_on_bricks(bricks, command, 1,
+ expected_output,
+ stream="stderr")
+ if return_status is not 0:
return return_status
command = ' '.join([commands['stat'], dirname2])
@@ -841,7 +877,8 @@ def dir_rename():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -856,7 +893,6 @@ def dir_unlink():
"""
return_status = 1
dirname1 = "dir_unlink_me"
- bricks = ['brick1', 'brick2']
command = ' '.join([commands['mkdir'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
@@ -871,7 +907,8 @@ def dir_unlink():
return_status = atfutils.validate_output(output, 0, expected_output)
if return_status is not 0:
return return_status
- return_status = validate.validate_on_bricks(bricks, command, 0, expected_output)
+ return_status = validate.validate_on_bricks(bricks, command, 0,
+ expected_output)
if return_status is not 0:
return return_status
@@ -885,9 +922,14 @@ def dir_unlink():
command = ' '.join([commands['stat'], dirname1])
output = clientutils.execute_on_mount("mount1", command)
expected_output = "No such file or directory"
- if atfutils.validate_output(output, 1, expected_output, stream="stderr"):
+ return_status = atfutils.validate_output(output, 1, expected_output,
+ stream="stderr")
+ if return_status is not 0:
return return_status
- if validate.validate_on_bricks(bricks, command, 1, expected_output, stream="stderr"):
+ return_status = validate.validate_on_bricks(bricks, command, 1,
+ expected_output,
+ stream="stderr")
+ if return_status is not 0:
return return_status
return_status = validate.validate_md5sums(mounts, bricks)