Ejemplo n.º 1
0
        public void RelatedEntityAttribute_Merge_TwoAttribs_Test()
        {
            // Arrange
            var re1 = new RelatedEntityAttribute("Entity2");
            var re2 = new RelatedEntityAttribute("Entity2");

            // Act
            var result = RelatedEntityAttributeExtensions.Merge(re1, re2);

            // Assert
            Assert.IsTrue(result is RelatedEntityAttribute);
        }
Ejemplo n.º 2
0
        public void RelatedEntityAttribute_GetValue_RightId_Test()
        {
            // Arrange
            string l = "OtherId";
            string r = "Id";

            // Act
            var actual = RelatedEntityAttributeExtensions.GetValue(l, r, "x");

            // Assert
            Assert.AreEqual("OtherId", actual);
        }
Ejemplo n.º 3
0
        public void RelatedEntityAttribute_GetValue_LeftId_Test()
        {
            // Arrange
            string l = "Id";
            string r = "OtherId";

            // Act
            var actual = RelatedEntityAttributeExtensions.GetValue(l, r, l, string.IsNullOrWhiteSpace);

            // Assert
            Assert.AreEqual("OtherId", actual);
        }
Ejemplo n.º 4
0
        public void RelatedEntityAttribute_GetValue_LeftEmpty_Test()
        {
            // Arrange
            string l = "";
            string r = "A";

            // Act
            var actual = RelatedEntityAttributeExtensions.GetValue(l, r, "x", string.IsNullOrWhiteSpace);

            // Assert
            Assert.AreEqual("A", actual);
        }
Ejemplo n.º 5
0
        public void RelatedEntityAttribute_GetValue_BothEmpty_Test()
        {
            // Arrange
            string l = "";
            string r = "";

            // Act
            var actual = RelatedEntityAttributeExtensions.GetValue(l, r, CsdlConstants.Id, string.IsNullOrWhiteSpace);

            // Assert
            Assert.AreEqual(CsdlConstants.Id, actual);
        }
Ejemplo n.º 6
0
        public void RelatedEntityAttribute_Merge_TwoAttribs_DifferentEntityProperties_Test()
        {
            // Arrange
            var re1 = new RelatedEntityAttribute("Entity2")
            {
                Entity = "E3", Property = "P1"
            };
            var re2 = new RelatedEntityAttribute("Entity2")
            {
                Entity = "E3", Property = "P2"
            };

            // Act
            // Assert
            Assert.ThrowsException <ArgumentException>(() =>
            {
                RelatedEntityAttributeExtensions.Merge(re1, re2);
            });
        }
Ejemplo n.º 7
0
        public void RelatedEntityAttribute_Merge_TwoAttribs_LeftPopulated_Test()
        {
            // Arrange
            var re1 = new RelatedEntityAttribute("Entity2")
            {
                EntityAlias            = "Alias1",
                AutoExpand             = true,
                Filter                 = "TypId eq 1",
                ForeignKeyProperty     = "Name",
                ForeignKeyType         = typeof(string),
                Property               = "Entity2Name",
                GetAll                 = false,
                Nullable               = true,
                RelatedEntityAlias     = "E2",
                RelatedEntityMustExist = false,
                Entity                 = "Entity1"
            };
            var re2 = new RelatedEntityAttribute("Entity2")
            {
                Entity   = "Entity1",
                Property = "Entity2Name"
            };

            // Act
            var result = RelatedEntityAttributeExtensions.Merge(re1, re2);

            // Assert
            Assert.AreEqual("Alias1", result.EntityAlias, "RelatedEntityAlias");
            Assert.IsTrue(result.AutoExpand, "AutoExpand");
            Assert.AreEqual("TypId eq 1", result.Filter, "Filter");
            Assert.AreEqual("Name", result.ForeignKeyProperty, "ForeignKeyProperty");
            Assert.AreEqual(typeof(string), result.ForeignKeyType, "ForeignKeyType");
            Assert.AreEqual("Entity2Name", result.Property, "Property");
            Assert.IsFalse(result.GetAll, "GetAll");
            Assert.IsTrue(result.Nullable, "Nullable");
            Assert.AreEqual("E2", result.RelatedEntityAlias, "RelatedEntityAlias");
            Assert.IsFalse(result.RelatedEntityMustExist, "RelatedEntityMustExist");
            Assert.AreEqual("Entity1", result.Entity, "Entity");
        }