def _testMakeJSONStr(self, column_names, column_data, data_type): json_str = dt.makeJSON(column_names, column_data) converted = json.loads(json_str.replace("`", '"')) self.assertTrue(isinstance(converted, list)) self.assertEqual(len(converted[0]), len(column_names)) for n in range(len(converted)): self.assertTrue(isinstance(converted[n], dict))
def testSpecificCases(self): """ Inputs to test cases are stored in pcl files. """ files = ["test_dt_table_1.scish"] # Tests are functions that take result as an argument and return a bool tests = [ (lambda r: r[1]['Col_1'] == `0.5`)] iterations = range(len(files)) for idx in iterations: path = os.path.join(CUR_DIR, files[idx]) inputs = api_util.readObjectFromFile(path) column_names = inputs[0] data = inputs[1] result = dt.makeJSON(column_names, data) cleaned_result = result.replace("`", "'") result_list = ast.literal_eval(cleaned_result) test = tests[idx] self.assertTrue(test(result_list))
def testMakeJSONComplex(self): json_str = dt.makeJSON(COLUMN_NAMES, COMPLEX_DATA) out_list = eval(json_str) self.assertTrue(out_list[0]['A'], '[]') self.assertTrue(out_list[1]['A'], '[1]') self.assertTrue(out_list[2]['A'], '[1, 2]')