// GET: Thread public ActionResult Index() { using (FakebookContext Fk = new FakebookContext()) { Home content = new Home(Fk.Threads.ToList(), Fk.Categories.ToList()); return(View(content)); } }
public void GetUser_ByIds_ValidData(List <User> users, List <int> userIds) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data users.ForEach(user => _ = repo.CreateUser(user).Result); } using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); var usersActual = repo.GetAllUsers(); Assert.True(usersActual.Any()); usersActual = repo.GetUsersByIdsAsync(userIds).Result; Assert.True(usersActual.Any()); Assert.True(usersActual.Count() == userIds.Distinct().Count()); } }
public void CreateUser_InvalidData(User user) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data Assert.ThrowsAsync <ArgumentException>(() => repo.CreateUser(user)); } using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); var users = repo.GetAllUsers(); Assert.False(users.Any()); } }
public void DeleteUser_InvalidData(List <User> users, int userId) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data users.ForEach(user => _ = repo.CreateUser(user).Result); } using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); var usersActual = repo.GetAllUsers(); Assert.ThrowsAsync <ArgumentException>(() => repo.DeleteUserAsync(userId)); } }
public ActionResult Delete(int _id) { using (FakebookContext Fk = new FakebookContext()) { Thread thread = Fk.Threads.First(x => x.Id == _id); return(View(thread)); } }
public ActionResult AddComment(DetailThread _detailThread) { using (FakebookContext Fk = new FakebookContext()) { _detailThread.Comment.IdThread = _detailThread.Thread.Id; Fk.Comments.Add(_detailThread.Comment); Fk.SaveChanges(); return(RedirectToAction("Detail", "Thread", new{ _id = _detailThread.Thread.Id })); } }
public ActionResult Delete(Thread _thread) { using (FakebookContext Fk = new FakebookContext()) { Thread thread = Fk.Threads.First(x => x.Id == _thread.Id); Fk.Threads.Remove(thread); Fk.SaveChanges(); return(RedirectToAction("Index")); } }
public ActionResult Edit(int _id) { ViewBag.State = "Editar Recomendación"; using (FakebookContext Fk = new FakebookContext()) { //Creamos una instancia de un post para colocar nuesto elemnto editado Thread editThread = Fk.Threads.First(x => x.Id == _id); //creamos la instancia del nuevo modelo para alta de post ThreadCRU threadCRU = new ThreadCRU(Fk.Categories.ToList()); //compactamos las dos instancias para poder complementar vista y modelo threadCRU.Thread = editThread; return(View("Create", threadCRU)); } }
public ActionResult Create() { ViewBag.State = "Nueva Recomendación"; using (FakebookContext Fk = new FakebookContext()) { //Creamos una instancia de un nuevo post Thread newThread = new Thread(); //creamos la instancia del nuevo modelo para alta de post ThreadCRU AddThread = new ThreadCRU(Fk.Categories.ToList()); //compactamos las dos instancias para poder complementar vista y modelo AddThread.Thread = newThread; return(View(AddThread)); } }
public ActionResult Detail(int _id) { //consultamos en base al Id using (FakebookContext Fk = new FakebookContext()) { Thread threadConsultado = Fk.Threads.First(x => x.Id == _id); Comment comment = new Comment(); DetailThread detail = new DetailThread ( Fk.Categories.ToList() , Fk.Comments.Where(x => x.IdThread == _id).ToList() , threadConsultado , comment ); return(View(detail)); } }
public void CreateUser_ValidData(User user) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; int result; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data result = repo.CreateUser(user).Result; } // Assert Assert.True(result != -1, "Unable to create the user."); using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); var users = repo.GetAllUsers(); Assert.True(users.Any()); var userActual = repo.GetUserByIdAsync(result).Result; Assert.NotNull(userActual); Assert.Equal(user.Email, userActual.Email); Assert.Equal(user.FirstName, userActual.FirstName); Assert.Equal(user.LastName, userActual.LastName); Assert.Equal(user.BirthDate, userActual.BirthDate); } }
public void UpdateUser_ValidData(User user, User userUpdates) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; int result; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data result = repo.CreateUser(user).Result; } // Assert Assert.True(result != -1, "Unable to create the user."); using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); bool updateResult = repo.UpdateUserAsync(user.Id, userUpdates).Result; Assert.True(updateResult, "Unable to update the user."); var alteredUser = repo.GetUserByIdAsync(user.Id).Result; Assert.NotEqual(user.FirstName, alteredUser.FirstName); Assert.NotEqual(user.LastName, alteredUser.LastName); Assert.NotEqual(user.Status, alteredUser.Status); } }
public ActionResult AddOrEdit(ThreadCRU _threadCRUD) { Thread _thread = _threadCRUD.Thread; using (FakebookContext Fk = new FakebookContext()) { if (Fk.Threads.Any(x => x.Id == _thread.Id)) { Thread threadEdit = Fk.Threads.First(x => x.Id == _thread.Id); threadEdit.Title = _thread.Title; threadEdit.Description = _thread.Description; threadEdit.IdCategory = _thread.IdCategory; Fk.SaveChanges(); } else { Fk.Threads.Add(_thread); Fk.SaveChanges(); } return(RedirectToAction("Index")); } }
public void UpdateUser_InvalidData(User user, User userUpdates) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; int result; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data result = repo.CreateUser(user).Result; } // Assert Assert.True(result != -1, "Unable to create the user."); using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); Assert.ThrowsAsync <ArgumentException>(() => repo.UpdateUserAsync(user.Id, userUpdates)); var userActual = repo.GetUserByIdAsync(user.Id).Result; Assert.Equal(user.FirstName, userActual.FirstName); Assert.Equal(user.LastName, userActual.LastName); Assert.Equal(user.Email, userActual.Email); } }
public void GetUser_ById_ValidData(List <User> users, int userId) { // Arrange using var connection = new SqliteConnection("Data Source=:memory:"); connection.Open(); var options = new DbContextOptionsBuilder <FakebookContext>() .UseSqlite(connection) .Options; // Act using (var actingContext = new FakebookContext(options)) { actingContext.Database.EnsureCreated(); var repo = new UserRepo(actingContext); // Create the user data users.ForEach(user => _ = repo.CreateUser(user).Result); } using (var assertionContext = new FakebookContext(options)) { var repo = new UserRepo(assertionContext); var usersActual = repo.GetAllUsers(); Assert.True(usersActual.Any()); var userActual = repo.GetUserByIdAsync(userId).Result; Assert.NotNull(userActual); Assert.Equal(userActual.Email, userActual.Email); Assert.Equal(userActual.FirstName, userActual.FirstName); Assert.Equal(userActual.LastName, userActual.LastName); Assert.Equal(userActual.BirthDate, userActual.BirthDate); } }
public UserRepo(FakebookContext context) { _context = context; }
public CommentRepo(FakebookContext context) { _context = context; }
public PostRepo(FakebookContext context) { _context = context; }