public void schema_should_contains_collection_of_complex_types_with_nested_collection_of_types()
        {
            var msg = new ComplexTypeInCollectionWithNestedCollection
            {
            };

            var factory = new RequiredFieldFactory();
            var expectedRequiredField = new ComplexCollectionRequiredField(name: "CollectionWithNestedColletion",
                                                                           level: 0,
                                                                           type: TypesNamesConsts.CollectionOf + "TypeWithNestedColletion",
                                                                           requiredFields: factory.GetRequiredFields(typeof(TypeWithNestedColletion)));

            factory.GetRequiredFields(msg.GetType()).ShouldContainEquivalentTo(expectedRequiredField, helper);
        }
        public void schema_should_support_generic_collections_of_complex_types()
        {
            var msg = new TypeWithComplexTypeWithGenericCollectionOfComplexTypes
            {
            };

            var factory = new RequiredFieldFactory();

            var expectedRequiredField = new ComplexCollectionRequiredField(
                name: "GenericOfComplex",
                level: 1,
                type: TypesNamesConsts.CollectionOf + "NestedComplexType",
                requiredFields: factory.GetRequiredFields(typeof(NestedComplexType))
                );

            factory.GetRequiredFields(msg.GetType()).ShouldContainEquivalentTo(expectedRequiredField, helper);
        }
Exemple #3
0
        public void schema_should_support_generic_collections_of_key_value_pair()
        {
            var msg     = new NestedKeyValuePairCollection {
            };
            var factory = new RequiredFieldFactory();

            var expectedRequiredField = new ComplexCollectionRequiredField(
                name: "TypeWithNestedColletionKeyValue",
                level: 0,
                type: TypesNamesConsts.CollectionOf + "KeyValuePair`2",
                requiredFields: factory.GetRequiredFields(typeof(KeyValuePair <string, ValueDictionaryType>))
                );

            var result = factory.GetRequiredFields(msg.GetType());

            result.ShouldContainEquivalentTo(expectedRequiredField, helper);
            ((ComplexCollectionRequiredField)result.Single()).RequiredFields.Should().BeEquivalentTo(expectedRequiredField.RequiredFields);
        }