public bool RegistrerBruker(Registrer innBruker) { if (EmailDb(innBruker)) { return(false); } byte[] passordDb = lagHash(innBruker.BekreftPassord); var nyBruker = new dbBruker() { Passord = passordDb, Fornavn = innBruker.Fornavn, Etternavn = innBruker.Etternavn, Email = innBruker.Email, Telefonnummer = innBruker.Telefonnummer }; using (var db = new Dbkontekst()) { try { db.Brukere.Add(nyBruker); db.SaveChanges(); return(true); } catch (Exception feil) { return(false); } } }
public bool EmailDb(Registrer innBruker) { //Sjekker om bruker er i db using (var db = new Dbkontekst()) { dbBruker funnetBruker = db.Brukere.FirstOrDefault (b => b.Email == innBruker.Email); if (funnetBruker == null) { return(false); } else { return(true); } } }
public bool BrukerIdb(LogInn innBruker) { //Sjekker om bruker er i db using (var db = new Dbkontekst()) { byte[] passordDb = lagHash(innBruker.Passord); dbBruker funnetBruker = db.Brukere.FirstOrDefault (b => b.Passord == passordDb && b.Email == innBruker.Brukernavn); if (funnetBruker == null) { return(false); } else { return(true); } } }
public void SettInnMal_OK() { var _mock = new Mock <InterfaceDbTVakt>(); MalerSkjema maler = new MalerSkjema() { ProsjektId = 1, startTid = "12:15", sluttTid = "13.15" }; var brukernavn = new dbBruker(); _mock.Setup(x => x.RegistrerMal(maler, brukernavn.Email)).Returns(true); _mock.Verify(framework => framework.RegistrerMal(maler, brukernavn.Email), Times.AtMostOnce()); InterfaceDbTVakt lovable = _mock.Object; var actual = lovable.RegistrerMal(maler, brukernavn.Email); Assert.AreEqual(true, actual); }
public BrukerTest() { // Lager mock som vi kan gjøre spørringer mot List <BrukerListe> brukere = new List <BrukerListe> { new BrukerListe() { Brukernavn = "*****@*****.**", ProsjektDeltakerId = 1, Admin = false, Navn = "Mats" }, new BrukerListe() { Brukernavn = "*****@*****.**", ProsjektDeltakerId = 2, Admin = true, Navn = "Gordo" } }; List <dbBruker> brukereDB = new List <dbBruker> { new dbBruker { BrukerId = 1, Email = "*****@*****.**" }, new dbBruker { BrukerId = 2, Email = "*****@*****.**" }, new dbBruker { BrukerId = 3, Email = "*****@*****.**" } }; List <Vakt> vakterDB = new List <Vakt> { new Vakt { ProsjektId = 1, start = Convert.ToDateTime("22.12.2012 16.43"), end = Convert.ToDateTime("22.12.2012 16.43"), title = "Dagvakt", Beskrivelse = "Opplæring" }, new Vakt { ProsjektId = 2, start = Convert.ToDateTime("22.12.2012 16.43"), end = Convert.ToDateTime("22.12.2012 16.43"), title = "Dagvakt", Beskrivelse = "Opplæring" }, new Vakt { ProsjektId = 1, BrukerId = 1, start = Convert.ToDateTime("22.12.2012 16.43"), end = Convert.ToDateTime("22.12.2012 16.43"), title = "Dagvakt", Beskrivelse = "Opplæring" } }; List <Prosjektdeltakelse> deltakelser = new List <Prosjektdeltakelse> { new Prosjektdeltakelse() { BrukerId = 1, ProsjektId = 1, ProsjektDeltakerId = 1, Admin = false }, new Prosjektdeltakelse() { BrukerId = 2, ProsjektId = 1, ProsjektDeltakerId = 2, Admin = false } }; List <Prosjekt> prosjekter = new List <Prosjekt> { new Prosjekt() { ProsjektId = 1, EierId = 1 }, new Prosjekt() { ProsjektId = 2, EierId = 2 } }; // Mock the Products Repository using Moq Mock <InterfaceDbTBruker> mockProductRepository = new Mock <InterfaceDbTBruker>(); Mock <InterfaceDbTProsjekt> mockProductRepositoryProsjekt = new Mock <InterfaceDbTProsjekt>(); mockProductRepository.Setup(mr => mr.HentBrukere(It.IsAny <int>(), It.IsAny <string>())) .Returns( (int i, string u) => { var deltakels = deltakelser.Where(x => x.ProsjektId == i).ToList(); List <BrukerListe> testliste = new List <BrukerListe>(); foreach (var del in deltakels) { testliste.Add(new BrukerListe() { ProsjektId = del.ProsjektId, ProsjektDeltakerId = del.ProsjektDeltakerId, Admin = del.Admin }); } return(testliste); }); mockProductRepository.Setup(mr => mr.GiBrukerAdminTilgang(It.IsAny <Sjef>(), It.IsAny <string>())) .Returns( (Sjef s, string u) => { if (!this.mockProductRepositoryProsjekt.ErEier(u, s.ProsjektId)) { return(false); } var AdminTilgang = deltakelser.FirstOrDefault(p => p.ProsjektId == s.ProsjektId && p.BrukerId == s.BrukerId); if (AdminTilgang == null) { return(false); } try { AdminTilgang.Admin = true; return(true); } catch (Exception feil) { return(false); } }); mockProductRepository.Setup(mr => mr.RegistrerBruker(It.IsAny <Registrer>())) .Returns( (Registrer r) => { if (this.mockProductRepository.EmailDb(r)) { return(false); } var algoritme = System.Security.Cryptography.SHA256.Create(); var innData = System.Text.Encoding.ASCII.GetBytes(r.BekreftPassord); var passordDb = algoritme.ComputeHash(innData); var nyBruker = new dbBruker() { Passord = passordDb, Fornavn = r.Fornavn, Etternavn = r.Etternavn, Email = r.Email, Telefonnummer = r.Telefonnummer }; using (var db = new Dbkontekst()) { try { db.Brukere.Add(nyBruker); db.SaveChanges(); return(true); } catch (Exception feil) { return(false); } } }); mockProductRepository.Setup(mr => mr.EmailDb(It.IsAny <Registrer>())) .Returns( (Registrer r) => { dbBruker funnetBruker = brukereDB.FirstOrDefault (b => b.Email == r.Email); if (funnetBruker == null) { return(false); } else { return(true); } }); mockProductRepository.Setup(mr => mr.HentVakter(It.IsAny <string>(), It.IsAny <int>())) .Returns( (string u, int i) => { int id = this.mockProductRepositoryProsjekt.BrukerId(u); List <Timeliste> pros = (from p in vakterDB where p.BrukerId == id && p.ProsjektId == i select new Timeliste() { ProsjektId = p.ProsjektId, PeriodeStart = p.start, PeriodeSlutt = p.end }).ToList(); return(pros); }); mockProductRepository.Setup(mr => mr.FjernAdminTilgang(It.IsAny <Sjef>(), It.IsAny <string>())) .Returns( (Sjef s, string u) => { if (!this.mockProductRepositoryProsjekt.ErEier(u, s.ProsjektId)) { return(false); } try { var AdminTilgang = deltakelser.FirstOrDefault(p => p.ProsjektId == s.ProsjektId && p.BrukerId == s.BrukerId); AdminTilgang.Admin = false; return(true); } catch (Exception feil) { return(false); } }); mockProductRepositoryProsjekt.Setup(mr => mr.ErEier(It.IsAny <string>(), It.IsAny <int>())) .Returns( (string u, int i) => { var bId = this.mockProductRepositoryProsjekt.BrukerId(u); var TestOk = (from x in prosjekter where x.EierId == bId && x.ProsjektId == i select x.EierId).SingleOrDefault(); bool ok = false; if (TestOk != 0) { ok = true; return(ok); } return(ok); }); mockProductRepositoryProsjekt.Setup(mr => mr.ErAdmin(It.IsAny <string>(), It.IsAny <int>())) .Returns( (string u, int i) => { var okAdmin = false; var bId = this.mockProductRepositoryProsjekt.BrukerId(u); var TestOk = (from x in deltakelser where x.ProsjektId == i && x.BrukerId == bId select x.Admin).SingleOrDefault(); if (TestOk != false) { okAdmin = true; return(okAdmin); } return(okAdmin); }); mockProductRepositoryProsjekt.Setup(mr => mr.BrukerId(It.IsAny <string>())) .Returns( (string u) => { int userId = (from x in brukereDB where x.Email == u select x.BrukerId).SingleOrDefault(); return(userId); }); // Allows us to test saving a product // Complete the setup of our Mock Product Repository this.mockProductRepository = mockProductRepository.Object; this.mockProductRepositoryProsjekt = mockProductRepositoryProsjekt.Object; }