def test_authenticated_get(self): fake_dataset() MinimumCommand.objects.create(amount=15) c = C() c.login(username="******", password="******") response = c.get(reverse("store:cart")) self.assertEqual(response.status_code, 200)
def test_delete_user(self): initial_number = User.objects.count() c = C() c.login(username="******", password="******") response = c.get(reverse("store:delete_account")) new_number = User.objects.count() self.assertEqual(response.status_code, 302) self.assertEqual(initial_number - 1, new_number)
def test_reservation(self): fake_variety, fake_client = fake_dataset() c = C() c.login(username="******", password="******") Cart.objects.create(fk_client=fake_client, fk_variety=fake_variety, quantity=15) response = c.post(reverse("store:reservation"), {"button": True}) self.assertEqual(response.status_code, 200)
def test_anonymous_user(self): c = C() id_product = Variety.objects.get(name="fake_name").pk response = c.post(reverse("store:adding_cart"), { "product": id_product, "quantity": 2 }) session = c.session self.assertEqual(session["cart"], {str(id_product): "2"}) self.assertEqual(response.status_code, 200)
def test_authenticated_user(self): c = C() c.login(username="******", password="******") id_product = Variety.objects.get(name="fake_name").pk initial_number = Cart.objects.count() response = c.post(reverse("store:adding_cart"), { "product": id_product, "quantity": 2 }) new_number = Cart.objects.count() self.assertEqual(response.status_code, 200) self.assertEqual(new_number, initial_number + 1)
def test_connect(self): c = C() response = c.post( reverse("store:login"), { "choice": "connect", "email": "*****@*****.**", "password": "******" }, ) self.assertEqual(response.status_code, 200)
def test_anonymous_post_remove(self): fake_variety, fake_client = fake_dataset() c = C() session = c.session session["cart"] = {} session["cart"][fake_variety.pk] = "5" session.save() response = c.post(reverse("store:cart"), { "action": "remove", "cart_object": fake_variety.pk }) self.assertEqual(c.session["cart"], {}) self.assertEqual(response.status_code, 200)
def test_update_pass(self): c = C() c.login(username="******", password="******") response = c.post( reverse("store:account"), { "action": "update_password", "newpassword": "******", "password": "******", }, ) user = User.objects.get(username="******") self.assertEqual(user.check_password("newpass"), True) self.assertEqual(response.status_code, 200)
def test_send_email(self): User.objects.create(username="******", email="*****@*****.**", password="******") c = C() response = c.post( reverse("store:contact"), { "email": "fake_email", "subject": "fake_subject", "message": "fake_message", }, ) self.assertEqual(response.status_code, 200)
def test_authenticated_post_remove(self): fake_variety, fake_client = fake_dataset() c = C() c.login(username="******", password="******") Cart.objects.create(fk_client=fake_client, fk_variety=fake_variety, quantity=5) initial = Cart.objects.count() response = c.post(reverse("store:cart"), { "action": "remove", "cart_object": fake_variety.pk }) new = Cart.objects.count() self.assertEqual(new, initial - 1) self.assertEqual(response.status_code, 200)
def test_remove_order(self): fake_variety, fake_client = fake_dataset() c = C() c.login(username="******", password="******") fake_type = CommandType.objects.create(type="fake_type") fake_day = Day.objects.create(name="lundi") fake_time = TimeSlot.objects.create( fk_day=fake_day, start_time=datetime.time(8, 30, 00), end_time=datetime.time(11, 30, 00), fk_command_type=fake_type, ) fake_collect = CollectLocation.objects.create( name="fake_name", fk_adress=Adress.objects.get(ville="city"), fk_command_type=fake_type, ) fake_withdrawal = DirectWithdrawal.objects.create( fk_collect_location=fake_collect, fk_time_slot=fake_time) fake_order = Order.objects.create(fk_client=fake_client, fk_direct_withdrawal=fake_withdrawal) OrderDetail.objects.create(fk_order=fake_order, fk_variety=fake_variety, quantity=15) OrderHistoric.objects.create(fk_order=fake_order, date_creation=datetime.datetime.now()) initial_order = Order.objects.filter(fk_client=fake_client).count() initial_detail = OrderDetail.objects.filter( fk_order=fake_order).count() initial_historic = OrderHistoric.objects.filter( fk_order=fake_order).count() initial_stock = fake_variety.stock response = c.post(reverse("store:remove"), {"id": fake_order.pk}) new_order = Order.objects.filter(fk_client=fake_client).count() new_detail = OrderDetail.objects.filter(fk_order=fake_order).count() new_historic = OrderHistoric.objects.filter( fk_order=fake_order).count() new_stock = Variety.objects.get(name="fake_name").stock self.assertEqual(response.status_code, 200) self.assertEqual(new_order, initial_order - 1) self.assertEqual(new_detail, initial_detail - 1) self.assertEqual(new_historic, initial_historic - 1) self.assertEqual(new_stock, initial_stock + 15)
def test_authenticated_post_update(self): fake_variety, fake_client = fake_dataset() c = C() c.login(username="******", password="******") initial_cart = Cart.objects.create(fk_client=fake_client, fk_variety=fake_variety, quantity=5) response = c.post( reverse("store:cart"), { "action": "update", "cart_object": fake_variety.pk, "quantity": 3 }, ) new_cart = Cart.objects.get(fk_client=fake_client, fk_variety=fake_variety) self.assertEqual(new_cart.quantity, initial_cart.quantity - 2) self.assertEqual(response.status_code, 200)
def test_create(self): initial_number = User.objects.count() c = C() response = c.post( reverse("store:login"), { "choice": "create", "email": "*****@*****.**", "password": "******", "name": "fake_user", "number": 22, "street": "fake_street", "cplt": "", "cp": "91000", "city": "Paris", "phone": "", "type": "particulier", }, ) new_number = User.objects.count() self.assertEqual(response.status_code, 200) self.assertEqual(new_number, initial_number + 1)
def test_update_infos(self): c = C() c.login(username="******", password="******") user = User.objects.get(username="******") initial_city = Client.objects.get(user=user).fk_adress.ville response = c.post( reverse("store:account"), { "action": "update_infos", "email": "*****@*****.**", "name": "name", "phone": "", "number": 1, "street": "newstreet", "cplt": "cplt", "cp": 95000, "city": "newcity", "password": "******", }, ) new_city = Client.objects.get(user=user).fk_adress.ville self.assertEqual("new" + initial_city, new_city) self.assertEqual(response.status_code, 200)
def test_validation_commande(self): fake_variety, fake_client = fake_dataset() c = C() c.login(username="******", password="******") Cart.objects.create(fk_client=fake_client, fk_variety=fake_variety, quantity=15) ClientReadyToCommand.objects.create( fk_client=fake_client, validation_date=datetime.datetime.now()) fake_type = CommandType.objects.create(type="fake_type") fake_day = Day.objects.create(name="lundi") fake_time = TimeSlot.objects.create( fk_day=fake_day, start_time=datetime.time(8, 30, 00), end_time=datetime.time(11, 30, 00), fk_command_type=fake_type, ) fake_collect = CollectLocation.objects.create( name="fake_name", fk_adress=Adress.objects.get(ville="city"), fk_command_type=fake_type, ) fake_withdrawal = DirectWithdrawal.objects.create( fk_collect_location=fake_collect, fk_time_slot=fake_time) initial = Order.objects.count() response = c.post( reverse("store:valid"), { "choice": "withdrawal", "option_withdrawal": fake_withdrawal.pk, }, ) new = Order.objects.count() self.assertEqual(response.status_code, 200) self.assertEqual(new, initial + 1)
def test_anonymous_get(self): MinimumCommand.objects.create(amount=15) c = C() response = c.get(reverse("store:cart")) self.assertEqual(response.status_code, 200)
def test_profil(self): c = C() c.login(username="******", password="******") response = c.get(reverse("store:account")) self.assertEqual(response.status_code, 200)
def test_index(self): c = C() response = c.get(reverse("store:marketplaces")) self.assertEqual(response.status_code, 200)
def test_404(self): c = C() response = c.get("/unknownadress") self.assertEqual(response.status_code, 404)
def test_command_whitout_referer(self): c = C() c.login(username="******", password="******") response = c.get(reverse("store:command")) self.assertEqual(response.status_code, 302)
def test_deconnect(self): c = C() c.login(username="******", password="******") response = c.get(reverse("store:logout")) self.assertEqual(response.status_code, 302)