'Test image_name'

def test_image_name(self):

    test_cases = {None: u'.png', 123: u'123.png', 12.3: u'12_3.png', 0: u'.png', (-123): u'_123.png', (-12.3): u'_12_3.png', u'': u'.png', u'    ': u'.png', u'123': u'123.png', u'    123    ': u'123.png', u'12.3': u'12_3.png', u'    12.3    ': u'12_3.png', u'0': u'0.png', u'    0    ': u'0.png', u'-123': u'_123.png', u'    -123    ': u'_123.png', u'-12.3': u'_12_3.png', u'    -12.3    ': u'_12_3.png', u'abc': u'abc.png', u'    abc    ': u'abc.png', u'ABC': u'abc.png', u'    ABC    ': u'abc.png', u'.def': u'_def.png', u'g,hi': u'g_hi.png', u'jk!l': u'jk_l.png', u'mno?': u'mno_.png', u'_pqr$': u'_pqr_.png'}
    unicode_test_cases = {u'': u'.png', u'    ': u'.png', u'123': u'123.png', u'    123    ': u'123.png', u'12.3': u'12_3.png', u'    12.3    ': u'12_3.png', u'0': u'0.png', u'    0    ': u'0.png', u'-123': u'_123.png', u'    -123    ': u'_123.png', u'-12.3': u'_12_3.png', u'    -12.3    ': u'_12_3.png', u'abc': u'abc.png', u'    abc    ': u'abc.png', u'ABC': u'abc.png', u'    ABC    ': u'abc.png', u'.def': u'_def.png', u'g,hi': u'g_hi.png', u'jk!l': u'jk_l.png', u'mno?': u'mno_.png', u'_pqr$': u'_pqr_.png'}
    for test in (test_cases, unicode_test_cases):
        for (name, result) in six.iteritems(test):
            self.assertEqual(GenericProvider(name).image_name(), result)
