Пример #1
0
        public void DecsRemoved([ValuesExcept(RecorderMode.Validation)] RecorderMode mode)
        {
            Dec.Config.TestParameters = new Dec.Config.UnitTestParameters {
                explicitTypes = new Type[] { typeof(StubDec) }, explicitStaticRefs = new Type[] { typeof(StaticReferenceDecs) }
            };

            var parser = new Dec.Parser();

            parser.AddString(@"
                <Decs>
                    <StubDec decName=""TestDecA"" />
                    <StubDec decName=""TestDecB"" />
                </Decs>");
            parser.Finish();

            var decs = new DecRecordable();

            decs.a = StaticReferenceDecs.TestDecA;
            decs.b = StaticReferenceDecs.TestDecB;

            Dec.Database.Delete(StaticReferenceDecs.TestDecA);

            var deserialized = DoRecorderRoundTrip(decs, mode, expectWriteErrors: true, expectReadErrors: true);

            Assert.IsNull(deserialized.a);
            Assert.AreEqual(decs.b, deserialized.b);
        }
Пример #2
0
        public void Decs([Values] RecorderMode mode)
        {
            Dec.Config.TestParameters = new Dec.Config.UnitTestParameters {
                explicitTypes = new Type[] { typeof(StubDec) }, explicitStaticRefs = new Type[] { typeof(StaticReferenceDecs) }
            };

            var parser = new Dec.Parser();

            parser.AddString(@"
                <Decs>
                    <StubDec decName=""TestDecA"" />
                    <StubDec decName=""TestDecB"" />
                </Decs>");
            parser.Finish();

            var decs = new DecRecordable();

            decs.a = StaticReferenceDecs.TestDecA;
            decs.b = StaticReferenceDecs.TestDecB;
            // leave empty empty, of course
            decs.forceEmpty = null;

            var deserialized = DoRecorderRoundTrip(decs, mode);

            Assert.AreEqual(decs.a, deserialized.a);
            Assert.AreEqual(decs.b, deserialized.b);
            Assert.AreEqual(decs.empty, deserialized.empty);
            Assert.AreEqual(decs.forceEmpty, deserialized.forceEmpty);
        }