コード例 #1
0
        public void ExcludePrivateProperties()
        {
            var resource = new Mock <IOperationResource>();

            resource.Setup(c => c.GetResourceRecords(new Dictionary <string, string>())).Returns(new List <SkipPrivateProperties>().AsQueryable());

            var factory = new Mock <IResourceFactory>();

            factory.Setup(c => c.GetResourceById(id, OperationType.Any, "tbl12")).Returns(resource.Object);

            var repo   = new DataDictionaryRepo(factory.Object);
            var result = repo.ListNavigationProperties(id, "tbl12");

            Assert.AreEqual(0, result.Count());
        }
コード例 #2
0
        public void GetTableDefinition()
        {
            var tableDef = new TableDefinition();
            var resource = new Mock <IOperationResource>();

            resource.Setup(c => c.GetTableDefinition()).Returns(tableDef);

            var factory = new Mock <IResourceFactory>();

            factory.Setup(c => c.GetResourceById(id, OperationType.Any, "tbl12")).Returns(resource.Object);

            var repo = new DataDictionaryRepo(factory.Object);

            var result = repo.ListTableDetails(id, "tbl12");

            Assert.AreEqual(tableDef, result);
        }
コード例 #3
0
        public void ListNavPropertyOneToMany()
        {
            var resource = new Mock <IOperationResource>();

            resource.Setup(c => c.GetResourceRecords(new Dictionary <string, string>())).Returns(new List <OneToManyNav>().AsQueryable());

            var factory = new Mock <IResourceFactory>();

            factory.Setup(c => c.GetResourceById(id, OperationType.Any, "tbl12")).Returns(resource.Object);

            var repo   = new DataDictionaryRepo(factory.Object);
            var result = repo.ListNavigationProperties(id, "tbl12");

            Assert.AreEqual(1, result.Count());

            Assert.AreEqual("Nav1", result.First().Name);
            Assert.AreEqual("sch1", result.First().ReferencedSchema);
            Assert.AreEqual("tbl1", result.First().ReferencedTable);
            Assert.AreEqual("1 to Many", result.First().Relationship);
        }
コード例 #4
0
        public void ListDbObjects()
        {
            var table = new Table();
            var view  = new View();
            var sp    = new StoredProcedure();

            var schema = new Mock <IDbSchema>();

            schema.Setup(c => c.Tables).Returns(new List <Table> {
                table
            });
            schema.Setup(c => c.Views).Returns(new List <View> {
                view
            });
            schema.Setup(c => c.StoredProcedures).Returns(new List <StoredProcedure> {
                sp
            });


            var resource = new Mock <IOperationResource>();

            resource.Setup(c => c.Connector).Returns(new Models.Connector {
                Name = "test"
            });
            resource.Setup(c => c.DbSchema).Returns(schema.Object);
            var factory = new Mock <IResourceFactory>();

            factory.Setup(c => c.GetResource(id, "")).Returns(resource.Object);

            var repo = new DataDictionaryRepo(factory.Object);

            var result = repo.ListSchemaObject(id);


            resource.Verify(c => c.LoadSchema(), Times.Once);
            Assert.AreEqual(id, result.ConnectorId);
            Assert.AreEqual("test", result.ConnectorName);
            CollectionAssert.AreEqual(new[] { table }, result.Tables);
            CollectionAssert.AreEqual(new[] { view }, result.Views);
            CollectionAssert.AreEqual(new[] { sp }, result.StoredProcedures);
        }