Exemple #1
0
    def test_update_l10n_coverage_metrics(self):
        """Test the cron job that updates l10n coverage metrics."""
        p = product(save=True)

        # Create en-US documents.
        for i in range(20):
            r = revision(is_approved=True, is_ready_for_localization=True, save=True)
            r.document.products.add(p)

        r1 = Revision.objects.all()[0]
        r2 = Revision.objects.all()[1]

        # Translate one to es.
        d = document(parent=r1.document, locale="es", save=True)
        revision(document=d, based_on=r1, is_approved=True, save=True)

        # Translate two to de.
        d = document(parent=r1.document, locale="de", save=True)
        revision(document=d, based_on=r1, is_approved=True, save=True)
        d = document(parent=r2.document, locale="de", save=True)
        revision(document=d, based_on=r2, is_approved=True, save=True)

        # Translate all to ru.
        for r in Revision.objects.filter(document__locale="en-US"):
            d = document(parent=r.document, locale="ru", save=True)
            revision(document=d, based_on=r, is_approved=True, save=True)

        # Call the cronjob
        update_l10n_coverage_metrics()

        # Verify es metrics.
        eq_(4, WikiMetric.objects.filter(locale="es").count())
        eq_(5.0, WikiMetric.objects.get(locale="es", product=p, code=L10N_TOP20_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale="es", product=p, code=L10N_ALL_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale="es", product=None, code=L10N_TOP20_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale="es", product=None, code=L10N_ALL_CODE).value)

        # Verify de metrics.
        eq_(4, WikiMetric.objects.filter(locale="de").count())
        eq_(10.0, WikiMetric.objects.get(locale="de", product=p, code=L10N_TOP20_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale="de", product=p, code=L10N_ALL_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale="de", product=None, code=L10N_TOP20_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale="de", product=None, code=L10N_ALL_CODE).value)

        # Verify ru metrics.
        eq_(4, WikiMetric.objects.filter(locale="ru").count())
        eq_(100.0, WikiMetric.objects.get(locale="ru", product=p, code=L10N_TOP20_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale="ru", product=p, code=L10N_ALL_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale="ru", product=None, code=L10N_TOP20_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale="ru", product=None, code=L10N_ALL_CODE).value)

        # Verify it metrics.
        eq_(4, WikiMetric.objects.filter(locale="it").count())
        eq_(0.0, WikiMetric.objects.get(locale="it", product=p, code=L10N_TOP20_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale="it", product=p, code=L10N_ALL_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale="it", product=None, code=L10N_TOP20_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale="it", product=None, code=L10N_ALL_CODE).value)
Exemple #2
0
    def test_update_l10n_coverage_metrics(self):
        """Test the cron job that updates l10n coverage metrics."""
        p = ProductFactory(visible=True)

        # Create en-US documents.
        revisions = RevisionFactory.create_batch(
            20,
            is_approved=True,
            is_ready_for_localization=True,
            document__products=[p],
            document__locale='en-US')

        r1 = revisions[0]
        r2 = revisions[1]

        # Translate one to es.
        d = DocumentFactory(parent=r1.document, locale='es')
        ApprovedRevisionFactory(document=d, based_on=r1)

        # Translate two to de.
        d = DocumentFactory(parent=r1.document, locale='de')
        ApprovedRevisionFactory(document=d, based_on=r1)
        d = DocumentFactory(parent=r2.document, locale='de')
        ApprovedRevisionFactory(document=d, based_on=r2)

        # Translate all to ru.
        for r in revisions:
            d = DocumentFactory(parent=r.document, locale='ru')
            RevisionFactory(document=d, based_on=r, is_approved=True)

        # Call the cronjob
        update_l10n_coverage_metrics()

        # Verify es metrics.
        eq_(6, WikiMetric.objects.filter(locale='es').count())
        eq_(5.0, WikiMetric.objects.get(locale='es', product=p, code=L10N_TOP20_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale='es', product=p, code=L10N_TOP100_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale='es', product=p, code=L10N_ALL_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale='es', product=None, code=L10N_TOP20_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale='es', product=None, code=L10N_TOP100_CODE).value)
        eq_(5.0, WikiMetric.objects.get(locale='es', product=None, code=L10N_ALL_CODE).value)

        # Verify de metrics.
        eq_(6, WikiMetric.objects.filter(locale='de').count())
        eq_(10.0, WikiMetric.objects.get(locale='de', product=p, code=L10N_TOP20_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale='de', product=None, code=L10N_TOP100_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale='de', product=p, code=L10N_ALL_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale='de', product=None, code=L10N_TOP20_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale='de', product=None, code=L10N_TOP100_CODE).value)
        eq_(10.0, WikiMetric.objects.get(locale='de', product=None, code=L10N_ALL_CODE).value)

        # Verify ru metrics.
        eq_(6, WikiMetric.objects.filter(locale='ru').count())
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=p, code=L10N_TOP20_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=None, code=L10N_TOP100_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=p, code=L10N_ALL_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=None, code=L10N_TOP20_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=None, code=L10N_TOP100_CODE).value)
        eq_(100.0, WikiMetric.objects.get(locale='ru', product=None, code=L10N_ALL_CODE).value)

        # Verify it metrics.
        eq_(6, WikiMetric.objects.filter(locale='it').count())
        eq_(0.0, WikiMetric.objects.get(locale='it', product=p, code=L10N_TOP20_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale='it', product=None, code=L10N_TOP100_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale='it', product=p, code=L10N_ALL_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale='it', product=None, code=L10N_TOP20_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale='it', product=None, code=L10N_TOP100_CODE).value)
        eq_(0.0, WikiMetric.objects.get(locale='it', product=None, code=L10N_ALL_CODE).value)
