def test_transform_no_type(self): """Test transform with no type.""" assert isinstance(LookupHandler.transform(True, to_type=None), bool) assert isinstance(LookupHandler.transform(["something"], to_type=None), list) assert isinstance(LookupHandler.transform("something", to_type=None), str)
def test_transform_str_to_bool(self): """String should be transformed using strtobool.""" result_true = LookupHandler.transform('true', to_type='bool') result_false = LookupHandler.transform('false', to_type='bool') self.assertTrue(result_true) self.assertFalse(result_false)
def test_transform_bool_to_bool(self): """Bool should be returned as is.""" result_true = LookupHandler.transform(True, to_type='bool') result_false = LookupHandler.transform(False, to_type='bool') self.assertTrue(result_true) self.assertFalse(result_false)
def test_transform_str_list(self): """Test list type joined to create string.""" assert LookupHandler.transform(["val1", "val2"], to_type="str") == "val1,val2" assert LookupHandler.transform(set(["val", "val"]), to_type="str") == "val" assert LookupHandler.transform(("val1", "val2"), to_type="str") == "val1,val2"
def test_transform_str_to_bool(self): """String should be transformed using strtobool.""" result_true = LookupHandler.transform("true", to_type="bool") result_false = LookupHandler.transform("false", to_type="bool") assert isinstance(result_true, bool) and isinstance(result_false, bool) assert result_true assert not result_false
def test_transform_bool_to_bool(self): """Bool should be returned as is.""" result_true = LookupHandler.transform(True, to_type="bool") result_false = LookupHandler.transform(False, to_type="bool") assert isinstance(result_true, bool) and isinstance(result_false, bool) assert result_true assert not result_false
def test_transform_str_direct(self) -> None: """Test types that are directly transformed to strings.""" assert LookupHandler.transform("test", to_type="str") == "test" assert LookupHandler.transform({"key1": "val1"}, to_type="str") == json.dumps( json.dumps({"key1": "val1"}, indent=0)) assert LookupHandler.transform(True, to_type="str") == '"True"'
def test_transform_str_list(self): """Test list type joined to create string.""" assert LookupHandler.transform(['val1', 'val2'], to_type='str') == 'val1,val2' assert LookupHandler.transform(set(['val', 'val']), to_type='str') == 'val' assert LookupHandler.transform(('val1', 'val2'), to_type='str') == 'val1,val2'
def test_transform_type_check(self): """Transform to bool type check.""" with pytest.raises(TypeError): LookupHandler.transform({"key1": "val1"}, to_type="bool") with pytest.raises(TypeError): LookupHandler.transform(["li1"], to_type="bool") with pytest.raises(TypeError): LookupHandler.transform(10, to_type="bool") with pytest.raises(TypeError): LookupHandler.transform(10.0, to_type="bool") with pytest.raises(TypeError): LookupHandler.transform(None, to_type="bool")
def test_transform_type_check(self): """Transform to bool type check.""" with pytest.raises(TypeError): LookupHandler.transform({'key1': 'val1'}, to_type='bool') with pytest.raises(TypeError): LookupHandler.transform(['li1'], to_type='bool') with pytest.raises(TypeError): LookupHandler.transform(10, to_type='bool') with pytest.raises(TypeError): LookupHandler.transform(10.0, to_type='bool') with pytest.raises(TypeError): LookupHandler.transform(None, to_type='bool')
def test_transform_type_check(self): """Transform to bool type check.""" with self.assertRaises(TypeError, msg='dict should raise an error'): LookupHandler.transform({'key1': 'val1'}, to_type='bool') with self.assertRaises(TypeError, msg='list should raise an error'): LookupHandler.transform(['li1'], to_type='bool') with self.assertRaises(TypeError, msg='number should raise an error'): LookupHandler.transform(10, to_type='bool') with self.assertRaises(TypeError, msg='float should raise an error'): LookupHandler.transform(10.0, to_type='bool') with self.assertRaises(TypeError, msg='NoneType should raise an error'): LookupHandler.transform(None, to_type='bool')
def test_transform_str_list_delimiter(self): """Test list to string with a specified delimiter.""" assert (LookupHandler.transform(["val1", "val2"], to_type="str", delimiter="|") == "val1|val2")
def test_transform_str_list_delimiter(self): """Test list to string with a specified delimiter.""" self.assertEqual( LookupHandler.transform(['val1', 'val2'], to_type='str', delimiter='|'), 'val1|val2')
def test_transform_str_direct(self): """Test types that are directly transformed to strings.""" self.assertEqual(LookupHandler.transform('test', 'str'), 'test') self.assertEqual(LookupHandler.transform({'key1': 'val1'}, 'str'), json.dumps(json.dumps({'key1': 'val1'}, indent=0))) self.assertEqual(LookupHandler.transform(True, 'str'), '"True"')
def test_transform_str_direct(self): """Test types that are directly transformed to strings.""" self.assertEqual(LookupHandler.transform('test', 'str'), 'test') self.assertEqual(LookupHandler.transform({'key1': 'val1'}, 'str'), "{'key1': 'val1'}") self.assertEqual(LookupHandler.transform(True, 'str'), 'True')
def test_transform_str_direct(self): """Test types that are directly transformed to strings.""" assert LookupHandler.transform('test', 'str') == 'test' assert LookupHandler.transform({'key1': 'val1'}, 'str') == \ json.dumps(json.dumps({'key1': 'val1'}, indent=0)) assert LookupHandler.transform(True, 'str') == '"True"'