public void AddValidBugShouldBeAddedToRepository()
        {
            // Arrange
            var bugLoggerFakeData = new BugLoggerFakeUoW();
            var bug = new CreateBugModel()
            {
                Description = "bug-1",
                LogDate     = DateTime.Now
            };

            var bugsController = new BugsController(bugLoggerFakeData);

            this.SetupController(bugsController);

            // Act
            bugsController.Create(bug);

            // Assert
            Assert.AreEqual(bugLoggerFakeData.Bugs.All().Count(), 1);

            var bugInDatabase = bugLoggerFakeData.Bugs.All().First();

            Assert.AreEqual(bug.Description, bugInDatabase.Description);
            Assert.AreEqual(BugStatus.Pending, bugInDatabase.Status);
            Assert.IsNotNull(bugInDatabase.LogDate);
            Assert.IsTrue(bugLoggerFakeData.IsSaveChangedCalled);
        }
Esempio n. 2
0
        public HttpResponseMessage Create(CreateBugModel bugModel)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            if (string.IsNullOrEmpty(bugModel.Description))
            {
                return(this.Request.CreateResponse(HttpStatusCode.BadRequest, "Description cannot be null or empty"));
            }

            if (bugModel.LogDate == DateTime.MinValue || bugModel.LogDate == DateTime.MaxValue)
            {
                return(this.Request.CreateResponse(HttpStatusCode.BadRequest, "Invalid LogDate: " + bugModel.LogDate));
            }

            var bug = new Bug()
            {
                Description = bugModel.Description,
                LogDate     = bugModel.LogDate,
                Status      = BugStatus.Pending
            };

            this.BugLoggerData.Bugs.Add(bug);
            this.BugLoggerData.SaveChanges();

            var response = this.Request.CreateResponse(HttpStatusCode.Created, bug);

            return(response);
        }
        public void AddValidBugShouldBeAddedToRepository_Mocking()
        {
            // Arrange
            var bug = new CreateBugModel()
            {
                Description = "bug-1",
                LogDate     = DateTime.Now
            };

            var bugs = new List <Bug>();
            var bugLoggerFakeData = this.MockUnitOfWorkForActionAll(bugs);
            var bugsController    = new BugsController(bugLoggerFakeData);

            this.SetupController(bugsController);

            // Act
            bugsController.Create(bug);

            // Assert
            Assert.AreEqual(bugLoggerFakeData.Bugs.All().Count(), 1);

            var bugInDatabase = bugLoggerFakeData.Bugs.All().First();

            Assert.AreEqual(bug.Description, bugInDatabase.Description);
            Assert.AreEqual(BugStatus.Pending, bugInDatabase.Status);
            Assert.IsNotNull(bugInDatabase.LogDate);
        }
 public void AddBug(CreateBugModel aCreateBugModel)
 {
     _bugRepository.AddBug(new Bug()
     {
         Id    = ObjectId.GenerateNewId(),
         State = aCreateBugModel.State,
         Title = aCreateBugModel.Title
     });
 }
Esempio n. 5
0
        public void PostNewBugWithoutLogDateAndEmptyDescriptionShouldReturn400()
        {
            var bugLoggerData = this.MockUnitOfWorkForActionAll();
            var bug           = new CreateBugModel();

            var server   = new InMemoryHttpServer <Bug>(InMemoryServerUrl, bugLoggerData);
            var response = server.CreatePostRequest("/api/Bugs/Create", bug);

            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }
Esempio n. 6
0
        public void PostNewValidBugShouldReturn201()
        {
            var bugLoggerData = this.MockUnitOfWorkForActionAll();
            var bug           = new CreateBugModel()
            {
                Description = "bug-1",
                LogDate     = DateTime.Now
            };

            var server   = new InMemoryHttpServer <Bug>(InMemoryServerUrl, bugLoggerData);
            var response = server.CreatePostRequest("/api/Bugs/Create", bug);

            Assert.AreEqual(HttpStatusCode.Created, response.StatusCode);
        }
        public void AddBugWithoutBothDescriptionAndLogDateShouldNotBeAddedToRepository()
        {
            // Arrange
            var bugLoggerFakeData = new BugLoggerFakeUoW();
            var bug = new CreateBugModel();

            var bugsController = new BugsController(bugLoggerFakeData);

            this.SetupController(bugsController);

            // Act
            bugsController.Create(bug);

            // Assert
            Assert.AreEqual(bugLoggerFakeData.Bugs.All().Count(), 0);
        }
        public void AddBugWithEmptyDescriptionShouldNotBeAddedToRepository()
        {
            // Arrange
            var bugLoggerFakeData = new BugLoggerFakeUoW();
            var bug = new CreateBugModel()
            {
                Description = string.Empty,
                LogDate     = DateTime.Now
            };

            var bugsController = new BugsController(bugLoggerFakeData);

            this.SetupController(bugsController);

            // Act
            bugsController.Create(bug);

            // Assert
            Assert.AreEqual(bugLoggerFakeData.Bugs.All().Count(), 0);
        }
Esempio n. 9
0
        public ActionResult Create(CreateBugModel model)
        {
            if (ModelState.IsValid)
            {
                BugReporter_v2.DAL.BugDAL.SubmitBugToProject(model.ProjectID, User.Identity.Name, "New", model.Desctiption, model.Priority);
                var bug = BugReporter_v2.DAL.BugDAL.GetLastAddedBug().First();
                //BugReporter_v2.DAL.UserProfile user = User.Identity.Name;
                LogDAL.AddLogForBug((string)User.Identity.Name, bug.BugId, "Add");
                UserDAL.AddActivity(User.Identity.Name);

                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                // If we got this far, something failed, redisplay form
                ViewBag.error = "error";
                UserDAL.AddActivity(User.Identity.Name);
                ModelState.AddModelError("", "Error please try again");
                ViewBag.Projects = new SelectList(db.Projects.OrderBy(x => x.ProjectName).Select(x => x), "ProjectId", "ProjectName", model.ProjectID);
                return(View(model));
            }
        }