private Task RunMiddlewareTask(InvokeConfiguration holder)
 {
     var controllerResourceMapping = holder.ControllerResourcemapping.Object;
     var context = holder.HttpContext;
     var options = holder.Options.Object;
     var currentRequest = holder.CurrentRequest;
     var resourceGraph = holder.ResourceGraph.Object;
     return holder.MiddleWare.Invoke(context, controllerResourceMapping, options, currentRequest, resourceGraph);
 }
コード例 #2
0
        private Task RunMiddlewareTask(InvokeConfiguration holder)
        {
            IControllerResourceMapping controllerResourceMapping = holder.ControllerResourceMapping.Object;
            HttpContext     context       = holder.HttpContext;
            IJsonApiOptions options       = holder.Options.Object;
            JsonApiRequest  request       = holder.Request;
            IResourceGraph  resourceGraph = holder.ResourceGraph.Object;

            return(holder.MiddleWare.InvokeAsync(context, controllerResourceMapping, options, request, resourceGraph));
        }
コード例 #3
0
        public async Task ParseUrlBase_UrlHasNegativePrimaryIdAndTypeIsInt_ShouldNotThrowJAException()
        {
            // Arrange
            InvokeConfiguration configuration = GetConfiguration("/users/-5/");

            // Act
            Func <Task> asyncAction = async() => await RunMiddlewareTask(configuration);

            // Assert
            await asyncAction();
        }
コード例 #4
0
        public async Task ParseUrlBase_UrlHasNoPrimaryIdSet_ShouldHaveBaseIdSetToNull()
        {
            // Arrange
            InvokeConfiguration configuration = GetConfiguration("/users");
            JsonApiRequest      request       = configuration.Request;

            // Act
            await RunMiddlewareTask(configuration);

            // Assert
            Assert.Null(request.PrimaryId);
        }
コード例 #5
0
        public async Task ParseUrlBase_UrlHasPrimaryIdSet_ShouldSetupRequestWithSameId()
        {
            // Arrange
            const string        id            = "123";
            InvokeConfiguration configuration = GetConfiguration($"/users/{id}", id: id);
            JsonApiRequest      request       = configuration.Request;

            // Act
            await RunMiddlewareTask(configuration);

            // Assert
            Assert.Equal(id, request.PrimaryId);
        }
コード例 #6
0
        public async Task ParseUrlBase_ObfuscatedIdClass_ShouldSetIdCorrectly()
        {
            // Arrange
            const string        id            = "ABC123ABC";
            InvokeConfiguration configuration = GetConfiguration($"/obfuscatedIdModel/{id}", action: "GetAsync", id: id);
            JsonApiRequest      request       = configuration.Request;

            // Act
            await RunMiddlewareTask(configuration);

            // Assert
            Assert.Equal(id, request.PrimaryId);
        }