def test_get_errors_by_event(self): LoggerLogic.add_error_log("omri", "open shop", "shop name already exists") LoggerLogic.add_error_log("omri2", "payAll", "error in pay") logs = Logger.get_error_logs_by_event("open shop") self.assertTrue(len(logs) == 1) error_log = logs[0] self.assertEqual(error_log.username, "omri") self.assertEqual(error_log.event, "open shop") logs = Logger.get_error_logs_by_event("payAll") self.assertTrue(len(logs) == 1) error_log = logs[0] self.assertEqual(error_log.username, "omri2") self.assertEqual(error_log.event, "payAll")
def pay(self, total_cost, username): purchase_time = datetime.now() if total_cost > 0 and username is not None and username != "": if username[0:5] == 'guest': return "On " + purchase_time.strftime( "%c" ) + " a payment of " + str( total_cost ) + " was made by guest and APPROVED by the Payment System." else: return "On " + purchase_time.strftime("%c") + " a payment of " + str( total_cost) + " was made by the user:"******" and APPROVED by the Payment System." else: LoggerLogic.add_error_log(username, "EXTERNAL SYSTEM: PAYMENT SYSTEM", "total cost <= 0") return False
def test_add_error(self): self.assertTrue( LoggerLogic.add_error_log("omri", "open shop", "shop name already exists")) logs = Logger.get_all_error_logs() self.assertTrue(len(logs) == 1) error_log = logs[0] self.assertEqual(error_log.username, "omri") self.assertEqual(error_log.event, "open shop") self.assertEqual(error_log.additional_details, "shop name already exists")
def pay_all(request): if request.method == 'POST': login = request.COOKIES.get('login_hash') if login is None: login = request.POST.get('login_hash') if login is None or Consumer.loggedInUsers.get(login) is None: guest = request.COOKIES.get('guest_hash') if guest is None: return HttpResponse('fail') username = '******' message = GuestShoppingCartLogic.pay_all_guest(guest) else: username = Consumer.loggedInUsers.get(login) message = UserShoppingCartLogic.pay_all(login) if isinstance(message, list): to_send = 'OK' + str(message[0]) + '}' + str(message[1]) return HttpResponse(to_send) else: LoggerLogic.add_error_log(username, "PAY ALL", message) return HttpResponse(message)