public void ThenVoegEenKlantToeAanHetSysteemMetVoornaamAchternaamTelefoonnummerEmailEnAdres() { var dataMapper = new KlantDataMapper(_context); var eventPublisherMock = new Mock <IEventPublisher>(MockBehavior.Strict); eventPublisherMock.Setup(p => p.Publish(It.IsAny <DomainEvent>())); var controller = new KlantController(dataMapper, eventPublisherMock.Object, new LoggerFactory()); List <long> results = new List <long>(); for (int i = 0; i < _klanten.Count; i++) { Klant nieuweKlant = new Klant() { Voornaam = _klanten[i].Item1, Achternaam = _klanten[i].Item2, Telefoonnummer = _klanten[i].Item3, Email = _klanten[i].Item4, Adres = _klanten[i].Item5 }; results.Add(controller.HandleVoegKlantToe(new VoegKlantToeCommand(nieuweKlant, ""))); } eventPublisherMock.Verify(e => e.Publish(It.IsAny <DomainEvent>()), Times.Exactly(2)); eventPublisherMock.VerifyAll(); Assert.AreEqual(1, results[0]); Assert.AreEqual(2, results[1]); }
public void GetAll_ShouldReturnAllKlanten() { // Arrange List <Klant> klanten = new List <Klant>() { new KlantBuilder().SetDummy().Create(), new KlantBuilder().SetDummy().SetEmail("*****@*****.**").Create() }; klanten = klanten.OrderBy(x => x.Id).ToList(); _context.Klanten.Add(klanten[0]); _context.Klanten.Add(klanten[1]); _context.SaveChanges(); var dataMapper = new KlantDataMapper(_context); // Act List <Klant> result = dataMapper.GetAll().OrderBy(x => x.Id).ToList(); // Assert Assert.AreEqual(klanten.Count, result.Count()); Assert.IsTrue(klanten[0].IsEqual(result[0])); Assert.IsTrue(klanten[1].IsEqual(result[1])); }
public void BeforeEach() { _bestellingBuilder = new BevestigdeBestellingBuilder(); _connection = new SqliteConnection("DataSource=:memory:"); _connection.Open(); var options = new DbContextOptionsBuilder <BffContext>() .UseSqlite(_connection) .Options; _dbContext = new BffContext(options); _dbContext.Database.EnsureCreated(); var bestellingDataMapper = new BestellingDataMapper(_dbContext); var klantDataMapper = new KlantDataMapper(_dbContext); var magazijnSessionDataMapper = new MagazijnSessionDataMapper(_dbContext); _jwtHelperMock = new Mock <IJwtHelper>(MockBehavior.Strict); _nijnContext = new TestBusContextBuilder().CreateTestContext(); _target = new BestellingController( new CommandPublisher(_nijnContext), bestellingDataMapper, klantDataMapper, magazijnSessionDataMapper, _jwtHelperMock.Object, new LoggerFactory() ); SeedDatabase(); }
public void Initialize() { _connection = new SqliteConnection("DataSource=:memory:"); _connection.Open(); _options = new DbContextOptionsBuilder <BffContext>() .UseSqlite(_connection) .Options; _context = new BffContext(_options); _target = new KlantDataMapper(_context); _context.Database.EnsureCreated(); }
public void Insert_ShouldInsertKlant() { // Arrange Klant klant = new KlantBuilder().SetDummy().Create(); var dataMapper = new KlantDataMapper(_context); // Act dataMapper.Insert(klant); Klant result = dataMapper.GetById(klant.Id); // Assert Assert.IsNotNull(result); Assert.IsTrue(klant.IsEqual(result)); }
public void GetById_ShouldReturnKlant_When_ExistingIdIsGiven() { // Arrange Klant klant = new KlantBuilder().SetDummy().Create(); _context.Klanten.Add(klant); _context.SaveChanges(); var dataMapper = new KlantDataMapper(_context); // Act Klant result = dataMapper.GetById(klant.Id); // Assert Assert.IsNotNull(result); Assert.IsTrue(klant.IsEqual(result)); }
public void ThenGenereerEenKlantnummer() { var dataMapper = new KlantDataMapper(_context); List <Klant> results = new List <Klant>(); results.Add(dataMapper.GetById(1)); results.Add(dataMapper.GetById(2)); Assert.AreEqual(1, results[0].Id); Assert.AreEqual("Hans", results[0].Voornaam); Assert.AreEqual(1, results[0].Adres.Id); Assert.AreEqual("St. Jacobsstraat", results[0].Adres.Straatnaam); Assert.AreEqual(2, results[1].Id); Assert.AreEqual("Hannah", results[1].Voornaam); Assert.AreEqual(2, results[1].Adres.Id); Assert.AreEqual("Longest Place Name Avenue", results[1].Adres.Straatnaam); }
public void Delete_ShouldThrowInvalidOperationException() { // Arrange var klant = new KlantBuilder().SetDummy().Create(); var dataMapper = new KlantDataMapper(_context); // Act void Act() { dataMapper.Delete(klant); } // Assert var exception = Assert.ThrowsException <InvalidOperationException>((Action)Act); Assert.AreEqual("Deleting klanten is not allowed", exception.Message); }
public void Update_ShouldUpdateKlant() { // Arrange Klant klant = new KlantBuilder().SetDummy().Create(); var dataMapper = new KlantDataMapper(_context); klant = dataMapper.Insert(klant); klant.Achternaam = "Worst"; // Act dataMapper.Update(klant); Klant result = dataMapper.Find(x => x.Achternaam == "Worst").FirstOrDefault(); // Assert Assert.IsNotNull(result); Assert.IsTrue(result.IsEqual(klant)); Assert.AreEqual("Worst", klant.Achternaam); }
public void Find_ShouldReturnKlantMatchingACertainPredicate_When_PredicateIsGiven() { // Arrange Klant klant1 = new KlantBuilder().SetDummy().Create(); Klant klant2 = new KlantBuilder().SetDummy().SetEmail("*****@*****.**").Create(); _context.Klanten.Add(klant1); _context.Klanten.Add(klant2); _context.SaveChanges(); var dataMapper = new KlantDataMapper(_context); // Act List <Klant> result = dataMapper.Find(x => x.Email.Contains("worst")).ToList(); // Assert Assert.AreEqual(1, result.Count); Assert.IsTrue(klant2.IsEqual(result[0])); }
public void BeforeEach() { _klantBuilder = new KlantBuilder(); _connection = new SqliteConnection("DataSource=:memory:"); _connection.Open(); var options = new DbContextOptionsBuilder <KlantContext>() .UseSqlite(_connection) .EnableSensitiveDataLogging() .Options; _dbContext = new KlantContext(options); _dbContext.Database.EnsureCreated(); SeedDatabase(); _nijnContext = new TestBusContextBuilder().CreateTestContext(); var klantDataMapper = new KlantDataMapper(_dbContext); var eventPublisher = new EventPublisher(_nijnContext); _target = new KlantController(klantDataMapper, eventPublisher, new LoggerFactory()); }