Esempio n. 1
0
        public async Task CheckStanAktualnyAfterPrzyjecie()
        {
            // Arrange
            var client    = _factory.CreateClient();
            var apiCaller = new PrzyjecieApiCaller(client);

            var tokens = await Authenticate(client).ConfigureAwait(false);

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokens.Token);

            var magazynId = await new MagazynApiCaller(client).DodajMagazyn(MagazynObjectMother.GetMagazyn());
            var produktId = await new ProduktApiCaller(client).DodajProdukt(ProduktObjectMother.GetProdukt(magazynId));

            var przyjecieModel = new PrzyjecieCreateModel
            {
                MagazynId = magazynId,
                Data      = DateTime.Now,
                Pozycje   = new List <PrzyjeciePozycjaDokumentuCreateModel>
                {
                    new PrzyjeciePozycjaDokumentuCreateModel
                    {
                        ProduktId = produktId,
                        CenaNetto = 1M,
                        Ilosc     = 10,
                        StawkaVat = StawkaVat.DwadziesciaTrzyProcent
                    }
                }
            };

            await apiCaller.Przyjmij(przyjecieModel);

            var stany = await new StanAktualnyApiCaller(client).GetStanAktualny(magazynId);

            Assert.That(stany, Has.Count.EqualTo(1));
        }
        public async Task Rezerwuj_Sprawdz_Liste()
        {
            // Arrange
            var client    = _factory.CreateClient();
            var apiCaller = new RezerwacjeApiCaller(client);

            var tokens = await Authenticate(client).ConfigureAwait(false);

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokens.Token);

            var magazynId = await new MagazynApiCaller(client).DodajMagazyn(MagazynObjectMother.GetMagazyn());
            var produktId = await new ProduktApiCaller(client).DodajProdukt(ProduktObjectMother.GetProdukt(magazynId));

            var rezerwacja = new RezerwacjaCreateModel
            {
                DataRezerwacji = DateTime.Now,
                DataWaznosci   = DateTime.Now.AddDays(7),
                Opis           = string.Empty,
                Pozycje        = new List <PozycjaRezerwacjiCreateModel>
                {
                    new PozycjaRezerwacjiCreateModel
                    {
                        ProduktId = produktId,
                        Ilosc     = 42
                    }
                }
            };

            await apiCaller.Rezerwuj(rezerwacja);

            var listaRezerwacji = await apiCaller.GetList();

            Assert.That(listaRezerwacji, Has.Count.EqualTo(1));
        }
Esempio n. 3
0
        public async Task Add_Produkt_And_Check_Count()
        {
            // Arrange
            var client    = _factory.CreateClient();
            var apiCaller = new ProduktApiCaller(client);

            var tokens = await Authenticate(client).ConfigureAwait(false);

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokens.Token);

            var magazynId = await new MagazynApiCaller(client).DodajMagazyn(MagazynObjectMother.GetMagazyn());
            await apiCaller.DodajProdukt(ProduktObjectMother.GetProdukt(magazynId));

            var categories = await apiCaller.GetProdukty();

            Assert.That(categories, Is.Not.Null);
            Assert.That(categories, Has.Count.EqualTo(1));
        }
Esempio n. 4
0
        public async Task ProbaPrzesunieciaNieistniejacegoTowaru()
        {
            // Arrange
            var client           = _factory.CreateClient();
            var magazynApiCaller = new MagazynApiCaller(client);

            var tokens = await Authenticate(client).ConfigureAwait(false);

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokens.Token);

            var magazynWydaniaId = await magazynApiCaller.DodajMagazyn(MagazynObjectMother.GetMagazyn());

            var magazynPrzyjeciaId = await magazynApiCaller.DodajMagazyn(MagazynObjectMother.GetMagazyn());

            var produktId = await new ProduktApiCaller(client).DodajProdukt(ProduktObjectMother.GetProdukt(magazynWydaniaId));

            await new PrzyjecieApiCaller(client).Przyjmij(new PrzyjecieCreateModel
            {
                MagazynId = magazynWydaniaId,
                Data      = DateTime.Now,
                Pozycje   = new List <PrzyjeciePozycjaDokumentuCreateModel>
                {
                    new PrzyjeciePozycjaDokumentuCreateModel
                    {
                        ProduktId = produktId,
                        CenaNetto = 1M,
                        Ilosc     = 10,
                        StawkaVat = StawkaVat.DwadziesciaTrzyProcent
                    }
                }
            });

            var przesuniecieModel = new PrzesuniecieCreateModel
            {
                MagazynWydajacyId    = magazynWydaniaId,
                MagazynPrzyjmujacyId = magazynPrzyjeciaId,
                Data    = DateTime.Now,
                Pozycje = new List <PozycjaWydaniaModel>
                {
                    new PozycjaWydaniaModel
                    {
                        ProduktId = produktId,
                        Ilosc     = 10
                    }
                }
            };

            await new PrzesuniecieApiCaller(client).Przesun(przesuniecieModel);

            //Act
            var przesuniecieModel2 = new PrzesuniecieCreateModel
            {
                MagazynWydajacyId    = magazynWydaniaId,
                MagazynPrzyjmujacyId = magazynPrzyjeciaId,
                Data    = DateTime.Now,
                Pozycje = new List <PozycjaWydaniaModel>
                {
                    new PozycjaWydaniaModel
                    {
                        ProduktId = produktId,
                        Ilosc     = 1
                    }
                }
            };

            var serializerSettings = GetNodaTimeSerializerSettings();
            var content            = new StringContent(JsonConvert.SerializeObject(przesuniecieModel2, serializerSettings), Encoding.UTF8, "application/json");
            var result             = await client.PostAsync("Przesuniecie/Przesun", content).ConfigureAwait(false);

            Assert.That(result.StatusCode, Is.EqualTo(HttpStatusCode.BadRequest));

            var contentString = await result.Content.ReadAsStringAsync().ConfigureAwait(false);

            Assert.That(contentString, Is.EqualTo("Niewystarczający stan magazynowy"));
        }