~michael.nelson/ubuntu-webcatalog/985446-remove-commercial-apps-too

« back to all changes in this revision

Viewing changes to src/webcatalog/tests/test_views.py

[r=achuni,nessita] Remove dup apps-per-series and don't let import_app_install_data overwrite sca-imported apps.

Show diffs side-by-side

added added

removed removed

Lines of Context:
91
91
    def get_app_and_response(self, code_name='natty', version='11.04',
92
92
                             arch='x86_64', name=None, comment=None,
93
93
                             description=None, detail_distro=None,
94
 
                             detail_package=None, for_purchase=False,
 
94
                             detail_package=None, imported_from_sca=False,
95
95
                             screenshot_url='', useragent=UBUNTU_USERAGENT):
96
96
        series, created = DistroSeries.objects.get_or_create(
97
97
            code_name=code_name, version=version)
100
100
                                            name=name, comment=comment,
101
101
                                            description=description,
102
102
                                            screenshot_url=screenshot_url)
103
 
        if for_purchase:
104
 
            app.for_purchase = True
 
103
        if imported_from_sca:
 
104
            app.imported_from_sca = True
105
105
            app.save()
106
106
        if not detail_distro:
107
107
            detail_distro = app.distroseries.code_name
168
168
 
169
169
    def test_button_for_non_puchase_app(self):
170
170
        self.factory.make_application(package_name='pkgfoo',
171
 
                                            price=None)
 
171
                                      price=None)
172
172
 
173
173
        response = self.get_package_details_response('pkgfoo')
174
174
 
178
178
 
179
179
    def test_button_for_for_puchase_app(self):
180
180
        self.factory.make_application(package_name='pkgfoo',
181
 
                                            price=Decimal('12.99'))
 
181
                                      price=Decimal('12.99'))
182
182
 
183
183
        response = self.get_package_details_response('pkgfoo')
184
184
 
419
419
            response,
420
420
            '<iframe src="http://example.com/video_iframe.html"')
421
421
 
422
 
    def test_double_entry_in_the_db_is_displayed_sainely(self):
423
 
        """Make sure that bug:1006442 is fixed"""
424
 
        app = self.factory.make_application()
425
 
        self.factory.make_application(
426
 
            package_name=app.package_name,
427
 
            distroseries=app.distroseries
428
 
        )
429
 
        response = self.client.get(self.get_app_details_url(app))
430
 
 
431
 
        self.assertEquals(response.status_code, 200)
432
 
 
433
 
    def test_make_sure_doubled_entry_displays_only_one_distroseries(self):
434
 
        app = self.factory.make_application()
435
 
        self.factory.make_application(
436
 
            package_name=app.package_name,
437
 
            distroseries=app.distroseries
438
 
        )
439
 
        response = self.client.get(
440
 
            reverse('wc-package-detail', args=[app.package_name]))
441
 
 
442
 
        ds = "Ubuntu {0}".format(app.distroseries.version)
443
 
        self.assertContains(response, ds, 1)
444
 
 
445
422
 
446
423
class ApplicationDetailNoSeriesTestCase(TestCaseWithFactory):
447
424
    def test_renders_latest(self):
1162
1139
 
1163
1140
        self.assertEqual(200, response.status_code)
1164
1141
 
1165
 
    def test_handles_multiple_apps_for_same_distroseries(self):
1166
 
        ds = self.factory.make_distroseries()
1167
 
        self.factory.make_application(package_name='skype', distroseries=ds)
1168
 
        self.factory.make_application(package_name='skype', distroseries=ds)
1169
 
 
1170
 
        response = self.client.get(reverse('wc-package-reviews',
1171
 
                                           args=[ds.code_name, 'skype']))
1172
 
 
1173
 
        self.assertEqual(200, response.status_code)
1174
 
 
1175
1142
    def test_handles_api_error(self):
1176
1143
        app = self.factory.make_application()
1177
1144
        self.mock_get_reviews.side_effect = APIError('500', 'error')