Beispiel #1
0
        public void GetChildren_WithEmailAddress_IncludesEmailAddressKey()
        {
            var applicationContext = _testDIContext.CreateTestApplicationContext();

            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            bool          expected = true;
            bool          actual;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.EmailAddress = new EmailAddress()
            {
                Email = "*****@*****.**"
            };
            MobileFormatter formatter = new MobileFormatter(applicationContext);

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetChildren(serializationInfo, formatter);
            actual = serializationInfo.Children.ContainsKey("EmailAddress");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #2
0
        public void GetChildren_WithAddress1HighStreet_IncludesAddressKey()
        {
            var applicationContext = _testDIContext.CreateTestApplicationContext();

            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            bool          expected = true;
            bool          actual;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.Address = new AddressPOCO()
            {
                AddressLine1 = "1 High Street"
            };
            MobileFormatter formatter = new MobileFormatter(applicationContext);

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetChildren(serializationInfo, formatter);
            actual = serializationInfo.Children.ContainsKey("Address");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #3
0
        public void GetChildren_WithEmailAddress_IncludesEmailAddressKey()
        {
            IServiceCollection services = new ServiceCollection();

            services.AddCsla();
            var provider           = services.BuildServiceProvider();
            var ApplicationContext = provider.GetService <ApplicationContext>();

            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            bool          expected = true;
            bool          actual;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.EmailAddress = new EmailAddress()
            {
                Email = "*****@*****.**"
            };
            MobileFormatter formatter = new MobileFormatter(ApplicationContext);

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetChildren(serializationInfo, formatter);
            actual = serializationInfo.Children.ContainsKey("EmailAddress");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #4
0
        public void SerializeThenDeserialize_WithAutoSerializableAddressNull_HasNullAddress()
        {
            // Arrange
            AddressPOCO actual;
            PersonPOCO  person = new PersonPOCO();
            PersonPOCO  deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.Address;

            // Assert
            Assert.IsNull(actual);
        }
Beispiel #5
0
        public void SerializeThenDeserialize_WithIMobileObjectEmailAddressNull_HasEmailAddressNull()
        {
            // Arrange
            EmailAddress actual;
            PersonPOCO   person = new PersonPOCO();
            PersonPOCO   deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.EmailAddress;

            // Assert
            Assert.IsNull(actual);
        }
Beispiel #6
0
        public void SerializeThenDeserialize_WithPublicPropertyLastNameSmith_HasLastNameSmith()
        {
            // Arrange
            string     actual;
            string     expected = "Smith";
            PersonPOCO person   = new PersonPOCO();

            person.LastName = "Smith";
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.LastName;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #7
0
        public void SerializeThenDeserialize_WithIncludedPrivateFieldMiddleNameMid_HasMiddleNameMid()
        {
            // Arrange
            string     actual;
            string     expected = "Mid";
            PersonPOCO person   = new PersonPOCO();

            person.SetMiddleName("Mid");
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.MiddleName;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #8
0
        public void SerializeThenDeserialize_WithExcludedPublicAutoImpPropertyNonSerializedTextNon_HasEmptyNonSerializedText()
        {
            // Arrange
            string     actual;
            string     expected = "";
            PersonPOCO person   = new PersonPOCO();

            person.NonSerializedText = "Non";
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.NonSerializedText;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #9
0
        public void SerializeThenDeserialize_WithPublicAutoImpPropertyFirstNameJoe_HasFirstNameJoe()
        {
            // Arrange
            string     actual;
            string     expected = "Joe";
            PersonPOCO person   = new PersonPOCO();

            person.FirstName = "Joe";
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.FirstName;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #10
0
        public void SerializeThenDeserialize_WithPrivateAutoImpPropertyPrivateTextPriv_HasEmptyPrivateText()
        {
            // Arrange
            string     actual;
            string     expected = "";
            PersonPOCO person   = new PersonPOCO();

            person.SetUnderlyingPrivateText("Priv");
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.GetUnderlyingPrivateText();

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #11
0
        public void SerializeThenDeserialize_WithInternalAutoImpPropertyDateOfBirth20210412165753_HasMinDateOfBirth()
        {
            // Arrange
            DateTime   actual;
            DateTime   expected = DateTime.MinValue;
            PersonPOCO person   = new PersonPOCO();

            person.SetDateOfBirth(new DateTime(2021, 04, 12, 16, 57, 53));
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.GetDateOfBirth();

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #12
0
        public void SerializeThenDeserialize_WithPublicAutoImpPropertyPersonId5_HasPersonId5()
        {
            // Arrange
            int        actual;
            int        expected = 5;
            PersonPOCO person   = new PersonPOCO();

            person.PersonId = 5;
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.PersonId;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #13
0
        public void SerializeThenDeserialize_WithIncludedPrivateAutoImpPropertyPrivateSerializedTextPri_HasPrivateSerializedTextPri()
        {
            // Arrange
            string     actual;
            string     expected = "Pri";
            PersonPOCO person   = new PersonPOCO();

            person.SetPrivateSerializedText("Pri");
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson.GetPrivateSerializedText();

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #14
0
        public void SetState_WithPersonId5_ReturnsPersonWithId5()
        {
            // Arrange
            SerializationInfo serializationInfo = PersonSerializationInfoFactory.GetDefaultSerializationInfo();
            int           actual;
            int           expected = 5;
            PersonPOCO    person   = new PersonPOCO();
            IMobileObject mobileObject;

            // Act
            serializationInfo.Values["PersonId"].Value = 5;
            mobileObject = (IMobileObject)person;
            mobileObject.SetState(serializationInfo);
            actual = person.PersonId;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #15
0
        public void SetState_WithLastNameSmith_ReturnsPersonWithLastNameSmith()
        {
            // Arrange
            SerializationInfo serializationInfo = PersonSerializationInfoFactory.GetDefaultSerializationInfo();
            string            actual;
            string            expected = "Smith";
            PersonPOCO        person   = new PersonPOCO();
            IMobileObject     mobileObject;

            // Act
            serializationInfo.Values["LastName"].Value = "Smith";
            mobileObject = (IMobileObject)person;
            mobileObject.SetState(serializationInfo);
            actual = person.LastName;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #16
0
        public void SetState_WithIncludedMiddleNameFieldMid_ReturnsMiddleNamePropertyMid()
        {
            // Arrange
            SerializationInfo serializationInfo = PersonSerializationInfoFactory.GetDefaultSerializationInfo();
            string            actual;
            string            expected = "Mid";
            PersonPOCO        person   = new PersonPOCO();
            IMobileObject     mobileObject;

            // Act
            serializationInfo.Values["_middleName"].Value = "Mid";
            mobileObject = (IMobileObject)person;
            mobileObject.SetState(serializationInfo);
            actual = person.MiddleName;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #17
0
        public void SetState_WithPrivateSerializedTextFred_ReturnsFred()
        {
            // Arrange
            SerializationInfo serializationInfo = PersonSerializationInfoFactory.GetDefaultSerializationInfo();
            string            actual;
            string            expected = "Fred";
            PersonPOCO        person   = new PersonPOCO();
            IMobileObject     mobileObject;

            // Act
            serializationInfo.Values["PrivateSerializedText"].Value = "Fred";
            mobileObject = (IMobileObject)person;
            mobileObject.SetState(serializationInfo);
            actual = person.GetPrivateSerializedText();

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #18
0
        public void SetState_WithInternalDateOfBirth210412_ReturnsPersonWithNoDateOfBirth()
        {
            // Arrange
            SerializationInfo serializationInfo = PersonSerializationInfoFactory.GetDefaultSerializationInfo();
            DateTime          actual;
            DateTime          expected = DateTime.MinValue;
            PersonPOCO        person   = new PersonPOCO();
            IMobileObject     mobileObject;

            // Act
            serializationInfo.Values["DateOfBirth"].Value = new DateTime(2021, 04, 12, 18, 27, 43);
            mobileObject = (IMobileObject)person;
            mobileObject.SetState(serializationInfo);
            actual = person.GetDateOfBirth();

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #19
0
        /// <summary>
        /// Serialize and then deserialize a PersonPOCO object, exercising the generated code
        /// associated with these two operations on the PersonPOCO test object
        /// </summary>
        /// <param name="valueToSerialize">The object to be serialized</param>
        /// <returns>The PersonPOCO that results from serialization then deserialization</returns>
        private PersonPOCO SerializeThenDeserialisePersonPOCO(PersonPOCO valueToSerialize)
        {
            var applicationContext = _testDIContext.CreateTestApplicationContext();

            System.IO.MemoryStream serializationStream;
            PersonPOCO             deserializedValue;
            MobileFormatter        formatter = new MobileFormatter(applicationContext);

            // Act
            using (serializationStream = new System.IO.MemoryStream())
            {
                formatter.Serialize(serializationStream, valueToSerialize);
                serializationStream.Seek(0, System.IO.SeekOrigin.Begin);
                deserializedValue = formatter.Deserialize(serializationStream) as PersonPOCO;
            }

            return(deserializedValue);
        }
Beispiel #20
0
        public void GetState_WithInternalDateOfBirth210412_ReturnsInfoWithoutDateOfBirth()
        {
            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            bool          actual;
            bool          expected = false;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.SetDateOfBirth(new DateTime(2021, 04, 12, 16, 57, 53));

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetState(serializationInfo);
            actual = serializationInfo.Values.ContainsKey("DateOfBirth");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #21
0
        public void GetState_WithLastNameSmith_ReturnsInfoContainingSmith()
        {
            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            string            actual;
            string            expected = "Smith";
            IMobileObject     mobileObject;
            PersonPOCO        person = new PersonPOCO();

            person.LastName = "Smith";

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetState(serializationInfo);
            actual = serializationInfo.GetValue <string>("LastName");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #22
0
        public void GetState_WithMiddleNameMid_ReturnsInfoWithoutMiddleName()
        {
            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            bool          actual;
            bool          expected = false;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.SetMiddleName("Mid");

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetState(serializationInfo);
            actual = serializationInfo.Values.ContainsKey("MiddleName");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #23
0
        public void GetState_WithFieldMiddleNameMid_ReturnsInfoContainingMid()
        {
            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            string            actual;
            string            expected = "Mid";
            IMobileObject     mobileObject;
            PersonPOCO        person = new PersonPOCO();

            person.SetMiddleName("Mid");

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetState(serializationInfo);
            actual = serializationInfo.GetValue <string>("_middleName");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #24
0
        public void GetState_WithPersonId5_ReturnsInfoContaining5()
        {
            // Arrange
            SerializationInfo serializationInfo = new SerializationInfo();
            int           actual;
            int           expected = 5;
            IMobileObject mobileObject;
            PersonPOCO    person = new PersonPOCO();

            person.PersonId = 5;

            // Act
            mobileObject = (IMobileObject)person;
            mobileObject.GetState(serializationInfo);
            actual = serializationInfo.GetValue <int>("PersonId");

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #25
0
        public void SerializeThenDeserialize_WithIMobileObjectEmailAddressAatBdotCom_HasEmailAddressAatBdotCom()
        {
            // Arrange
            string     actual;
            string     expected = "*****@*****.**";
            PersonPOCO person   = new PersonPOCO();

            person.EmailAddress = new EmailAddress()
            {
                Email = "*****@*****.**"
            };
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson?.EmailAddress?.Email;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #26
0
        public void SerializeThenDeserialize_WithAutoSerializableAddressTownsville_HasAddressOfTownsville()
        {
            // Arrange
            string     actual;
            string     expected = "Townsville";
            PersonPOCO person   = new PersonPOCO();

            person.Address = new AddressPOCO()
            {
                Town = "Townsville"
            };
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson?.Address?.Town;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #27
0
        public void SerializeThenDeserialize_WithAutoSerializableAddress1HighStreet_HasAddressOf1HighStreet()
        {
            // Arrange
            string     actual;
            string     expected = "1 High Street";
            PersonPOCO person   = new PersonPOCO();

            person.Address = new AddressPOCO()
            {
                AddressLine1 = "1 High Street"
            };
            PersonPOCO deserializedPerson;

            // Act
            deserializedPerson = SerializeThenDeserialisePersonPOCO(person);
            actual             = deserializedPerson?.Address?.AddressLine1;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #28
0
        /// <summary>
        /// Serialize and then deserialize a PersonPOCO object, exercising the generated code
        /// associated with these two operations on the PersonPOCO test object
        /// </summary>
        /// <param name="valueToSerialize">The object to be serialized</param>
        /// <returns>The PersonPOCO that results from serialization then deserialization</returns>
        private PersonPOCO SerializeThenDeserialisePersonPOCO(PersonPOCO valueToSerialize)
        {
            IServiceCollection services = new ServiceCollection();

            services.AddCsla();
            var provider           = services.BuildServiceProvider();
            var ApplicationContext = provider.GetService <ApplicationContext>();

            System.IO.MemoryStream serializationStream;
            PersonPOCO             deserializedValue;
            MobileFormatter        formatter = new MobileFormatter(ApplicationContext);

            // Act
            using (serializationStream = new System.IO.MemoryStream())
            {
                formatter.Serialize(serializationStream, valueToSerialize);
                serializationStream.Seek(0, System.IO.SeekOrigin.Begin);
                deserializedValue = formatter.Deserialize(serializationStream) as PersonPOCO;
            }

            return(deserializedValue);
        }