def test_no_change(self):
        headers = (("translations", ("property", "en")),)
        f = self._build_translation_download_file(headers)

        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)
        self.assertEqual(dict(translations), dict())
        self.assertTrue(len(error_properties) == 0)
    def test_translation(self):
        headers = (('translations', ('property', 'en', 'fra')),)
        data = (('date.tomorrow', 'wobble', ''),
                ('entity.sort.title', 'wabble', ''),
                ('activity.locationcapture.Longitude', '', 'wibble'),
                ('entity.sort.title', '', 'wubble'))

        f = self._build_translation_download_file(headers, data)

        translations, error_properties = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations),
            {
                u'en': {
                    u'date.tomorrow': u'wobble',
                    u'entity.sort.title': u'wabble'
                },
                u'fra': {
                    u'activity.locationcapture.Longitude': u'wibble',
                    u'entity.sort.title': u'wubble'}
            }

        )
        self.assertTrue(len(error_properties) == 0)
    def test_translation(self):
        headers = (("translations", ("property", "en", "fra")),)
        # on an update to 2.31.0, the keys date.tomorrow, entity.sort.title,
        # activity.locationcapture.Longitude were no longer present in messages_en-2.txt
        # They were replaced by other randomly selected strings in that file.
        # Leaving this note here in case this issue comes up again. --B
        data = (
            ("key.manage.title", "wobble", ""),
            ("bulk.send.dialog.progress", "wabble", ""),
            ("connection.test.access.settings", "", "wibble"),
            ("bulk.send.dialog.progress", "", "wubble"),
            ("home.start.demo", "Ding", "Dong"),
            ("unknown_string", "Ding", "Dong"),
        )

        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations),
            {
                u"en": {
                    u"key.manage.title": u"wobble",
                    u"bulk.send.dialog.progress": u"wabble",
                    u"home.start.demo": u"Ding",
                    u"unknown_string": u"Ding",
                },
                u"fra": {
                    u"connection.test.access.settings": u"wibble",
                    u"bulk.send.dialog.progress": u"wubble",
                    u"home.start.demo": u"Dong",
                    u"unknown_string": u"Dong",
                },
            },
        )
        self.assertEqual(len(error_properties), 0)
        # There should be a warning that 'unknown_string' is not a CommCare string
        self.assertEqual(len(warnings), 1)

        # test existing translations get updated correctly
        data = ("home.start.demo", "change_1", "change_2")
        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)
        self.assertEqual(translations[u"fra"][u"home.start.demo"], u"change_2")
        self.assertEqual(translations[u"en"][u"home.start.demo"], u"change_1")
예제 #4
0
    def test_no_change(self):
        headers = (('translations', ('property', 'en')),)
        f = self._build_translation_download_file(headers)

        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)
        self.assertEqual(
            dict(translations), dict()
        )
        self.assertTrue(len(error_properties) == 0)
    def test_no_change(self):
        headers = (('translations', ('property', 'en')),)
        f = self._build_translation_download_file(headers)

        translations, error_properties = process_ui_translation_upload(self.app, f)
        self.assertEqual(
            dict(translations), dict()
        )
        self.assertTrue(len(error_properties) == 0)
예제 #6
0
    def test_translation(self):
        headers = (('translations', ('property', 'en', 'fra')),)
        # on an update to 2.31.0, the keys date.tomorrow, entity.sort.title,
        # activity.locationcapture.Longitude were no longer present in messages_en-2.txt
        # They were replaced by other randomly selected strings in that file.
        # Leaving this note here in case this issue comes up again. --B
        data = (('key.manage.title', 'wobble', ''),
                ('bulk.send.dialog.progress', 'wabble', ''),
                ('connection.test.access.settings', '', 'wibble'),
                ('bulk.send.dialog.progress', '', 'wubble'),
                ('home.start.demo', 'Ding', 'Dong'),
                ('unknown_string', 'Ding', 'Dong'))

        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations),
            {
                u'en': {
                    u'key.manage.title': u'wobble',
                    u'bulk.send.dialog.progress': u'wabble',
                    u'home.start.demo': u'Ding',
                    u'unknown_string': u'Ding',
                },
                u'fra': {
                    u'connection.test.access.settings': u'wibble',
                    u'bulk.send.dialog.progress': u'wubble',
                    u'home.start.demo': u'Dong',
                    u'unknown_string': u'Dong',
                }
            }

        )
        self.assertEqual(len(error_properties), 0)
        # There should be a warning that 'unknown_string' is not a CommCare string
        self.assertEqual(len(warnings), 1)

        # test existing translations get updated correctly
        data = (('home.start.demo', 'change_1', 'change_2'))
        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)
        self.assertEqual(translations[u"fra"][u"home.start.demo"], u"change_2")
        self.assertEqual(translations[u"en"][u"home.start.demo"], u"change_1")
    def test_no_change(self):

        with codecs.open(os.path.join(
                os.path.dirname(__file__), "data",
                "bulk_ui_translations_no_change.xlsx")) as f:
            translations, error_properties = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations), dict()
        )
        self.assertTrue(len(error_properties) == 0)
예제 #8
0
    def test_translation(self):
        headers = (('translations', ('property', 'en', 'fra')),)
        data = (('date.tomorrow', 'wobble', ''),
                ('entity.sort.title', 'wabble', ''),
                ('activity.locationcapture.Longitude', '', 'wibble'),
                ('entity.sort.title', '', 'wubble'),
                ('home.start.demo', 'Ding', 'Dong'),
                ('unknown_string', 'Ding', 'Dong'))

        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations),
            {
                u'en': {
                    u'date.tomorrow': u'wobble',
                    u'entity.sort.title': u'wabble',
                    u'home.start.demo': u'Ding',
                    u'unknown_string': u'Ding',
                },
                u'fra': {
                    u'activity.locationcapture.Longitude': u'wibble',
                    u'entity.sort.title': u'wubble',
                    u'home.start.demo': u'Dong',
                    u'unknown_string': u'Dong',
                }
            }

        )
        self.assertEqual(len(error_properties), 0)
        # There should be a warning that 'unknown_string' is not a CommCare string
        self.assertEqual(len(warnings), 1)

        # test existing translations get updated correctly
        data = (('home.start.demo', 'change_1', 'change_2'))
        f = self._build_translation_download_file(headers, data)
        translations, error_properties, warnings = process_ui_translation_upload(self.app, f)
        self.assertEqual(translations[u"fra"][u"home.start.demo"], u"change_2")
        self.assertEqual(translations[u"en"][u"home.start.demo"], u"change_1")
    def test_translation(self):
        with codecs.open(os.path.join(
                os.path.dirname(__file__), "data",
                "bulk_ui_translations.xlsx")) as f:
            translations, error_properties = process_ui_translation_upload(self.app, f)

        self.assertEqual(
            dict(translations),
            {
                u'en': {
                    u'date.tomorrow': u'wobble',
                    u'entity.sort.title': u'wabble'
                },
                u'fra': {
                    u'activity.locationcapture.Longitude': u'wibble',
                    u'entity.sort.title': u'wubble'}
            }

        )
        self.assertTrue(len(error_properties) == 0)