def test_quantity_pass(self): """ Tickets Validate Quantity - Tests if the function runs without an exception :return: """ schema = TicketSchema() data = {'min_order': 10, 'max_order': 20, 'quantity': 30} TicketSchema.validate_quantity(schema, data)
def test_quantity_quantity_gt_min(self): """ Tickets Validate Quantity - Tests if exception is raised when quantity less than max_order :return: """ schema = TicketSchema() data = {'min_order': 10, 'max_order': 20, 'quantity': 5} with self.assertRaises(UnprocessableEntity): TicketSchema.validate_quantity(schema, data)
def test_quantity_min_gt_max(self): """ Tickets Validate Quantity - Tests if exception is raised when min_order greater than max :return: """ schema = TicketSchema() data = {'min_order': 20, 'max_order': 10, 'quantity': 30} with self.assertRaises(UnprocessableEntityError): TicketSchema.validate_quantity(schema, data)
def test_date_db_populate(self): """ Tickets Validate Date - Tests if validation works on values stored in db and not given in 'data' :return: """ with self.app.test_request_context(): schema = TicketSchema() TicketFactory() original_data = {'data': {'id': 1}} data = {} TicketSchema.validate_date(schema, data, original_data)
def test_quantity_pass(self): """ Tickets Validate Quantity - Tests if the function runs without an exception :return: """ schema = TicketSchema() data = { 'min_order': 10, 'max_order': 20, 'quantity': 30 } TicketSchema.validate_quantity(schema, data)
def test_quantity_quantity_gt_min(self): """ Tickets Validate Quantity - Tests if exception is raised when quantity less than max_order :return: """ schema = TicketSchema() data = { 'min_order': 10, 'max_order': 20, 'quantity': 5 } with self.assertRaises(UnprocessableEntity): TicketSchema.validate_quantity(schema, data)
def test_date_pass(self): """ Tickets Validate Date - Tests if the function runs without an exception :return: """ schema = TicketSchema() original_data = {'data': {}} data = { 'sales_starts_at': datetime(2003, 8, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')), 'sales_ends_at': datetime(2003, 9, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')) } TicketSchema.validate_date(schema, data, original_data)
def test_date_pass(self): """ Tickets Validate Date - Tests if the function runs without an exception :return: """ schema = TicketSchema() original_data = { 'data': {} } data = { 'sales_starts_at': datetime(2003, 8, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')), 'sales_ends_at': datetime(2003, 9, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')) } TicketSchema.validate_date(schema, data, original_data)
def test_date_start_gt_end(self): """ Tickets Validate Date - Tests if exception is raised when sales_ends_at is before sales_starts_at :return: """ schema = TicketSchema() original_data = {'data': {}} data = { 'sales_starts_at': datetime(2003, 9, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')), 'sales_ends_at': datetime(2003, 8, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')) } with self.assertRaises(UnprocessableEntity): TicketSchema.validate_date(schema, data, original_data)
def test_date_start_gt_end(self): """ Tickets Validate Date - Tests if exception is raised when sales_ends_at is before sales_starts_at :return: """ schema = TicketSchema() original_data = { 'data': {} } data = { 'sales_starts_at': datetime(2003, 9, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')), 'sales_ends_at': datetime(2003, 8, 4, 12, 30, 45).replace(tzinfo=timezone('UTC')) } with self.assertRaises(UnprocessableEntity): TicketSchema.validate_date(schema, data, original_data)
def test_date_db_populate(self): """ Tickets Validate Date - Tests if validation works on values stored in db and not given in 'data' :return: """ with app.test_request_context(): schema = TicketSchema() obj = TicketFactory() db.session.add(obj) db.session.commit() original_data = { 'data': { 'id': 1 } } data = {} TicketSchema.validate_date(schema, data, original_data)