def _fixture_setup(self): # restore the serialized data from initial migrations # this includes default groups and permissions super(XmlrpcAPIBaseTest, self)._fixture_setup() self.api_user = UserFactory() self.api_user.set_password('api-testing') initiate_user_with_default_setups(self.api_user) # reset connection to server b/c the address changes for # every test and the client caches this as a class attribute tcms_api.TCMS._connection = None # pylint: disable=protected-access # WARNING: for now we override the config file # until we can pass the testing configuration # TODO: change config values instead of overwriting files on disk conf_path = os.path.expanduser('~/.tcms.conf') conf_fh = open(conf_path, 'w') conf_fh.write("""[tcms] url = %s/xml-rpc/ username = %s password = %s """ % (self.live_server_url, self.api_user.username, 'api-testing')) conf_fh.close() # this is the XML-RPC ServerProxy with cookies support self.rpc_client = tcms_api.TCMS()
def test_user_in_default_group_sees_comments(self): # test for https://github.com/kiwitcms/Kiwi/issues/74 initiate_user_with_default_setups(self.tester) url = reverse('execution-detail-pane', args=[self.execution_1.case_id]) response = self.client.get( url, { 'case_run_id': self.execution_1.pk, 'case_text_version': self.execution_1.case.history.latest().history_id, }) self.assertEqual(HTTPStatus.OK, response.status_code) self.assertContains( response, '<textarea name="comment" cols="40" id="id_comment" maxlength="10000" ' 'rows="10">\n</textarea>', html=True) with override('en'): for status in TestExecutionStatus.objects.all(): self.assertContains( response, "<input type=\"submit\" class=\"btn btn_%s btn_status js-status-button\" " "title=\"%s\"" % (status.name.lower(), status.name), html=False)
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.url = reverse('ajax.update.cases-actor') cls.case_pks = [] for case in TestCase.objects.filter(plan=cls.plan): cls.case_pks.append(case.pk)
def test_user_in_default_group_sees_comments(self): # test for https://github.com/kiwitcms/Kiwi/issues/74 initiate_user_with_default_setups(self.tester) url = reverse('execution-detail-pane', args=[self.execution_1.case_id]) response = self.client.get( url, { 'execution_id': self.execution_1.pk, 'case_text_version': self.execution_1.case.history.latest().history_id, }) self.assertEqual(HTTPStatus.OK, response.status_code) self.assertContains( response, '<textarea name="comment" cols="40" id="id_comment" maxlength="3000" ' 'rows="10">\n</textarea>', html=True) for status in TestExecutionStatus.objects.all(): self.assertContains( response, '<i class="submit_button %s fa-2x" style="color: %s" \ statusId="%s" title="%s"></i>' % (status.icon, status.color, status.pk, status.name), html=True)
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.test_run = TestRunFactory() cls.superuser = UserFactory() cls.superuser.is_superuser = True cls.superuser.set_password("password") cls.superuser.save()
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.comment_bug_url = reverse("bugs-comment") user_should_have_perm(cls.tester, "bugs.change_bug") cls.assignee = UserFactory() cls.url = reverse("bugs-comment")
def test_view_loads_fine(self): initiate_user_with_default_setups(self.tester) url = reverse('plan-choose_run', args=[self.plan.pk]) response = self.client.get(url, follow=True) self.assertEqual(HTTPStatus.OK, response.status_code) # assert basic data is shown self.assertContains(response, self.plan.name) for test_run in self.plan.run.all(): self.assertContains(response, test_run.summary)
def setUpTestData(cls): super(TestPlanEnvironmentGroupTests, cls).setUpTestData() cls.product = ProductFactory() cls.product_version = VersionFactory(product=cls.product) cls.env_group = EnvGroupFactory() cls.new_env_group = EnvGroupFactory(name='Laptop hardware') cls.tester = UserFactory() cls.tester.set_password('password') initiate_user_with_default_setups(cls.tester)
def save(self, commit=True): user = super().save(commit=False) user.email = self.cleaned_data["email"] user.is_active = False user.set_password(self.cleaned_data["password1"]) if User.objects.filter(is_superuser=True).count() == 0: user.is_superuser = True if commit: user.save() initiate_user_with_default_setups(user) return user
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) for _i in range(3): cls.test_run.add_tag(TagFactory()) cls.unauthorized = UserFactory() cls.unauthorized.set_password('password') cls.unauthorized.save() cls.unauthorized.user_permissions.add(*Permission.objects.all()) remove_perm_from_user(cls.unauthorized, 'testruns.add_testruntag') remove_perm_from_user(cls.unauthorized, 'testruns.delete_testruntag')
def _fixture_setup(self): # restore the serialized data from initial migrations # this includes default groups and permissions super()._fixture_setup() self.api_user = UserFactory() self.api_user.set_password('api-testing') initiate_user_with_default_setups(self.api_user) # this is the XML-RPC ServerProxy with cookies support self.rpc_client = tcms_api.xmlrpc.TCMSXmlrpc( self.api_user.username, 'api-testing', '%s/xml-rpc/' % self.live_server_url, ).server
def initiate_defaults(strategy, details, backend, user=None, *args, **kwargs): if user: initiate_user_with_default_setups(user)
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.test_plan = TestPlanFactory()
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester)
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.test_case = TestCaseFactory()
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.test_run = TestRunFactory() cls.execution = TestExecutionFactory(run=cls.test_run)
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.comment_bug_url = reverse('bugs-comment') user_should_have_perm(cls.tester, 'bugs.change_bug')
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.url = reverse('ajax.update.cases-actor')
def setUpTestData(cls): super().setUpTestData() initiate_user_with_default_setups(cls.tester) cls.test_bug = BugFactory()
from django.contrib.auth.models import User from tcms.management.models import Classification from tcms.utils.permissions import initiate_user_with_default_setups # this will be used for API calls bot = User.objects.create( username='******', email='*****@*****.**', is_active=True, ) bot.set_password('changeme') bot.save() initiate_user_with_default_setups(bot) # this is used inside integration test Classification.objects.create(name='test-products')
def initiate_defaults(strategy, details, backend, user=None, *args, **kwargs): if user and kwargs.get('is_new', False): initiate_user_with_default_setups(user)