public void CanHandle_DelegatesToInterceptionManager(bool value)
        {
            var fakeInterceptorManager = Mock.Of <InterceptorManager>(MockBehavior.Strict);

            Mock.Get(fakeInterceptorManager).Setup(x => x.HasInterceptor("testMessage"))
            .Returns(value);
            var sut = new InterceptionMiddleLayer(fakeInterceptorManager, "testLanguage");

            var result = sut.CanHandle("testMessage");

            Assert.Equal(value, result);
        }
        public async Task HandleNotificationAsync_IfInterceptorReturnsNull_DoesNotSendNotification()
        {
            var fakeInterceptorManager = Mock.Of <InterceptorManager>(MockBehavior.Strict);

            Mock.Get(fakeInterceptorManager).Setup(x => x.HasInterceptor("testMethod"))
            .Returns(true);
            Mock.Get(fakeInterceptorManager).Setup(x => x.ProcessInterceptorsAsync("testMethod", It.IsAny <JToken>(), "testLanguage", CancellationToken.None))
            .Returns(Task.FromResult <JToken?>(null));
            var token            = JToken.Parse("{}");
            var sut              = new InterceptionMiddleLayer(fakeInterceptorManager, "testLanguage");
            var sentNotification = false;

            await sut.HandleNotificationAsync("testMethod", token, (_) => { sentNotification = true; return(Task.CompletedTask); });

            Assert.False(sentNotification);
        }
        public async Task HandleNotificationAsync_IfInterceptorReturnsToken_SendsNotificationWithToken()
        {
            var    token    = JToken.Parse("{}");
            var    expected = JToken.Parse("\"expected\"");
            JToken?actual   = null;
            var    fakeInterceptorManager = Mock.Of <InterceptorManager>(MockBehavior.Strict);

            Mock.Get(fakeInterceptorManager).Setup(x => x.HasInterceptor("testMethod"))
            .Returns(true);
            Mock.Get(fakeInterceptorManager).Setup(x => x.ProcessInterceptorsAsync("testMethod", It.IsAny <JToken>(), "testLanguage", CancellationToken.None))
            .Returns(Task.FromResult <JToken?>(expected));
            var sut = new InterceptionMiddleLayer(fakeInterceptorManager, "testLanguage");

            await sut.HandleNotificationAsync("testMethod", token, (t) => { actual = t; return(Task.CompletedTask); });

            Assert.Equal(expected, actual);
        }
Exemple #4
0
 public RazorCSharpInterceptionMiddleLayer(InterceptorManager interceptorManager)
 {
     _underlyingMiddleLayer = new InterceptionMiddleLayer(interceptorManager, RazorLSPConstants.CSharpContentTypeName);
 }