示例#1
0
        public void MarkModified()
        {
            TrackedAssembly assembly = new TrackedAssembly(_assemblyDefinition);

            Assert.That(assembly.IsModified, Is.False);

            assembly.MarkModified();

            Assert.That(assembly.IsModified, Is.True);
        }
示例#2
0
        public void MarkModified_AlsoMarksReverseReference()
        {
            TrackedAssembly assembly  = new TrackedAssembly(_assemblyDefinition);
            TrackedAssembly assembly2 = new TrackedAssembly(_assemblyDefinition);

            assembly.AddReverseReference(assembly2);
            Assert.That(assembly.IsModified, Is.False);
            Assert.That(assembly2.IsModified, Is.False);

            assembly.MarkModified();

            Assert.That(assembly.IsModified, Is.True);
            Assert.That(assembly2.IsModified, Is.True);
        }
示例#3
0
        public void MarkModified_CanHandleCyclicReferences()
        {
            TrackedAssembly assembly  = new TrackedAssembly(_assemblyDefinition);
            TrackedAssembly assembly2 = new TrackedAssembly(_assemblyDefinition);
            TrackedAssembly assembly3 = new TrackedAssembly(_assemblyDefinition);

            assembly.AddReverseReference(assembly2);
            assembly2.AddReverseReference(assembly3);
            assembly3.AddReverseReference(assembly);
            Assert.That(assembly.IsModified, Is.False);
            Assert.That(assembly2.IsModified, Is.False);
            Assert.That(assembly3.IsModified, Is.False);

            assembly.MarkModified();

            Assert.That(assembly.IsModified, Is.True);
            Assert.That(assembly2.IsModified, Is.True);
            Assert.That(assembly3.IsModified, Is.True);
        }