From 738a2cabd20e843773ba810a382d0b2b0dcf9123 Mon Sep 17 00:00:00 2001 From: Tapasya Patki Date: Fri, 12 Jul 2019 14:53:56 -0700 Subject: [PATCH] resource-query: test cases for set-property support --- .../commands/resource_property/cmds01.in | 3 + .../commands/resource_property/cmds02.in | 7 ++ .../commands/resource_property/cmds03.in | 2 + .../commands/resource_property/cmds04.in | 7 ++ .../commands/resource_property/cmds05.in | 9 +++ .../commands/resource_property/cmds06.in | 21 ++++++ .../expected/resource_property/001.R.out | 1 + .../expected/resource_property/002.R.out | 3 + .../expected/resource_property/003.R.out | 1 + .../expected/resource_property/004.R.out | 5 ++ .../expected/resource_property/005.R.out | 4 ++ .../expected/resource_property/006.R.out | 13 ++++ t/t3012-resource-properties.t | 67 +++++++++++++++++++ 13 files changed, 143 insertions(+) create mode 100644 t/data/resource/commands/resource_property/cmds01.in create mode 100644 t/data/resource/commands/resource_property/cmds02.in create mode 100644 t/data/resource/commands/resource_property/cmds03.in create mode 100644 t/data/resource/commands/resource_property/cmds04.in create mode 100644 t/data/resource/commands/resource_property/cmds05.in create mode 100644 t/data/resource/commands/resource_property/cmds06.in create mode 100644 t/data/resource/expected/resource_property/001.R.out create mode 100644 t/data/resource/expected/resource_property/002.R.out create mode 100644 t/data/resource/expected/resource_property/003.R.out create mode 100644 t/data/resource/expected/resource_property/004.R.out create mode 100644 t/data/resource/expected/resource_property/005.R.out create mode 100644 t/data/resource/expected/resource_property/006.R.out create mode 100755 t/t3012-resource-properties.t diff --git a/t/data/resource/commands/resource_property/cmds01.in b/t/data/resource/commands/resource_property/cmds01.in new file mode 100644 index 000000000..cc5b48844 --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds01.in @@ -0,0 +1,3 @@ +set-property /tiny0/rack0/node0 class=1 +get-property /tiny0/rack0/node0 +quit diff --git a/t/data/resource/commands/resource_property/cmds02.in b/t/data/resource/commands/resource_property/cmds02.in new file mode 100644 index 000000000..8c659e4c0 --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds02.in @@ -0,0 +1,7 @@ +set-property /tiny0/rack0/node0 class=1 +get-property /tiny0/rack0/node0 +set-property /tiny0/rack0/node0/socket1 sockprop=abc +get-property /tiny0/rack0/node0/socket1 +set-property /tiny0/rack0/node1/socket0/core17 coreprop=z +get-property /tiny0/rack0/node1/socket0/core17 +quit diff --git a/t/data/resource/commands/resource_property/cmds03.in b/t/data/resource/commands/resource_property/cmds03.in new file mode 100644 index 000000000..1892bf955 --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds03.in @@ -0,0 +1,2 @@ +get-property /tiny0/rack0/node0 +quit diff --git a/t/data/resource/commands/resource_property/cmds04.in b/t/data/resource/commands/resource_property/cmds04.in new file mode 100644 index 000000000..1bd3d3202 --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds04.in @@ -0,0 +1,7 @@ +set-property /tiny0/rack0/node0 prop1=a +set-property /tiny0/rack0/node0 prop2=foo +set-property /tiny0/rack0/node0 prop3=123 +set-property /tiny0/rack0/node0 prop4=bar +set-property /tiny0/rack0/node0 prop5=baz +get-property /tiny0/rack0/node0 +quit diff --git a/t/data/resource/commands/resource_property/cmds05.in b/t/data/resource/commands/resource_property/cmds05.in new file mode 100644 index 000000000..8a6e1decc --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds05.in @@ -0,0 +1,9 @@ +set-property /tiny0/rack0/node0 prop1=a +get-property /tiny0/rack0/node0 +set-property /tiny0/rack0/node0 prop1=foo +get-property /tiny0/rack0/node0 +set-property /tiny0/rack0/node0 prop1=123 +get-property /tiny0/rack0/node0 +set-property /tiny0/rack0/node0 prop1=a +get-property /tiny0/rack0/node0 +quit diff --git a/t/data/resource/commands/resource_property/cmds06.in b/t/data/resource/commands/resource_property/cmds06.in new file mode 100644 index 000000000..d99e10a56 --- /dev/null +++ b/t/data/resource/commands/resource_property/cmds06.in @@ -0,0 +1,21 @@ +set-property /tiny0/rack0/node0 class +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 class= +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 =class +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 = +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 class==1 +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 class=1=class=random +get-property /tiny0/rack0/node0 + +set-property /tiny0/rack0/node0 class=1 +get-property /tiny0/rack0/node0 +quit diff --git a/t/data/resource/expected/resource_property/001.R.out b/t/data/resource/expected/resource_property/001.R.out new file mode 100644 index 000000000..18f30f4a1 --- /dev/null +++ b/t/data/resource/expected/resource_property/001.R.out @@ -0,0 +1 @@ +class=1 diff --git a/t/data/resource/expected/resource_property/002.R.out b/t/data/resource/expected/resource_property/002.R.out new file mode 100644 index 000000000..e78573a18 --- /dev/null +++ b/t/data/resource/expected/resource_property/002.R.out @@ -0,0 +1,3 @@ +class=1 +sockprop=abc +coreprop=z diff --git a/t/data/resource/expected/resource_property/003.R.out b/t/data/resource/expected/resource_property/003.R.out new file mode 100644 index 000000000..a5df3310a --- /dev/null +++ b/t/data/resource/expected/resource_property/003.R.out @@ -0,0 +1 @@ +No properties were found for /tiny0/rack0/node0. diff --git a/t/data/resource/expected/resource_property/004.R.out b/t/data/resource/expected/resource_property/004.R.out new file mode 100644 index 000000000..dbe302b8b --- /dev/null +++ b/t/data/resource/expected/resource_property/004.R.out @@ -0,0 +1,5 @@ +prop1=a +prop2=foo +prop3=123 +prop4=bar +prop5=baz diff --git a/t/data/resource/expected/resource_property/005.R.out b/t/data/resource/expected/resource_property/005.R.out new file mode 100644 index 000000000..ea5564717 --- /dev/null +++ b/t/data/resource/expected/resource_property/005.R.out @@ -0,0 +1,4 @@ +prop1=a +prop1=foo +prop1=123 +prop1=a diff --git a/t/data/resource/expected/resource_property/006.R.out b/t/data/resource/expected/resource_property/006.R.out new file mode 100644 index 000000000..b9fa7b725 --- /dev/null +++ b/t/data/resource/expected/resource_property/006.R.out @@ -0,0 +1,13 @@ +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +Incorrect input format. Please use `set-property PROPERTY=VALUE`. +No properties were found for /tiny0/rack0/node0. +class=1 diff --git a/t/t3012-resource-properties.t b/t/t3012-resource-properties.t new file mode 100755 index 000000000..7372beba4 --- /dev/null +++ b/t/t3012-resource-properties.t @@ -0,0 +1,67 @@ +#!/bin/sh +# set -x + +test_description='Test Set Property On Tiny Machine Configuration' + +. $(dirname $0)/sharness.sh + +cmd_dir="${SHARNESS_TEST_SRCDIR}/data/resource/commands/resource_property" +exp_dir="${SHARNESS_TEST_SRCDIR}/data/resource/expected/resource_property" +grugs="${SHARNESS_TEST_SRCDIR}/data/resource/grugs/tiny.graphml" +query="../../resource/utilities/resource-query" + +# +# Selection Policy -- High ID first (-P high) +# The resource vertex with higher ID is preferred among its kind +# (e.g., node1 is preferred over node0 if available) +# + +cmds001="${cmd_dir}/cmds01.in" +test001_desc="set-property and get-property on the node type resource" +test_expect_success "${test001_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds001} > cmds001 && + ${query} -G ${grugs} -S CA -P high -t 001.R.out < cmds001 && + test_cmp 001.R.out ${exp_dir}/001.R.out +' + +cmds002="${cmd_dir}/cmds02.in" +test002_desc="set-property and get-property on the other resources" +test_expect_success "${test002_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds002} > cmds002 && + ${query} -G ${grugs} -S CA -P high -t 002.R.out < cmds002 && + test_cmp 002.R.out ${exp_dir}/002.R.out +' + +cmds003="${cmd_dir}/cmds03.in" +test003_desc="test get-property without setting any properties" +test_expect_success "${test003_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds003} > cmds003 && + ${query} -G ${grugs} -S CA -P high -t 003.R.out < cmds003 && + test_cmp 003.R.out ${exp_dir}/003.R.out +' + +cmds004="${cmd_dir}/cmds04.in" +test004_desc="test multiple properties for same resource" +test_expect_success "${test004_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds004} > cmds004 && + ${query} -G ${grugs} -S CA -P high -t 004.R.out < cmds004 && + test_cmp 004.R.out ${exp_dir}/004.R.out +' + +cmds005="${cmd_dir}/cmds05.in" +test005_desc="test inserting same property key multiple times" +test_expect_success "${test005_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds005} > cmds005 && + ${query} -G ${grugs} -S CA -P high -t 005.R.out < cmds005 && + test_cmp 005.R.out ${exp_dir}/005.R.out +' + +cmds006="${cmd_dir}/cmds06.in" +test006_desc="test incorrect inputs to set-property" +test_expect_success "${test006_desc}" ' + sed "s~@TEST_SRCDIR@~${SHARNESS_TEST_SRCDIR}~g" ${cmds006} > cmds006 && + ${query} -G ${grugs} -S CA -P high -t 006.R.out < cmds006 && + test_cmp 006.R.out ${exp_dir}/006.R.out +' + +test_done