public void Update() { using (TransactionScope scope = new TransactionScope()) { var newUser = new User() { Login = "******", Password = "******", Email = "*****@*****.**" }; var target = new UserRepository(new EFContext()); target.Create(newUser); var addedUser = target.GetAll().First(x => x.Login.Equals(newUser.Login)); addedUser.Email = "*****@*****.**"; addedUser.Password = "******"; target.Update(addedUser); var updatedUser = target.GetAll().First(x => x.Login.Equals(newUser.Login)); updatedUser.Password.Should().Be(addedUser.Password); updatedUser.Email.Should().Be(addedUser.Email); } }
public void Create() { using (TransactionScope scope = new TransactionScope()) { UserRepository userRepo = new UserRepository(new EFContext()); TagRepository tagRepo = new TagRepository(new EFContext()); PopRepository target = new PopRepository(new EFContext()); userRepo.Create(new User() { Login = "******", Password = "******", Email = "*****@*****.**" }); User user = userRepo.GetAll().FirstOrDefault(w => w.Login == "1234"); tagRepo.Create(new Tag() { Name = "Pop" }); Tag tag = tagRepo.GetAll().FirstOrDefault(w => w.Name == "Pop"); Pop model = new Pop() { Title = "New Pop", URL = "New Pop URL", PublishDate = DateTime.Now, Tags = new List<Tag> { tag }, User = user }; target.Create(model); Pop createdPop = target.GetAll().FirstOrDefault(w => w.Title == model.Title); createdPop.Title.Should().Be(model.Title); createdPop.URL.Should().Be(model.URL); createdPop.PublishDate.Should().Be(model.PublishDate); createdPop.Tags.Satisfy(t => t.FirstOrDefault(w => w.Name == "Pop") != null); createdPop.User.Login.Should().Be("1234"); } }