示例#1
0
        public void ShouldGetSingle_WhenModelIsNullAndETagNotUsed_ReturnsTrue()
        {
            ETagRequestService service = GetService();
            var shouldGet = service.ShouldGetSingle(null);

            Assert.IsTrue(shouldGet);
        }
示例#2
0
        public void ShouldGetSingle_WhenETagNotUsed_ReturnsTrue()
        {
            ETagRequestService service = GetService();
            var shouldGet = service.ShouldGetSingle(new object());

            Assert.IsTrue(shouldGet);
        }
示例#3
0
        public ETagRequestService GetService(Mock <IETagService> mockETagService = null, string ifMatchHeader = null, string ifNoneMatchHeader = null)
        {
            IETagService eTagService;

            if (mockETagService is null)
            {
                eTagService = new ETagService();
            }
            else
            {
                eTagService = mockETagService.Object;
            }

            var eTagRequestService = new ETagRequestService(new FakeActionContextAccessor(), eTagService);

            if (ifMatchHeader != null)
            {
                eTagRequestService.RequestHeaders.Add("If-Match", new StringValues(ifMatchHeader));
            }
            if (ifNoneMatchHeader != null)
            {
                eTagRequestService.RequestHeaders.Add("If-None-Match", new StringValues(ifNoneMatchHeader));
            }

            return(eTagRequestService);
        }
示例#4
0
        public void ShouldGetSingle_WhenETagDoesNotMatch_ReturnsTrue()
        {
            var mockETagService = new Mock <IETagService>();

            mockETagService.Setup(e => e.CheckETags(It.IsAny <string>(), It.IsAny <object>()))
            .Returns(ETagMatchResult.DoNotMatch);

            ETagRequestService service = GetService(mockETagService, ifNoneMatchHeader: "a");
            var shouldGet = service.ShouldGetSingle(new object());

            Assert.IsTrue(shouldGet);
        }
示例#5
0
        public void ShouldDelete_WhenETagMatches_ReturnsTrue()
        {
            var mockETagService = new Mock <IETagService>();

            mockETagService.Setup(e => e.CheckETags(It.IsAny <string>(), It.IsAny <object>()))
            .Returns(ETagMatchResult.Match);

            ETagRequestService service = GetService(mockETagService, ifMatchHeader: "a");
            var shouldDelete           = service.ShouldDelete(new object());

            Assert.IsTrue(shouldDelete);
        }
示例#6
0
        public void ShouldGetSingle_WhenModelIsNullAndETagIsUsed_ThrowsArgumentNullException()
        {
            ETagRequestService service = GetService(ifNoneMatchHeader: "a");

            Assert.Throws <ArgumentNullException>(() => service.ShouldGetSingle(null));
        }