public void log_an_object_sticks_the_ToString_value_of_the_object_on_to_the_description() { var loader = new StubPackageLoader("a", "b"); diagnostics.LogObject(loader, "registered at XYZ"); diagnostics.LogFor(loader).Description.ShouldEqual(loader.ToString()); }
public void log_an_object_creates_a_log_file() { var loader = new StubPackageLoader("a", "b"); diagnostics.LogObject(loader, "registered at XYZ"); diagnostics.LogFor(loader).Provenance.ShouldEqual("registered at XYZ"); }
public void log_execution_happy_path() { var loader = new StubPackageLoader("a", "b"); diagnostics.LogObject(loader, "registered at XYZ"); diagnostics.LogExecution(loader, () => Thread.Sleep(5)); var log = diagnostics.LogFor(loader); log.Success.ShouldBeTrue(); log.TimeInMilliseconds.ShouldBeGreaterThan(0); }
public void log_execution_that_throws_exception() { var loader = new StubPackageLoader("a", "b"); diagnostics.LogObject(loader, "registered at XYZ"); diagnostics.LogExecution(loader, () => { Thread.Sleep(5); throw new ApplicationException("not gonna happen"); }); var log = diagnostics.LogFor(loader); log.Success.ShouldBeFalse(); log.TimeInMilliseconds.ShouldBeGreaterThan(0); log.FullTraceText().ShouldContain("not gonna happen"); }
public void find_children() { var log = new PackageRegistryLog(); var loader1 = new StubPackageLoader(); var loader2 = new StubPackageLoader(); var loader3 = new StubPackageLoader(); var package1 = new StubPackage("1"); var package2 = new StubPackage("2"); var package3 = new StubPackage("3"); log.AddChild(loader1, loader2, loader3, package1, package2, package3); log.FindChildren<IPackageLoader>().ShouldHaveTheSameElementsAs(loader1, loader2, loader3); log.FindChildren<IPackageInfo>().ShouldHaveTheSameElementsAs(package1, package2, package3); }
public void SetUp() { diagnostics = new PackagingDiagnostics(); loader = new StubPackageLoader("a", "b"); package = new StubPackage("a"); diagnostics.LogPackage(package, loader); }