Esempio n. 1
0
        public void ShouldCreateReleaseWithPrePatEmail()
        {
            //given
            var releaseRepository = new Mock<IReleaseRepository>();
            var releaseController = new ReleaseController(releaseRepository.Object);

            //We'll need mocks (fake) of Context, Request and a fake PostedFile
            var postedfile = new Mock<HttpPostedFileBase>();
            var release = new Release();

            //Someone is going to ask for Request.File and we'll need a mock (fake) of that.
            string expectedFileName = "Enzo Pre-PAT release 19122011 ref REL11125.0.00";
            string expectedFileTypeExtension = ".msg";
            string savedFileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory,
                                                String.Concat(expectedFileName, expectedFileTypeExtension));

            postedfile.Setup(f => f.ContentLength).Returns(8192);
            postedfile.Setup(f => f.FileName).Returns(String.Concat(expectedFileName, expectedFileTypeExtension));

            releaseRepository.Setup(m => m.SaveReleaseDetails(It.IsAny<Release>()));

            //when
            releaseController.Create(release, postedfile.Object);

            //Then
            releaseRepository.Verify(x => x.SaveReleaseDetails(It.IsAny<Release>()), Times.Once());
            postedfile.Verify(x => x.SaveAs(savedFileName), Times.Once());

            Assert.That(release.PrePatEmailFile.Name, Is.EqualTo(savedFileName));
            Assert.That(release.PrePatEmailFile.Length, Is.EqualTo(8192));
        }
Esempio n. 2
0
        public void ShouldTestPresenceOfPrePatEmail()
        {
            //given
            Release release = new Release();

            //when
            release.PrePatEmailFileInfo = null;

            //then
        }
Esempio n. 3
0
        public void ShouldBeAbleToCreateRelease()
        {
            //given
            var releaseRepository = new Mock<IReleaseRepository>();
            var releaseController = new ReleaseController(releaseRepository.Object);

            //when
            var release = new Release();
            var redirectToRouteResult = (RedirectToRouteResult) releaseController.Create(release, null);

            //then
            releaseRepository.Verify(x => x.SaveReleaseDetails(release), Times.Once());
            Assert.That(redirectToRouteResult.RouteValues["Controller"], Is.EqualTo("Release"));
            Assert.That(redirectToRouteResult.RouteValues["Action"], Is.EqualTo("Index"));
        }
Esempio n. 4
0
        public ActionResult Create(Release release, HttpPostedFileBase prepatfile)
        {
            try
            {
                if (HasPrePatFile(prepatfile))
                {
                    _releaseRepository.SavePrePatEmailFile(prepatfile.FileName, prepatfile.InputStream);
                    release.PrePatEmailFileInfo = new PrePatEmailFileInfo { Name = prepatfile.FileName, Length = prepatfile.ContentLength };
                }

                _releaseRepository.SaveReleaseDetails(release);

                return RedirectToAction("Index", "Release");
            }
            catch (Exception)
            {
                return View("CreateRelease");
            }
        }
Esempio n. 5
0
        public void ShouldCreateReleaseWithoutPrePatEmail()
        {
            //given

            var releaseRepository = new Mock<IReleaseRepository>();
            var releaseController = new ReleaseController(releaseRepository.Object);

            var releaseDetailsModel = new Release()
                                          {
                                              ReleaseNumber = "REL1216",
                                              ReleaseFiInstructions = "FI as Normal",
                                              TeamName = "ENZO",
                                              ServiceNowTicketLink = "www.google.co.uk"
                                          };

            //when
            releaseController.Create(releaseDetailsModel, null);

            //then
            releaseRepository.Verify(x => x.SaveReleaseDetails(releaseDetailsModel));
        }
Esempio n. 6
0
        public void ShouldDisplayReleaseDetails()
        {
            //given

            string releaseNumber = "REL1216";

            var expectedReleaseDetailsModel = new Release
                                                  {
                                                      ReleaseNumber = releaseNumber,
                                                      ReleaseFiInstructions = "FI as Normal",
                                                      TeamName = "ENZO", PrePatEmailFileInfo = new PrePatEmailFileInfo(){Length=123, Name="prepatemailfile"},
                                                      ServiceNowTicketLink = "www.google.co.uk"
                                                  };

            var releaseRepository = new Mock<IReleaseRepository>();
            releaseRepository.Setup(x => x.GetReleaseDetails(releaseNumber)).Returns(expectedReleaseDetailsModel);
            var releaseDetailsController = new ReleaseDetailsController(releaseRepository.Object);

            //when
            ViewResult result = releaseDetailsController.Index(releaseNumber);
            var model = (Release) result.ViewData.Model;

            //then
            Assert.That(result.ViewName, Is.EqualTo("ReleaseDetails"));
            Assert.That(model, Is.EqualTo(expectedReleaseDetailsModel));
        }
Esempio n. 7
0
 public virtual bool Equals(Release other)
 {
     if (ReferenceEquals(null, other)) return false;
     if (ReferenceEquals(this, other)) return true;
     return other.ReleaseDate.Equals(ReleaseDate) && Equals(other.ReleaseNumber, ReleaseNumber) && Equals(other.ReleaseFiInstructions, ReleaseFiInstructions) && Equals(other.TeamName, TeamName) && Equals(other.ServiceNowTicketLink, ServiceNowTicketLink) && Equals(other.PrePatEmailFileInfo, PrePatEmailFileInfo);
 }