def test_should_not_save_changes(self): quote_request = QuoteRequest(self.quote) old_date = self.quote.date quote_request.update_date() self.db.session.rollback() self.assertEqual(old_date, self.quote.date)
def test_should_return_none_given_non_existent_product_name(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) product_data = dict( name="Test two" ) with self.request_context(url, product_data): product = quote_request.get_product() self.assertEqual(product, None)
def test_should_duplicate_and_add_existing_product_given_product_name_exists(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) product_data = dict( name="Test" ) with self.request_context(url, product_data): quote_request.add_product() self.assertEqual(len(self.quote.products), 2)
def test_should_update_address(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) quote_data = dict( address="New Address" ) with self.request_context(url, quote_data): quote_request.attempt_update_address() self.assertEqual(self.quote.address, "New Address")
def test_should_not_save_changes(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) quote_data = dict( address="New Address" ) with self.request_context(url, quote_data): quote_request.attempt_update_address() self.db.session.rollback() self.assertNotEqual(self.quote.address, "New Address")
def test_should_update_quote_given_valid_quote_data(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) quote_data = dict( address="New Address" ) old_date = self.quote.date with self.request_context(url, quote_data): quote_request.update_attributes() self.assertEqual(self.quote.address, "New Address") self.assertLess(old_date, self.quote.date)
def test_should_return_product_created_using_form_data(self): quote_request = QuoteRequest(self.quote) form = dict( name="Test two", material="", acabado="Acabado two", cristal="Cristal two" ) product = quote_request.make_product(form) self.assertEqual(product.name, "Test two") self.assertEqual(product.material, "")
def test_should_not_create_and_add_new_product_given_invalid_product_data(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) product_data = dict( name="Test two", material="", acabado="", cristal="" ) with self.request_context(url, product_data): quote_request.add_product() self.assertEqual(len(self.quote.products), 1)
def test_should_return_new_product_given_invalid_product_data(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) product_data = dict( name="", material="", acabado="", cristal="" ) with self.request_context(url, product_data): product = quote_request.new_product self.assertEqual(product.name, "")
def test_should_not_save_changes_given_invalid_data(self): quote_request = QuoteRequest(self.quote) url = url_for('quote.edit', id=self.quote.id) quote_data = dict( customer_name="", email="test.email.com", address="New address", name1="", material1="New Material", acabado1="", cristal1="New Cristal", name="Test Two", material="", acabado="Acabado two", cristal="Cristal two" ) with self.request_context(url, quote_data): quote_request.edit() self.db.session.rollback() self.assertEqual(self.customer.name, "Test") self.assertEqual(self.product.name, "Test") self.assertNotEqual(self.quote.address, "New address") self.assertEqual(len(Product.get_all()), 1)
def test_should_not_update_address_if_no_address_is_given(self): quote_request = QuoteRequest(self.quote) quote_request.attempt_update_address() self.assertEqual(self.quote.address, None)
def test_should_set_address_to_customer_address_given_no_address_has_been_set(self): quote_request = QuoteRequest(self.quote) quote_request.update_address() self.assertEqual(self.quote.address, self.customer.address)
def test_should_update_date(self): quote_request = QuoteRequest(self.quote) old_date = self.quote.date quote_request.update_date() self.assertLess(old_date, self.quote.date)