Ejemplo n.º 1
0
        public void TransformSystemProperties_TransformsSystemProperties(string option, IDictionary <string, string> map, string expected)
        {
            // Act
            string actual = TableHttpRequestMessageExtensions.TransformSystemProperties(option, map);

            // Assert
            Assert.Equal(expected, actual);
        }
Ejemplo n.º 2
0
        public void GetMappedModelProperties_ReturnsExpectedProperties(Type type, string[] expected)
        {
            // Act
            string[] actual = TableHttpRequestMessageExtensions.GetMappedModelProperties(this.request, type);

            // Assert
            VerifyMatch(expected, actual);
        }
Ejemplo n.º 3
0
        public void GetMappedModelProperties_ReturnsPascalCasedQueryProperties(string option, Type type, string expected)
        {
            // Arrange
            string[] properties = TableHttpRequestMessageExtensions.GetMappedModelProperties(this.request, type);

            // Act
            string actual = TableHttpRequestMessageExtensions.PascalCasedQueryOption(option, properties);

            // Assert
            Assert.Equal(expected, actual);
        }
Ejemplo n.º 4
0
        public void GetMappedModelProperties_ReturnsEmptyOnExceptionThrown()
        {
            // Arrange
            Mock <Type> typeMock = new Mock <Type> {
                CallBase = true
            };

            typeMock.Setup(t => t.Name)
            .Returns("typeMock");
            typeMock.Setup(t => t.GetProperties(It.IsAny <BindingFlags>()))
            .Throws <InvalidOperationException>()
            .Verifiable();
            typeMock.Setup <int>(t => t.GetHashCode())
            .Returns(1024);

            Mock <ITraceWriter> tracerMock = new Mock <ITraceWriter>();

            tracerMock.Setup(t => t.Trace(this.request, ServiceLogCategories.TableControllers, TraceLevel.Error, It.IsAny <Action <TraceRecord> >()))
            .Callback <HttpRequestMessage, string, TraceLevel, Action <TraceRecord> >((req, cat, level, rec) =>
            {
                TraceRecord record = new TraceRecord(req, cat, level);
                rec(record);
                Assert.Contains("Could not determine the properties for type 'typeMock'.", record.Message);
            })
            .Verifiable();
            HttpConfiguration config = new HttpConfiguration();

            config.Services.Replace(typeof(ITraceWriter), tracerMock.Object);
            this.request.SetConfiguration(config);

            // Act
            string[] actual = TableHttpRequestMessageExtensions.GetMappedModelProperties(this.request, typeMock.Object);

            // Assert
            typeMock.Verify();
            tracerMock.Verify();
            Assert.Empty(actual);
        }