示例#1
0
 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)
示例#2
0
 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)
示例#3
0
 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)
示例#4
0
 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)
示例#5
0
 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)
示例#6
0
    def test_connect(self):
        c = C()
        response = c.post(
            reverse("store:login"),
            {
                "choice": "connect",
                "email": "*****@*****.**",
                "password": "******"
            },
        )

        self.assertEqual(response.status_code, 200)
示例#7
0
 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)
示例#8
0
 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)
示例#9
0
 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)
示例#10
0
 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)
示例#11
0
    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)
示例#12
0
 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)
示例#13
0
 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)
示例#14
0
 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)
示例#15
0
    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)
示例#16
0
 def test_anonymous_get(self):
     MinimumCommand.objects.create(amount=15)
     c = C()
     response = c.get(reverse("store:cart"))
     self.assertEqual(response.status_code, 200)
示例#17
0
 def test_profil(self):
     c = C()
     c.login(username="******", password="******")
     response = c.get(reverse("store:account"))
     self.assertEqual(response.status_code, 200)
示例#18
0
 def test_index(self):
     c = C()
     response = c.get(reverse("store:marketplaces"))
     self.assertEqual(response.status_code, 200)
示例#19
0
 def test_404(self):
     c = C()
     response = c.get("/unknownadress")
     self.assertEqual(response.status_code, 404)
示例#20
0
 def test_command_whitout_referer(self):
     c = C()
     c.login(username="******", password="******")
     response = c.get(reverse("store:command"))
     self.assertEqual(response.status_code, 302)
示例#21
0
 def test_deconnect(self):
     c = C()
     c.login(username="******", password="******")
     response = c.get(reverse("store:logout"))
     self.assertEqual(response.status_code, 302)