class ConversionTestCase(unittest.TestCase): """ Ensure we can reliably convert native python data types to strings. """ def setUp(self): self.task = MysqlSelectTask( credentials=sentinel.ignored, destination=sentinel.ignored ) def test_convert_datetime(self): self.assert_converted_string_equals( datetime.datetime.strptime('2014-01-02', '%Y-%m-%d').date(), '2014-01-02' ) def assert_converted_string_equals(self, obj, expected_string): """ Args: obj (mixed): Any object. expected_string (str): The expected string representation of `obj`. Raises: AssertionError: iff the string resulting from converting `obj` to a string does not match the expected string. """ self.assertEquals(self.task.convert(obj), expected_string) def test_convert_integer(self): self.assert_converted_string_equals( 10, '10' ) def test_convert_none(self): self.assert_converted_string_equals( None, '-' ) def test_convert_unicode(self): self.assert_converted_string_equals( u'\u0669(\u0361\u0e4f\u032f\u0361\u0e4f)\u06f6', u'\u0669(\u0361\u0e4f\u032f\u0361\u0e4f)\u06f6'.encode('utf-8') )
def setUp(self): self.task = MysqlSelectTask( credentials=sentinel.ignored, destination=sentinel.ignored )
def test_parameters_from_config(self): t = MysqlSelectTask(credentials=sentinel.credentials, destination=sentinel.destination) self.assertEquals(t.database, 'foobar')