public void schema_should_contains_collection_of_simple_types()
        {
            var msg = new SimpleCollectionTypes
            {
            };

            var factory = new RequiredFieldFactory();

            var expectedRequiredField = new SimpleCollectionRequiredField(name: "CollectionOfInts", level: 0, type: TypesNamesConsts.CollectionOf + "System.Int32");

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

            var factory = new RequiredFieldFactory();

            var expectedRequiredField = new SimpleCollectionRequiredField(name: "CollectionOfBytes", level: 1, type: TypesNamesConsts.CollectionOf + "System.Byte");

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

            var factory = new RequiredFieldFactory();

            var expectedRequiredField = new SimpleCollectionRequiredField(name: "GenericOfSimples",
                                                                          level: 1,
                                                                          type: TypesNamesConsts.CollectionOf + "System.Int32"
                                                                          );

            factory.GetRequiredFields(msg.GetType()).ShouldContainEquivalentTo(expectedRequiredField, helper);
        }