Beispiel #1
0
        public static MooCakesAndStuffWithEncodedGraphData From(TestDeepEqualityTester.MooCakesAndStuff moo)
        {
            var result = new MooCakesAndStuffWithEncodedGraphData();

            foreach (var propertyInfo in _props)
            {
                var match  = _moreProps.First(pi => pi.Name == propertyInfo.Name);
                var srcVal = match.GetValue(moo);
                propertyInfo.SetValue(result, srcVal);
            }
            result.EnkiEnki =
                $"data:application/json;base64,{Convert.ToBase64String(JsonConvert.SerializeObject(moo.WubWubs).AsBytes())}";
            return(result);
        }
Beispiel #2
0
                public void ShouldReturnTrueForCaseInWild()
                {
                    // Arrange
                    var original = GetRandom <MooCakesAndStuff>();
                    var encoded  = MooCakesAndStuffWithEncodedGraphData.From(original);

                    // Pre-Assert
                    PropertyAssert.AreDeepEqual(original.AuthorData, encoded.AuthorData);
                    PropertyAssert.AreDeepEqual(original.SomeOtherData, encoded.SomeOtherData);
                    // Act
                    var decoded = encoded.Decode();

                    // Assert
                    PropertyAssert.AreDeepEqual(decoded.AuthorData, original.AuthorData);
                    PropertyAssert.AreDeepEqual(decoded.SomeOtherData, original.SomeOtherData);
                    PropertyAssert.AreDeepEqual(decoded.WubWubs, original.WubWubs);
                }
Beispiel #3
0
                public void WildCaseExactReplica()
                {
                    // Arrange
                    var thang   = GetRandom <MooCakesAndStuff>();
                    var encoded = new MooCakesAndStuffWithEncodedGraphData();

                    thang.CopyPropertiesTo(encoded);
                    encoded.EnkiEnki = DataUriFor(thang.WubWubs);
                    encoded.WubWubs  = null;

                    // Pre-assert

                    // Act
                    var result = encoded.Decode();

                    // Assert
                    PropertyAssert.AreDeepEqual(result, thang);
                }