def setUp(self): super(TestResponse, self).setUp() portal = self.layer['portal'] helpers.login_as_manager(portal) self.ticketbox = helpers.create_ticketbox(portal) self.ticket1 = helpers.create_ticket(self.ticketbox) self.ticket2 = helpers.create_ticket(self.ticketbox, data_index=1) self.container1 = IResponseContainer(self.ticket1) self.container2 = IResponseContainer(self.ticket2)
class TestResponse(TestCase): layer = TICKETBOX_INTEGRATION_TESTING def setUp(self): super(TestResponse, self).setUp() portal = self.layer['portal'] helpers.login_as_manager(portal) self.ticketbox = helpers.create_ticketbox(portal) self.ticket1 = helpers.create_ticket(self.ticketbox) self.ticket2 = helpers.create_ticket(self.ticketbox, data_index=1) self.container1 = IResponseContainer(self.ticket1) self.container2 = IResponseContainer(self.ticket2) def tearDown(self): helpers.remove_obj(self.ticketbox) helpers.logout_manager(self.layer['portal']) super(TestResponse, self).tearDown() def test_add_and_remove(self): response1 = Response('response1') response2 = Response('response3') response3 = Response('response3') self.assertEquals(len(self.container1), 0) self.assertEquals(len(self.container2), 0) self.container1.add(response1) self.container1.add(response2) self.container2.add(response3) self.assertEquals(len(self.container1), 2) self.assertEquals(len(self.container2), 1) self.container1.remove(0) self.container1.remove(1) self.assertEquals(response1 in self.container1, False) self.assertEquals(response2 in self.container1, False) self.assertEquals(response3 in self.container2, True)
class TestResponse(TestCase): layer = TICKETBOX_FUNCTIONAL_TESTING def setUp(self): super(TestResponse, self).setUp() portal = self.layer['portal'] helpers.login_as_manager(portal) self.ticketbox = helpers.create_ticketbox(portal) self.ticket1 = helpers.create_ticket(self.ticketbox) self.ticket2 = helpers.create_ticket(self.ticketbox, data_index=1) self.container1 = IResponseContainer(self.ticket1) self.container2 = IResponseContainer(self.ticket2) def tearDown(self): helpers.remove_obj(self.ticketbox) helpers.logout_manager(self.layer['portal']) super(TestResponse, self).tearDown() def test_add_and_remove(self): response1 = Response('response1') response2 = Response('response3') response3 = Response('response3') self.assertEquals(len(self.container1), 0) self.assertEquals(len(self.container2), 0) self.container1.add(response1) self.container1.add(response2) self.container2.add(response3) self.assertEquals(len(self.container1), 2) self.assertEquals(len(self.container2), 1) self.container1.remove(0) self.container1.remove(1) self.assertEquals(response1 in self.container1, False) self.assertEquals(response2 in self.container1, False) self.assertEquals(response3 in self.container2, True) @browsing def test_update_anserdate_if_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31)) .having(state="offen") .within(ticketbox)) browser.login().visit(ticket) browser.fill({ 'answerdate_year': '2021', 'answerdate_month': 'April', 'answerdate_day': '12', 'answerdate_hour': '10', 'answerdate_minute': '05'}).submit() self.assertEqual( 1, len(browser.css('.response-reply')), "There should be one response visible") self.assertEqual( ['unassigned', 'unassigned', '31.12.2015 00:00', '12.04.2021 10:05'], browser.css('.response-reply .issueChange').text, "The answerdate before and the answerdatedate after should " "be visible in the answer") @browsing def test_do_not_update_anserdate_if_no_new_date_is_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31, 9, 50)) .within(ticketbox)) browser.login().visit(ticket) browser.forms['form-1'].submit() browser.fill({ 'answerdate_year': '2015', 'answerdate_month': 'December', 'answerdate_day': '31', 'answerdate_hour': '09', 'answerdate_minute': '50'}).submit() self.assertEqual( ['No response text added and no issue changes made.'], statusmessages.error_messages()) @browsing def test_do_not_update_anserdate_if_no_year_is_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31)) .within(ticketbox)) browser.login().visit(ticket) browser.forms['form-1'].submit() browser.fill({ 'answerdate_year': '--', 'answerdate_month': 'April', 'answerdate_day': '04', 'answerdate_hour': '09', 'answerdate_minute': '00'}).submit() self.assertEqual( ['No response text added and no issue changes made.'], statusmessages.error_messages()) @browsing def test_do_not_update_anserdate_if_no_month_is_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31)) .within(ticketbox)) browser.login().visit(ticket) browser.forms['form-1'].submit() browser.fill({ 'answerdate_year': '2021', 'answerdate_month': '--', 'answerdate_day': '04', 'answerdate_hour': '09', 'answerdate_minute': '00'}).submit() self.assertEqual( ['No response text added and no issue changes made.'], statusmessages.error_messages()) @browsing def test_do_not_update_anserdate_if_no_day_is_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31)) .within(ticketbox)) browser.login().visit(ticket) browser.forms['form-1'].submit() browser.fill({ 'answerdate_year': '2021', 'answerdate_month': 'April', 'answerdate_day': '--', 'answerdate_hour': '09', 'answerdate_minute': '00'}).submit() self.assertEqual( ['No response text added and no issue changes made.'], statusmessages.error_messages()) @browsing def test_update_anserdate_if_no_hour_or_minute_is_given(self, browser): ticketbox = create(Builder('ticket box')) ticket = create(Builder('ticket') .having(answerDate=DateTime(2015, 12, 31)) .within(ticketbox)) browser.login().visit(ticket) browser.fill({ 'answerdate_year': '2021', 'answerdate_month': 'April', 'answerdate_day': '12', 'answerdate_hour': '--', 'answerdate_minute': '--'}).submit() self.assertEqual( 1, len(browser.css('.response-reply')), "There should be one response visible")