public void ProjectTryResolveTest() { var man = new FakeProjectManager(); var project1 = new MyFakeTypeProject(typeof(string)); var project2 = new MyFakeNameProject(typeof(string), "string"); man.Register(project1); man.Register(project2); var result3 = man.TryResolve(typeof(string), out var project3); var result4 = man.TryResolve(typeof(string), "string", out var project4); result3.ShouldBeTrue(); result4.ShouldBeTrue(); project3.ShouldNotBeNull(); project4.ShouldNotBeNull(); project3.Class.ShouldBe(ProjectClass.Typed); project4.Class.ShouldBe(ProjectClass.Named); project3.Type.ShouldBe(typeof(string)); project4.Type.ShouldBe(typeof(string)); project3.Name.ShouldBe("System.String"); project4.Name.ShouldBe("string"); }
public void ProjectTryResolveWithUnregisterTypeTest() { var man = new FakeProjectManager(); var project1 = new MyFakeTypeProject(typeof(string)); var project2 = new MyFakeNameProject(typeof(string), "string"); man.Register(project1); man.Register(project2); var result3 = man.TryResolve(typeof(int), out var project3); var result4 = man.TryResolve(typeof(int), "int", out var project4); result3.ShouldBeFalse(); result4.ShouldBeFalse(); project3.ShouldBeNull(); project4.ShouldBeNull(); }