public Nfs3WeakCacheConsistency(XdrDataReader reader)
 {
     if (reader.ReadBool())
     {
         Before = new Nfs3WeakCacheConsistencyAttr(reader);
     }
     if (reader.ReadBool())
     {
         After = new Nfs3FileAttributes(reader);
     }
 }
 public Nfs3WeakCacheConsistency(XdrDataReader reader)
 {
     if (reader.ReadBool())
     {
         Before = new Nfs3WeakCacheConsistencyAttr(reader);
     }
     if (reader.ReadBool())
     {
         After = new Nfs3FileAttributes(reader);
     }
 }
        public void RoundTripTest()
        {
            Nfs3WeakCacheConsistencyAttr attr = new Nfs3WeakCacheConsistencyAttr()
            {
                ChangeTime = new Nfs3FileTime(new DateTime(2017, 1, 1)),
                ModifyTime = new Nfs3FileTime(new DateTime(2017, 1, 2)),
                Size       = 3
            };

            Nfs3WeakCacheConsistencyAttr clone = null;

            using (MemoryStream stream = new MemoryStream())
            {
                XdrDataWriter writer = new XdrDataWriter(stream);
                attr.Write(writer);

                stream.Position = 0;
                XdrDataReader reader = new XdrDataReader(stream);
                clone = new Nfs3WeakCacheConsistencyAttr(reader);
            }

            Assert.Equal(attr, clone);
        }