feat(cordis): 完成阶段5访问介导与诊断
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
@@ -241,6 +242,16 @@ namespace ShrinkModFramework.Tests
|
||||
CopyFixture("ExternalFixture.Mod.V3.dll.bytes", target);
|
||||
ShrinkModLoader.LoadNewExternalMods(settings);
|
||||
AssertExternalFixture("3.0.0", "v3");
|
||||
|
||||
settings.externalAssemblyRevisionSoftLimit = 2;
|
||||
var diagnostics = ShrinkModDiagnostics.CaptureExternalAssemblies(settings);
|
||||
Assert.AreEqual(1, diagnostics.CurrentRevisionCount,
|
||||
"同一路径只有最终有效 revision 是 current");
|
||||
Assert.GreaterOrEqual(diagnostics.ResidentRevisionCount, 3,
|
||||
"v1、失败但已加载的 v2、v3 Assembly 在 Mono 下都会常驻");
|
||||
Assert.Greater(diagnostics.EstimatedResidentBytes, 0L);
|
||||
Assert.IsTrue(diagnostics.IsSoftLimitExceeded);
|
||||
Assert.AreEqual(1, diagnostics.ResidentRevisions.Count(item => item.IsCurrent));
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user