Exemple #3
0
    def test_update_l10n_coverage_metrics(self):
        """Test the cron job that updates l10n coverage metrics."""
        p = product(save=True)

        # Create en-US documents.
        for i in range(20):
            r = revision(is_approved=True,
                         is_ready_for_localization=True,
                         save=True)
            r.document.products.add(p)

        r1 = Revision.objects.all()[0]
        r2 = Revision.objects.all()[1]

        # Translate one to es.
        d = document(parent=r1.document, locale='es', save=True)
        revision(document=d, based_on=r1, is_approved=True, save=True)

        # Translate two to de.
        d = document(parent=r1.document, locale='de', save=True)
        revision(document=d, based_on=r1, is_approved=True, save=True)
        d = document(parent=r2.document, locale='de', save=True)
        revision(document=d, based_on=r2, is_approved=True, save=True)

        # Translate all to ru.
        for r in Revision.objects.filter(document__locale='en-US'):
            d = document(parent=r.document, locale='ru', save=True)
            revision(document=d, based_on=r, is_approved=True, save=True)

        # Call the cronjob
        update_l10n_coverage_metrics()

        # Verify es metrics.
        eq_(6, WikiMetric.objects.filter(locale='es').count())
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify de metrics.
        eq_(6, WikiMetric.objects.filter(locale='de').count())
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify ru metrics.
        eq_(6, WikiMetric.objects.filter(locale='ru').count())
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify it metrics.
        eq_(6, WikiMetric.objects.filter(locale='it').count())
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_ALL_CODE).value)
Exemple #4
0
    def test_update_l10n_coverage_metrics(self):
        """Test the cron job that updates l10n coverage metrics."""
        p = ProductFactory(visible=True)

        # Create en-US documents.
        revisions = RevisionFactory.create_batch(
            20,
            is_approved=True,
            is_ready_for_localization=True,
            document__products=[p],
            document__locale='en-US')

        r1 = revisions[0]
        r2 = revisions[1]

        # Translate one to es.
        d = DocumentFactory(parent=r1.document, locale='es')
        ApprovedRevisionFactory(document=d, based_on=r1)

        # Translate two to de.
        d = DocumentFactory(parent=r1.document, locale='de')
        ApprovedRevisionFactory(document=d, based_on=r1)
        d = DocumentFactory(parent=r2.document, locale='de')
        ApprovedRevisionFactory(document=d, based_on=r2)

        # Translate all to ru.
        for r in revisions:
            d = DocumentFactory(parent=r.document, locale='ru')
            RevisionFactory(document=d, based_on=r, is_approved=True)

        # Call the cronjob
        update_l10n_coverage_metrics()

        # Verify es metrics.
        eq_(6, WikiMetric.objects.filter(locale='es').count())
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=p,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            5.0,
            WikiMetric.objects.get(locale='es',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify de metrics.
        eq_(6, WikiMetric.objects.filter(locale='de').count())
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            10.0,
            WikiMetric.objects.get(locale='de',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify ru metrics.
        eq_(6, WikiMetric.objects.filter(locale='ru').count())
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            100.0,
            WikiMetric.objects.get(locale='ru',
                                   product=None,
                                   code=L10N_ALL_CODE).value)

        # Verify it metrics.
        eq_(6, WikiMetric.objects.filter(locale='it').count())
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=p,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it', product=p,
                                   code=L10N_ALL_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP20_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_TOP100_CODE).value)
        eq_(
            0.0,
            WikiMetric.objects.get(locale='it',
                                   product=None,
                                   code=L10N_ALL_CODE).value)