Пример #1
0
        private void TestLoadAndSerializeSucceeds(string baseName)
        {
            var repository = new ModelRepository();
            var metamodel  = repository.Resolve($"{baseName}.nmf");
            var serializer = new DynamicModelSerializer(metamodel.RootElements[0] as INamespace);
            var instance   = serializer.Deserialize($"{baseName}.{baseName}") as IModelElement;

            var originalHash = Convert.ToBase64String(ModelHasher.CreateHash(instance));

            using (var ms = new MemoryStream())
            {
                serializer.Serialize(instance, ms);
                ms.Position = 0;
                var newInstance = serializer.Deserialize(ms) as IModelElement;
                var newHash     = Convert.ToBase64String(ModelHasher.CreateHash(newInstance));

                Assert.AreEqual(originalHash, newHash);
            }
        }