コード例 #1
0
        public void Date_is_reported_as_invalid_if_it_was_not_set()
        {
            var sut    = new PublicationValidator();
            var result = sut.Validate(new Publication("Title", null));

            Assert.IsFalse(result.Success);
            Assert.IsTrue(result.Errors.Any(x => x.Contains("Date")), "Date was not set.");
        }
コード例 #2
0
        public void Title_is_reported_as_invalid_if_shorter_than_3_characters()
        {
            var sut    = new PublicationValidator();
            var result = sut.Validate(new Publication("a", DateTime.Now));

            Assert.IsFalse(result.Success);
            Assert.IsTrue(result.Errors.Any(x => x.Contains("Title")), "Title was to short but was not reported");
        }
コード例 #3
0
        public void Title_is_reported_as_invalid_if_it_was_not_set()
        {
            var sut    = new PublicationValidator();
            var result = sut.Validate(new Publication(null, DateTime.Now));

            Assert.IsFalse(result.Success);
            Assert.IsTrue(result.Errors.Any(x => x.Contains("Title")), "Title was not set but was not reported");
        }
コード例 #4
0
        public void Title_is_reported_as_invalid_if_longer_than_120_characters()
        {
            var    sut   = new PublicationValidator();
            string title = GetStringWithLength(121);

            var result = sut.Validate(new Publication(title, DateTime.Now));

            Assert.IsFalse(result.Success);
            Assert.IsTrue(result.Errors.Any(x => x.Contains("Title")), "Title was to long but was not reported");
        }
コード例 #5
0
        public HttpResponseMessage Save(Publication publication)
        {
            var validate = publicationValidator.Validate(publication);

            if (validate.Success)
            {
                repositoryStub.Save(publication);
                return(new HttpResponseMessage(HttpStatusCode.OK));
            }

            var httpResponseMessage = new HttpResponseMessage(HttpStatusCode.BadRequest);

            httpResponseMessage.Content = new StringContent(JsonSerializer.Serialize(validate));

            return(httpResponseMessage);
        }