def setUp(self):
     self.logger = logging.getLogger("NumberToStringTests")
     self.locale = locale
     self.logger.debug('locale is ' + locale)
     self.testcases = resource_string(__name__, self.locale + '.testcases') 
     self.translator = NumberToStringMachine(self.locale)
     self.logger.debug(self.testcases)
class NumberToStringTestCase(unittest.TestCase):

    def setUp(self):
        self.logger = logging.getLogger("NumberToStringTests")
        self.locale = locale
        self.logger.debug('locale is ' + locale)
        self.testcases = resource_string(__name__, self.locale + '.testcases') 
        self.translator = NumberToStringMachine(self.locale)
        self.logger.debug(self.testcases)
    # END setUp()


    def tearDown(self):
        pass


    def test_locale(self):
        for testcase in self.testcases.splitlines():
            self.logger.debug(testcase)
            testcase = testcase.strip()
            if testcase.startswith('#'):
                continue
            (test_name, number_str, answer) = shlex.split(testcase)
            self.logger.debug("test_name = %s, number_str = %s, answer= % s" % (test_name, number_str, answer))
            try:
                test_translation = self.translator.translate(int(number_str))
            except OverflowError as e:
                self.assertGreater(abs(int(number_str)), NUMBER_MAX, 
                                   msg="%s (%s)\n\tExpected: '%s'\n\tReceived: '%s'\n" % 
                                       (test_name, self.locale, answer, test_translation))
                continue
            self.logger.debug(test_translation)
            self.assertEqual(test_translation, answer, 
                             msg="%s (%s)\n\tExpected: '%s'\n\tReceived: '%s'\n" % 
                                 (test_name, self.locale, answer, test_translation))