public static void JsonSerializeStringToBytes()
        {
            // Arrange
            var jsonSerializer = new NaosJsonSerializer <GenericDiscoveryJsonConfiguration <string> >();
            var input          = A.Dummy <string>();

            // Act
            var actualJsonBytes     = jsonSerializer.SerializeToBytes(input);
            var actualJsonFromBytes = jsonSerializer.Deserialize <string>(actualJsonBytes);

            // Assert
            actualJsonFromBytes.Should().Be(input);
        }
Beispiel #2
0
        public static void Deserialize___Should_return_equivalent_object_of_type_CalendarDay___When_an_object_of_that_type_is_serialized_to_json_and_deserialized_as_abstract_type()
        {
            // Arrange
            var serializer           = new NaosJsonSerializer();
            var expectedUnitOfTime   = A.Dummy <CalendarDay>();
            var serializedJsonBytes  = serializer.SerializeToBytes(expectedUnitOfTime);
            var serializedJsonString = serializer.SerializeToBytes(expectedUnitOfTime);

            // Act
            var systemUnderTest1a = serializer.Deserialize <UnitOfTime>(serializedJsonBytes) as CalendarDay;
            var systemUnderTest1b = serializer.Deserialize <CalendarUnitOfTime>(serializedJsonBytes) as CalendarDay;

            var systemUnderTest2a = serializer.Deserialize <UnitOfTime>(serializedJsonString) as CalendarDay;
            var systemUnderTest2b = serializer.Deserialize <CalendarUnitOfTime>(serializedJsonString) as CalendarDay;

            // Assert
            systemUnderTest1a.Should().Be(expectedUnitOfTime);
            systemUnderTest1b.Should().Be(expectedUnitOfTime);

            systemUnderTest2a.Should().Be(expectedUnitOfTime);
            systemUnderTest2b.Should().Be(expectedUnitOfTime);
        }
Beispiel #3
0
        public static void Deserialize___Should_return_object_of_type_CalendarYearAccountingPeriodSystem___When_an_object_of_that_type_is_serialized_to_json_and_deserialized_as_AccountingPeriodSystem()
        {
            // Arrange
            var serializer = new NaosJsonSerializer();
            var originalAccountingPeriodSystem = new CalendarYearAccountingPeriodSystem();
            var serializedJsonBytes            = serializer.SerializeToBytes(originalAccountingPeriodSystem);
            var serializedJsonString           = serializer.SerializeToString(originalAccountingPeriodSystem);

            // Act
            var systemUnderTest1 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonBytes);
            var systemUnderTest2 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonString);

            // Assert
            systemUnderTest1.Should().BeOfType <CalendarYearAccountingPeriodSystem>();
            systemUnderTest2.Should().BeOfType <CalendarYearAccountingPeriodSystem>();
        }
Beispiel #4
0
        public static void Deserialize___Should_return_equivalent_object_of_type_FiscalYearAccountingPeriodSystem___When_an_object_of_that_type_is_serialized_to_json_and_deserialized_as_AccountingPeriodSystem()
        {
            // Arrange
            var serializer = new NaosJsonSerializer();
            var expectedAccountingPeriodSystem = new FiscalYearAccountingPeriodSystem(A.Dummy <MonthOfYear>().ThatIsNot(MonthOfYear.December));
            var serializedJsonBytes            = serializer.SerializeToBytes(expectedAccountingPeriodSystem);
            var serializedJsonString           = serializer.SerializeToString(expectedAccountingPeriodSystem);

            // Act
            var systemUnderTest1 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonBytes) as FiscalYearAccountingPeriodSystem;
            var systemUnderTest2 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonString) as FiscalYearAccountingPeriodSystem;

            // Assert
            systemUnderTest1.Should().NotBeNull();
            systemUnderTest1.LastMonthInFiscalYear.Should().Be(expectedAccountingPeriodSystem.LastMonthInFiscalYear);

            systemUnderTest2.Should().NotBeNull();
            systemUnderTest2.LastMonthInFiscalYear.Should().Be(expectedAccountingPeriodSystem.LastMonthInFiscalYear);
        }
        public static void JsonCanSerializeNull()
        {
            // Arrange
            var serializer = new NaosJsonSerializer();

            // Act
            var actualNullString     = serializer.SerializeToString(null);
            var actualNullBytes      = serializer.SerializeToBytes(null);
            var actualString         = serializer.SerializeToString(SerializationConfigurationBase.NullSerializedStringValue);
            var actualNullFromString = serializer.Deserialize <NullableObject>(actualNullString);
            var actualNullFromBytes  = serializer.Deserialize <NullableObject>(actualNullBytes);
            var actual = serializer.Deserialize <string>(actualString);

            // Assert
            actualNullString.Should().Be(SerializationConfigurationBase.NullSerializedStringValue);
            actualNullFromString.Should().BeNull();
            actualNullFromBytes.Should().BeNull();
            actualString.Should().NotBe(SerializationConfigurationBase.NullSerializedStringValue);
            actual.Should().Be(SerializationConfigurationBase.NullSerializedStringValue);
        }
Beispiel #6
0
        public static void Deserialize___Should_return_equivalent_object_of_type_FiftyTwoFiftyThreeWeekAccountingPeriodSystem___When_an_object_of_that_type_is_serialized_to_json_and_deserialized_as_AccountingPeriodSystem()
        {
            // Arrange
            var serializer = new NaosJsonSerializer();
            var expectedAccountingPeriodSystem = A.Dummy <FiftyTwoFiftyThreeWeekAccountingPeriodSystem>();
            var serializedJsonBytes            = serializer.SerializeToBytes(expectedAccountingPeriodSystem);
            var serializedJsonString           = serializer.SerializeToString(expectedAccountingPeriodSystem);

            // Act
            var systemUnderTest1 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonBytes) as FiftyTwoFiftyThreeWeekAccountingPeriodSystem;
            var systemUnderTest2 = serializer.Deserialize <AccountingPeriodSystem>(serializedJsonString) as FiftyTwoFiftyThreeWeekAccountingPeriodSystem;

            // Assert
            systemUnderTest1.Should().NotBeNull();
            systemUnderTest1.AnchorMonth.Should().Be(expectedAccountingPeriodSystem.AnchorMonth);
            systemUnderTest1.FiftyTwoFiftyThreeWeekMethodology.Should().Be(expectedAccountingPeriodSystem.FiftyTwoFiftyThreeWeekMethodology);
            systemUnderTest1.LastDayOfWeekInAccountingYear.Should().Be(expectedAccountingPeriodSystem.LastDayOfWeekInAccountingYear);

            systemUnderTest2.Should().NotBeNull();
            systemUnderTest2.AnchorMonth.Should().Be(expectedAccountingPeriodSystem.AnchorMonth);
            systemUnderTest2.FiftyTwoFiftyThreeWeekMethodology.Should().Be(expectedAccountingPeriodSystem.FiftyTwoFiftyThreeWeekMethodology);
            systemUnderTest2.LastDayOfWeekInAccountingYear.Should().Be(expectedAccountingPeriodSystem.LastDayOfWeekInAccountingYear);
        }