示例#1
0
        public void TestServiceModelGenericGetResourceTypeWithValidClrType()
        {
            // Arrange
            var serviceModel = ClrSampleData.ServiceModelWithOnlyArticleResourceType;
            var expected     = ClrSampleData.ArticleResourceType;

            // Act
            var actual = serviceModel.GetResourceType <Article>();

            // Assert
            ResourceTypeAssert.Equal(expected, actual);
        }
示例#2
0
        public void TestServiceModelGenericTryGetResourceTypeWithValidClrType()
        {
            // Arrange
            var serviceModel = ClrSampleData.ServiceModelWithOnlyArticleResourceType;
            var expected     = ClrSampleData.ArticleResourceType;

            // Act
            IResourceType actual;
            var           actualExists = serviceModel.TryGetResourceType <Article>(out actual);

            // Assert
            Assert.True(actualExists);
            Assert.NotNull(actual);
            ResourceTypeAssert.Equal(expected, actual);
        }
示例#3
0
        public void TestServiceModelNonGenericGetResourceType(string name, bool resourceTypeExists, IServiceModel serviceModel, string apiResourceType, IResourceType expected)
        {
            this.Output.WriteLine("Test Name: {0}", name);
            this.Output.WriteLine(String.Empty);

            // Arrange

            // Act
            if (!resourceTypeExists)
            {
                Assert.Throws <ServiceModelException>(() => serviceModel.GetResourceType(apiResourceType));
                return;
            }
            var actual = serviceModel.GetResourceType(apiResourceType);

            // Assert
            ResourceTypeAssert.Equal(expected, actual);
        }
        public void TestResourceTypeBuilderCreateResourceType(string name, IResourceTypeFactory resourceTypeFactory, IConventions conventions, IResourceType expectedResourceType, IEnumerable <IComplexType> complexTypes)
        {
            this.Output.WriteLine("Test Name: {0}", name);
            this.Output.WriteLine(String.Empty);

            // Arrange
            var serializerSettings = new JsonSerializerSettings
            {
                Converters = new[]
                {
                    (JsonConverter) new StringEnumConverter()
                },
                Formatting        = Formatting.Indented,
                NullValueHandling = NullValueHandling.Include
            };

            var expectedJson = expectedResourceType.ToJson(serializerSettings);

            this.Output.WriteLine("Expected ResourceType");
            this.Output.WriteLine(expectedJson);

            // Act
            var actualResourceType = resourceTypeFactory.Create(conventions);

            if (complexTypes != null)
            {
                var clrTypeToComplexTypeDictionary = complexTypes.ToDictionary(x => x.ClrType);
                actualResourceType.Initialize(clrTypeToComplexTypeDictionary);
            }

            this.Output.WriteLine(String.Empty);

            var actualJson = actualResourceType.ToJson(serializerSettings);

            this.Output.WriteLine("Actual ResourceType");
            this.Output.WriteLine(actualJson);

            // Assert
            ResourceTypeAssert.Equal(expectedResourceType, actualResourceType);
        }
示例#5
0
        public void TestServiceModelNonGenericTryGetResourceType(string name, bool resourceTypeExists, IServiceModel serviceModel, string apiResourceType, IResourceType expected)
        {
            this.Output.WriteLine("Test Name: {0}", name);
            this.Output.WriteLine(String.Empty);

            // Arrange

            // Act
            IResourceType actual;
            var           actualExists = serviceModel.TryGetResourceType(apiResourceType, out actual);

            // Assert
            if (!resourceTypeExists)
            {
                Assert.False(actualExists);
                Assert.Null(actual);
                return;
            }

            Assert.True(actualExists);
            Assert.NotNull(actual);
            ResourceTypeAssert.Equal(expected, actual);
        }