예제 #1
0
        public void Liste()
        {
            //Arrange

            var controller = new OrdreController(new OrdreLogikk(new OrdreRepositoryStub()));
            var forventetResultat = new List<Ordre>();
            var sessionMock = new TestControllerBuilder();
            sessionMock.InitializeController(controller);

            controller.Session["AdminInnlogget"] = true;
            var kunden = new Kunde() {
                Adresse = "Osloveien 123",
                Epost = "*****@*****.**",
                Etternavn = "Hansen",
                Fornavn = "Per",
                Passord = Crypto.LagHash("asdf"),
                Postnummer = "0221",
                Poststed = "Oslo",
                Tlf = "94000000"
            };

            var mobiltelefoner = new Kategori() {
                Navn = "Mobiltelefoner"
            };
            var artikkel = new Artikkel() {
                Kategori = mobiltelefoner,
                Beskrivelse = "iPhone 5",
                Pris = 1000,
                AntallPaaLager = 5,
                BildeUrl = "http://i.imgur.com/A9VXpL7.jpg",
                ThumbnailUrl = "http://i.imgur.com/A9VXpL7m.jpg"
            };
            var ordrelinje = new Ordrelinje() {
                Antall = 1,
                Artikkel = artikkel,
                PrisPerStk = 1000,
                TotalSumLinje = 1000
            };
            var ordrelinjer = new List<Ordrelinje>();
            ordrelinjer.Add(ordrelinje);
            ordrelinjer.Add(ordrelinje);
            var ordre = new Ordre() {
                Kunde = kunden,
                Adresse = "Osloveien 123",
                Postnummer = "0221",
                Poststed = "Oslo",
                Ordrelinjer = ordrelinjer
            };
            forventetResultat.Add(ordre);
            forventetResultat.Add(ordre);
            forventetResultat.Add(ordre);
            //Act
            var actionresult = (ViewResult)controller.Liste();
            var resultat = (List<Ordre>)actionresult.Model;

            //Assert

            Assert.AreEqual(actionresult.ViewName, "");
            for (int i = 0; i < resultat.Count; i++) {
                Assert.AreEqual(forventetResultat[i].Navn, resultat[i].Navn);
                Assert.AreEqual(forventetResultat[i].Adresse, resultat[i].Adresse);
                Assert.AreEqual(forventetResultat[i].Kunde.Fornavn, resultat[i].Kunde.Fornavn);
                Assert.AreEqual(forventetResultat[i].Kunde.Etternavn, resultat[i].Kunde.Etternavn);
                Assert.AreEqual(forventetResultat[i].Kunde.Adresse, resultat[i].Kunde.Adresse);
                Assert.AreEqual(forventetResultat[i].Kunde.Epost, resultat[i].Kunde.Epost);
                Assert.AreEqual(forventetResultat[i].Kunde.Aktiv, resultat[i].Kunde.Aktiv);
                Assert.AreEqual(forventetResultat[i].Kunde.Kundenummer, resultat[i].Kunde.Kundenummer);
                Assert.AreEqual(forventetResultat[i].Kunde.Tlf, resultat[i].Kunde.Tlf);
                Assert.AreEqual(forventetResultat[i].Kunde.Poststed, resultat[i].Kunde.Poststed);
                Assert.AreEqual(forventetResultat[i].Kunde.Postnummer, resultat[i].Kunde.Postnummer);
                for (int j = 0; j < forventetResultat[i].Kunde.Passord.Length; j++) {
                    Assert.AreEqual(forventetResultat[i].Kunde.Passord[j], resultat[i].Kunde.Passord[j]);
                }
                Assert.AreEqual(forventetResultat[i].Ordredato, resultat[i].Ordredato);
                for (int j = 0; j < forventetResultat[i].Ordrelinjer.Count; j++) {
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Antall, resultat[i].Ordrelinjer[j].Antall);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.AntallPaaLager, resultat[i].Ordrelinjer[j].Artikkel.AntallPaaLager);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Artikkelnr, resultat[i].Ordrelinjer[j].Artikkel.Artikkelnr);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Beskrivelse, resultat[i].Ordrelinjer[j].Artikkel.Beskrivelse);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.BildeUrl, resultat[i].Ordrelinjer[j].Artikkel.BildeUrl);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Pris, resultat[i].Ordrelinjer[j].Artikkel.Pris);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Slettet, resultat[i].Ordrelinjer[j].Artikkel.Slettet);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.ThumbnailUrl, resultat[i].Ordrelinjer[j].Artikkel.ThumbnailUrl);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Kategori.Navn, resultat[i].Ordrelinjer[j].Artikkel.Kategori.Navn);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].Artikkel.Kategori.Slettet, resultat[i].Ordrelinjer[j].Artikkel.Kategori.Slettet);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].PrisPerStk, resultat[i].Ordrelinjer[j].PrisPerStk);
                    Assert.AreEqual(forventetResultat[i].Ordrelinjer[j].TotalSumLinje, resultat[i].Ordrelinjer[j].TotalSumLinje);
                }
                Assert.AreEqual(forventetResultat[i].Ordrenummer, resultat[i].Ordrenummer);
                Assert.AreEqual(forventetResultat[i].Postnummer, resultat[i].Postnummer);
                Assert.AreEqual(forventetResultat[i].Poststed, resultat[i].Poststed);
                Assert.AreEqual(forventetResultat[i].TotalSum, resultat[i].TotalSum);
            }
        }
예제 #2
0
        public void Liste_Ikke_Innlogget()
        {
            //Act

            var controller = new OrdreController(new OrdreLogikk(new OrdreRepositoryStub()));
            var sessionMock = new TestControllerBuilder();
            sessionMock.InitializeController(controller);

            controller.Session["AdminInnlogget"] = false;

            // Act

            var result = (RedirectToRouteResult)controller.Liste();

            // Assert

            Assert.AreEqual(result.RouteName, "");
            Assert.AreEqual(result.RouteValues.Values.First(), "Innlogging");
        }