Adds the ability to list atomic labels via 'atest label list --atomicgroup'
Adds ability to parse values from nested dicts to topic_common for the above.

Signed-off-by: Gregory Smith <gps@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@3350 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/cli/topic_common_unittest.py b/cli/topic_common_unittest.py
index 75075db..7d79e7f 100755
--- a/cli/topic_common_unittest.py
+++ b/cli/topic_common_unittest.py
@@ -11,6 +11,22 @@
 from autotest_lib.frontend.afe.json_rpc import proxy
 
 
+class topic_common_misc_tests(unittest.TestCase):
+    def test_get_item_key(self):
+        get_item_key = topic_common._get_item_key
+        self.assertRaises(ValueError, get_item_key, {}, '')
+        self.assertRaises(ValueError, get_item_key, {}, '.')
+        self.assertRaises(KeyError, get_item_key, {}, 'a')
+        self.assertRaises(KeyError, get_item_key, {}, 'a.')
+        self.assertRaises(ValueError, get_item_key, {'a': {}}, 'a.')
+        self.assertRaises(KeyError, get_item_key, {'a': {}}, 'a.b')
+        self.assertEquals(2, get_item_key({'a.b': 2, 'a': {}}, 'a.b'))
+        self.assertEquals(9, get_item_key({'a': {'b': 9}}, 'a.b'))
+        self.assertEquals(3, get_item_key({'a': {'b': {'c': 3}}}, 'a.b.c'))
+        self.assertEquals(5, get_item_key({'a': 5}, 'a'))
+        self.assertEquals({'b': 9}, get_item_key({'a': {'b': 9}}, 'a'))
+
+
 class item_parse_info_unittest(cli_mock.cli_unittest):
     def __test_parsing_flist_bad(self, options):
         parse_info = topic_common.item_parse_info