def convert_process_configs(self, configs): p_dict = { "CLOUDERA": ['MANAGER'], "NAMENODE": ['NAMENODE'], "DATANODE": ['DATANODE'], "SECONDARYNAMENODE": ['SECONDARYNAMENODE'], "RESOURCEMANAGER": ['RESOURCEMANAGER'], "NODEMANAGER": ['NODEMANAGER'], "JOBHISTORY": ['JOBHISTORY'], "OOZIE": ['OOZIE_SERVER'], "HIVESERVER": ['HIVESERVER2'], "HIVEMETASTORE": ['HIVEMETASTORE'], "WEBHCAT": ['WEBHCAT'], "HUE": ['HUE_SERVER'], "SPARK_ON_YARN": ['SPARK_YARN_HISTORY_SERVER'], "ZOOKEEPER": ['SERVER'], "MASTER": ['MASTER'], "REGIONSERVER": ['REGIONSERVER'], 'YARN_GATEWAY': ['YARN_GATEWAY'], 'HDFS_GATEWAY': ['HDFS_GATEWAY'] } if isinstance(configs, res.Resource): configs = configs.to_dict() for k in configs.keys(): if k in p_dict.keys(): item = configs[k] del configs[k] newkey = p_dict[k][0] configs[newkey] = item return res.Resource(configs)
def test_resource_creation(self): res = r.Resource(SAMPLE_DICT) self.assertIsInstance(res.first, list) self.assertEqual(res.first, [1, 2]) self.assertIsInstance(res.second, r.Resource) self.assertEqual(res.second.a, 1) self.assertEqual(res.second.b, 2)
def test_resource_immutability(self): res = r.Resource(SAMPLE_DICT) with self.assertRaises(types.FrozenClassError): res.first.append(123) with self.assertRaises(types.FrozenClassError): res.first = 123 with self.assertRaises(types.FrozenClassError): res.second.a = 123
def test_resource_immutability(self): res = r.Resource(SAMPLE_DICT) with testtools.ExpectedException(types.FrozenClassError): res.first.append(123) with testtools.ExpectedException(types.FrozenClassError): res.first = 123 with testtools.ExpectedException(types.FrozenClassError): res.second.a = 123
def convert_process_configs(self, configs): p_dict = { "CLOUDERA": ['MANAGER'], "NAMENODE": ['NAMENODE'], "DATANODE": ['DATANODE'], "SECONDARYNAMENODE": ['SECONDARYNAMENODE'], "RESOURCEMANAGER": ['RESOURCEMANAGER'], "NODEMANAGER": ['NODEMANAGER'], "JOBHISTORY": ['JOBHISTORY'], "OOZIE": ['OOZIE_SERVER'], "HIVESERVER": ['HIVESERVER2'], "HIVEMETASTORE": ['HIVEMETASTORE'], "WEBHCAT": ['WEBHCAT'], "HUE": ['HUE_SERVER'], "SPARK_ON_YARN": ['SPARK_YARN_HISTORY_SERVER'], "ZOOKEEPER": ['SERVER'], "MASTER": ['MASTER'], "REGIONSERVER": ['REGIONSERVER'], "FLUME": ['AGENT'], "CATALOGSERVER": ['CATALOGSERVER'], "STATESTORE": ['STATESTORE'], "IMPALAD": ['IMPALAD'], "KS_INDEXER": ['HBASE_INDEXER'], "SENTRY": ['SENTRY_SERVER'], "SOLR": ['SOLR_SERVER'], "SQOOP": ['SQOOP_SERVER'], "KMS": ['KMS'], "YARN_GATEWAY": ['YARN_GATEWAY'], "HDFS_GATEWAY": ['HDFS_GATEWAY'], "JOURNALNODE": ['JOURNALNODE'], "KAFKA": ['KAFKA_BROKER'] } if isinstance(configs, res.Resource): configs = configs.to_dict() for k in configs.keys(): if k in p_dict.keys(): item = configs[k] del configs[k] newkey = p_dict[k][0] configs[newkey] = item return res.Resource(configs)
def test_nested_lists(self): res = r.Resource(SAMPLE_NESTED_LISTS_DICT) self.assertEqual(res.a[0][0].b, 123)
def create_resource(data, **kwargs): return resource.Resource(data)