public async Task NetworkObserver_ObserveAsync_Successful_Observer_IsHealthy_NoWarningsOrErrors() { if (!this.isSFRuntimePresentOnTestMachine) { return; } var startDateTime = DateTime.Now; ObserverManager.FabricServiceContext = this.context; ObserverManager.FabricClientInstance = new FabricClient(FabricClientRole.User); ObserverManager.TelemetryEnabled = false; ObserverManager.EtwEnabled = false; var obs = new NetworkObserver { IsTestRun = true, }; await obs.ObserveAsync(this.token).ConfigureAwait(true); // observer ran to completion with no errors... Assert.IsTrue(obs.LastRunDateTime > startDateTime); // observer detected no error conditions... Assert.IsFalse(obs.HasActiveFabricErrorOrWarning); // observer did not have any internal errors during run... Assert.IsFalse(obs.IsUnhealthy); var outputFilePath = $@"{Environment.CurrentDirectory}\observer_logs\NetInfo.txt"; // Output log file was created successfully during test... Assert.IsTrue(File.Exists(outputFilePath) && File.GetLastWriteTime(outputFilePath) > startDateTime && File.GetLastWriteTime(outputFilePath) < obs.LastRunDateTime); // Output file is not empty... Assert.IsTrue(File.ReadAllLines(outputFilePath).Length > 0); obs.Dispose(); ObserverManager.FabricClientInstance.Dispose(); }