Ejemplo n.º 1
0
        public void Write_NominialType()
        {
            // Arrange
            var target  = new ThreeTarget();
            var adapter = CreateAdapter(target);

            // Act
            adapter.Write("Three", new NominalType()
            {
                Person = new Person
                {
                    FirstName = "Alpha",
                    Address   = new Address
                    {
                        City  = "Beta",
                        State = "Gamma",
                        Zip   = 98028
                    }
                }
            });

            // Assert
            Assert.Equal("Alpha", target.Person.FirstName);
            Assert.Equal("Beta", target.Person.Address.City);
            Assert.Equal("Gamma", target.Person.Address.State);
            Assert.Equal(98028, target.Person.Address.Zip);
        }
Ejemplo n.º 2
0
        public void Write_CanDuckType_Null()
        {
            // Arrange
            var target  = new ThreeTarget();
            var adapter = CreateAdapter(target);

            // Act
            adapter.Write("Three", new
            {
                person = (Person)null,
            });

            // Assert
            Assert.Null(target.Person);
        }
Ejemplo n.º 3
0
        public void NotificationCanDuckType()
        {
            var notifier = CreateNotifier();
            var target = new ThreeTarget();

            notifier.EnlistTarget(target);
            notifier.Notify("Three", new
            {
                person = new Person
                {
                    FirstName = "Alpha",
                    Address = new Address
                    {
                        City = "Beta",
                        State = "Gamma",
                        Zip = 98028
                    }
                }
            });

            Assert.Equal("Alpha", target.Person.FirstName);
            Assert.Equal("Beta", target.Person.Address.City);
            Assert.Equal("Gamma", target.Person.Address.State);
            Assert.Equal(98028, target.Person.Address.Zip);
        }
        public void WriteTelemetryCanDuckType()
        {
            // Arrange
            var target = new ThreeTarget();
            var adapter = CreateAdapter(target);

            // Act
            adapter.WriteTelemetry("Three", new
            {
                person = new Person
                {
                    FirstName = "Alpha",
                    Address = new Address
                    {
                        City = "Beta",
                        State = "Gamma",
                        Zip = 98028
                    }
                }
            });

            // Assert
            Assert.Equal("Alpha", target.Person.FirstName);
            Assert.Equal("Beta", target.Person.Address.City);
            Assert.Equal("Gamma", target.Person.Address.State);
            Assert.Equal(98028, target.Person.Address.Zip);
        }