def test_increment_company_query_counter(self, get_by_code_mock): c = CompanyFactory() p = ProductFactory(code=self.code, company=c) get_by_code_mock.return_value = p self.assertEqual(c.query_count, 0) self.client.get(self.url, {'device_id': 123}) c.refresh_from_db() self.assertEqual(c.query_count, 1) self.client.get(self.url, {'device_id': 123}) c.refresh_from_db() self.assertEqual(c.query_count, 2)
class TestCompanyUpdateWeb(WebTestMixin, TestCase): def setUp(self): super().setUp() self.instance = CompanyFactory(name="company_name") self.url = reverse('company:edit', kwargs={'pk': self.instance.pk}) self.user = StaffFactory() def test_form_success(self): page = self.app.get(self.url, user=self.user) page.form['official_name'] = "New name" page.form['commit_desc'] = "Commit description" page = page.form.submit() self.assertRedirects(page, self.instance.get_absolute_url()) self.instance.refresh_from_db() versions = Version.objects.get_for_object(self.instance) self.assertEqual(versions[0].revision.comment, "Commit description") self.assertEqual(versions[0].revision.user, self.user) self.assertEqual(self.instance.official_name, "New name") @override_settings(LANGUAGE_CODE='en-EN') def test_form_commit_desc_required(self): page = self.app.get(self.url, user=self.user) page.form['official_name'] = "New name" page = page.form.submit() self.assertContains(page, "This field is required.") page.form['commit_desc'] = "AAA" page = page.form.submit() self.assertRedirects(page, self.instance.get_absolute_url()) @override_settings(LANGUAGE_CODE='en-EN') def test_form_readonly_fields(self): page = self.app.get(self.url, user=self.user) self.assertEqual(page.form['name'].attrs['disabled'], 'true') page.form['name'] = "789789789" page.form['commit_desc'] = "Commit desc" page = page.form.submit() self.assertRedirects(page, self.instance.get_absolute_url()) self.instance.refresh_from_db() self.assertEqual(self.instance.name, "company_name")