Exemple #1
0
        private static DomainModelBuilder CreateValidDomainModel()
        {
            var entityDefinitions = new[]
            {
                new EntityDefinition(
                    "DefinedSchema",
                    "Entity1",
                    new[]
                {
                    new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                },
                    new[]
                {
                    new EntityIdentifierDefinition(
                        "PK",
                        new[]
                    {
                        "KeyProperty1", "KeyProperty2"
                    },
                        isPrimary: true)
                },
                    true)
            };

            var associationDefinitions = new AssociationDefinition[]
            { };

            var aggredateDefinitions = new[]
            {
                new AggregateDefinition(
                    new FullName("DefinedSchema", "Entity1"),
                    new FullName[]
                    { })
            };

            //  schema names do not match the names on the AggregateDefinition
            var schemaDefinition = new SchemaDefinition("logicalName", "DefinedSchema");

            var modelDefinitions = new DomainModelDefinitions(
                schemaDefinition,
                aggredateDefinitions,
                entityDefinitions,
                associationDefinitions);

            var domainModelDefinitionsProvider = MockRepository.GenerateStub <IDomainModelDefinitionsProvider>();

            domainModelDefinitionsProvider.Stub(x => x.GetDomainModelDefinitions())
            .Return(modelDefinitions);

            DomainModelBuilder builder = new DomainModelBuilder();

            builder.AddDomainModelDefinitionsList(
                new List <DomainModelDefinitions>
            {
                domainModelDefinitionsProvider.GetDomainModelDefinitions()
            });

            return(builder);
        }
Exemple #2
0
            private static DomainModelBuilder CreateFaultyDomainModel()
            {
                var entityDefinitions = new[]
                {
                    new EntityDefinition(
                        "schema1",
                        "CoreEntity",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true),
                    new EntityDefinition(
                        "schema1",
                        "Collection1Item",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true),
                        new EntityPropertyDefinition("KeyProperty2", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true)
                };

                var associationDefinitions = new[]
                {
                    new AssociationDefinition(

                        //  The line that follows contains bad data
                        new FullName("UndefinedSchemaName", "FK_CoreEntityCollection"),
                        Cardinality.OneToZeroOrMore,
                        new FullName("schema1", "CoreEntity"),
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new FullName("schema1", "Collection1Item"),
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        isIdentifying: true,
                        isRequired: true)
                };

                var aggredateDefinitions = new[]
                {
                    new AggregateDefinition(
                        new FullName("schema1", "CoreEntity"),
                        new[]
                    {
                        new FullName("schema1", "Collection1Item")
                    })
                };

                //  schema names do not match the names on the AggregateDefinition
                var schemaDefinition = new SchemaDefinition("logicalName", "schema1");

                var modelDefinitions = new DomainModelDefinitions(
                    schemaDefinition,
                    aggredateDefinitions,
                    entityDefinitions,
                    associationDefinitions);

                var domainModelDefinitionsProvider = MockRepository.GenerateStub <IDomainModelDefinitionsProvider>();

                domainModelDefinitionsProvider.Stub(x => x.GetDomainModelDefinitions())
                .Return(modelDefinitions);

                DomainModelBuilder builder = new DomainModelBuilder();

                builder.AddDomainModelDefinitionsList(
                    new List <DomainModelDefinitions>
                {
                    domainModelDefinitionsProvider.GetDomainModelDefinitions()
                });

                return(builder);
            }
            private static DomainModelBuilder CreateFaultyDomainModel()
            {
                var entityDefinitions = new[]
                {
                    new EntityDefinition(
                        "DefinedSchema",
                        "RootEntity",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true),

                    // The line that follows is causing the failure.  The 1st value should be "schema1", not "schema2"
                    new EntityDefinition(
                        "UndefinedSchema",
                        "ChildEntity",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true)
                };

                var associationDefinitions = new AssociationDefinition[0];

                var aggregateDefinitions = new[]
                {
                    new AggregateDefinition(
                        new FullName("DefinedSchema", "RootEntity"),
                        new[]
                    {
                        new FullName("UndefinedSchema", "ChildEntity")
                    })
                };

                var schemaDefinition = new SchemaDefinition("logicalName", "DefinedSchema");

                var modelDefinitions = new DomainModelDefinitions(
                    schemaDefinition,
                    aggregateDefinitions,
                    entityDefinitions,
                    associationDefinitions);

                var domainModelDefinitionsProvider = A.Fake <IDomainModelDefinitionsProvider>();

                A.CallTo(() => domainModelDefinitionsProvider.GetDomainModelDefinitions())
                .Returns(modelDefinitions);

                DomainModelBuilder builder = new DomainModelBuilder();

                builder.AddDomainModelDefinitionsList(
                    new List <DomainModelDefinitions>
                {
                    domainModelDefinitionsProvider.GetDomainModelDefinitions()
                });

                return(builder);
            }
            private static DomainModelBuilder CreateValidDomainModel()
            {
                var entityDefinitions = new[]
                {
                    new EntityDefinition(
                        "schema1",
                        "CoreEntity",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true),
                    new EntityDefinition(
                        "schema1",
                        "Collection1Item",
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true),
                        new EntityPropertyDefinition("KeyProperty2", new PropertyType(DbType.Int32), null, true)
                    },
                        new[]
                    {
                        new EntityIdentifierDefinition(
                            "PK",
                            new[]
                        {
                            "KeyProperty1", "KeyProperty2"
                        },
                            isPrimary: true)
                    },
                        true)
                };

                var associationDefinitions = new[]
                {
                    new AssociationDefinition(
                        new FullName("schema1", "FK_CoreEntityCollection"),
                        Cardinality.OneToZeroOrMore,
                        new FullName("schema1", "CoreEntity"),
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        new FullName("schema1", "Collection1Item"),
                        new[]
                    {
                        new EntityPropertyDefinition("KeyProperty1", new PropertyType(DbType.Int32), null, true)
                    },
                        isIdentifying: true,
                        isRequired: true)
                };

                var aggredateDefinitions = new[]
                {
                    new AggregateDefinition(
                        new FullName("schema1", "CoreEntity"),
                        new[]
                    {
                        new FullName("schema1", "Collection1Item")
                    })
                };

                // schema names do not match the names on the AggregateDefinition
                var schemaDefinition = new SchemaDefinition("logicalName", "schema1");

                var modelDefinitions = new DomainModelDefinitions(
                    schemaDefinition,
                    aggredateDefinitions,
                    entityDefinitions,
                    associationDefinitions);

                var domainModelDefinitionsProvider = A.Fake <IDomainModelDefinitionsProvider>();

                A.CallTo(() => domainModelDefinitionsProvider.GetDomainModelDefinitions())
                .Returns(modelDefinitions);

                DomainModelBuilder builder = new DomainModelBuilder();

                builder.AddDomainModelDefinitionsList(
                    new List <DomainModelDefinitions>
                {
                    domainModelDefinitionsProvider.GetDomainModelDefinitions()
                });

                return(builder);
            }