def test_valid_message_but_conflict(self): message = "U002 2017-08-01 19:00~22:00 A" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response) response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_CONFLICT),\ " Fail: " + str(response)
def test_book_success_and_cancel_success(self): message1 = "U002 2017-08-01 19:00~22:00 A" message2 = "U002 2017-08-01 19:00~22:00 A C" response = self.system.start_booking(message1) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response) response = self.system.start_booking(message2) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response)
def test_book_success_but_Cancel_not_exit(self): message1 = "U002 2017-08-01 19:00~22:00 A" message2 = "U002 2017-08-11 19:00~22:00 A C" response = self.system.start_booking(message1) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response) response = self.system.start_booking(message2) assert response == BOOKING_RESPONSE_DEFINE.get(CANCEL_NOT_EXIST),\ " Fail: " + str(response)
def test_two_valid_message(self): message1 = "U002 2017-08-01 15:00~18:00 A" message2 = "U002 2017-08-01 18:00~22:00 A" response = self.system.start_booking(message1) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response) response = self.system.start_booking(message2) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response)
def cancel_booking(self, bookMessage): areaBookedTime = self.hasBookedByDatetime.get(bookMessage.date, BookingTime()) if areaBookedTime.has_booking(): self._fresh_booked_time(areaBookedTime, bookMessage, True) self._fresh_history(bookMessage, True) self.totalIncome += bookMessage.income return BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) else: return BOOKING_RESPONSE_DEFINE.get(CANCEL_NOT_EXIST)
def new_booking(self, bookMessage): areaBookedTime = self.hasBookedByDatetime.get(bookMessage.date, BookingTime()) if areaBookedTime.is_conflict(bookMessage.time): return BOOKING_RESPONSE_DEFINE.get(BOOKING_CONFLICT) else: self._fresh_booked_time(areaBookedTime, bookMessage) self._fresh_history(bookMessage) self.totalIncome += bookMessage.income return BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS)
def testcase2_from_project(self): print "---------------testCase2FromProject--------------------" message1 = "U002 2017-08-01 19:00~22:00 A" message2 = "U003 2017-08-01 18:00~20:00 A" message3 = "U002 2017-08-01 19:00~22:00 A C" message4 = "U002 2017-08-01 19:00~22:00 A C" message5 = "U003 2017-08-01 18:00~20:00 A" message6 = "U003 2017-08-02 13:00~17:00 B" totalExpect = ["收入汇总", "---", "场地:A", "2017-08-01 18:00~20:00 160 元", "2017-08-01 19:00~22:00 违约金 100 元", "小计:260 元", "", "场地:B", "2017-08-02 13:00~17:00 200 元", "小计:200 元", "", "场地:C", "小计:0 元", "", "场地:D", "小计:0 元", "---", "总计:460 元"] print message1 response = self.system.start_booking(message1) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) print message2 response = self.system.start_booking(message2) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_CONFLICT) print message3 response = self.system.start_booking(message3) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) print message4 response = self.system.start_booking(message4) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(CANCEL_NOT_EXIST) print message5 response = self.system.start_booking(message5) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) print message6 response = self.system.start_booking(message6) print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) print "" response = self.system.get_subtotal() for i in range(len(response)): print "> " + response[i] assert response[i] == totalExpect[i], "Expect: " + totalExpect[i] + " , But Get: " + response[i]
def testcase1_from_project(self): print "---------------testCase1FromProject--------------------" message1 = "abcdefghijklmnopqrst1234567890" message2 = "U001 2016-06-02 22:00~22:00 A" message3 = "U002 2017-08-01 19:00~22:00 A" message4 = "U003 2017-08-02 13:00~17:00 B" message5 = "U004 2017-08-03 15:00~16:00 C" message6 = "U005 2017-08-05 09:00~11:00 D" totalExpect = ["收入汇总", "---", "场地:A", "2017-08-01 19:00~22:00 200 元", "小计:200 元", "", "场地:B", "2017-08-02 13:00~17:00 200 元", "小计:200 元", "", "场地:C", "2017-08-03 15:00~16:00 50 元", "小计:50 元", "", "场地:D", "2017-08-05 09:00~11:00 80 元", "小计:80 元", "---", "总计:530 元"] response = self.system.start_booking(message1) print message1 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_INVALID) response = self.system.start_booking(message2) print message2 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_INVALID) response = self.system.start_booking(message3) print message3 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) response = self.system.start_booking(message4) print message4 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) response = self.system.start_booking(message5) print message5 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) response = self.system.start_booking(message6) print message6 print "> " + response assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS) print "" response = self.system.get_subtotal() for i in range(len(response)): print "> " + response[i] assert response[i] == totalExpect[i], "Expect: " + totalExpect[i] + " , But Get: " + response[i]
def test_valid_cancel_message1_but_not_exist(self): message = "U002 2017-08-01 19:00~22:00 A C" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(CANCEL_NOT_EXIST),\ " Fail: " + str(response)
def test_invalid_cancel_message1(self): message = "U002 2017-08-01 19:00~22:00 A D" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_INVALID),\ " Fail: " + str(response)
def test_valid_message_and_accepted(self): message = "U002 2017-08-01 19:00~22:00 A" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_SUCCESS),\ " Fail: " + str(response)
def test_vlid_message_but_time_invalid(self): message = "U001 2016-06-02 22:00~22:00 A" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_INVALID), \ " Fail: " + str(response)
def test_invalid_message(self): message = "abcdefghijklmnopqrst1234567890" response = self.system.start_booking(message) assert response == BOOKING_RESPONSE_DEFINE.get(BOOKING_INVALID), \ " Fail: " + str(response)