public void Dispose() { var handler = Stopped; if (handler != null) { handler(); } Configuration.Stop(); // Disconnect from events we're listening to ServiceManager.SourceManager.ActiveSourceChanged -= OnActiveSourceChanged; Application.ShutdownRequested -= OnShutdownRequested; HyenaSqliteCommand.CommandExecuted -= OnSqliteCommandExecuted; ServiceManager.PlaybackController.SourceChanged -= OnPlaybackSourceChanged; ServiceManager.PlaybackController.ShuffleModeChanged -= OnShuffleModeChanged; ServiceManager.PlaybackController.RepeatModeChanged -= OnRepeatModeChanged; // Delete any collected data metrics.Store.Clear(); metrics.Dispose(); metrics = null; // Forget the user's unique id DatabaseConfigurationClient.Client.Set <string> (id_key, ""); }
private BansheeMetrics() { banshee_metrics = this; string unique_userid = DatabaseConfigurationClient.Client.Get <string> (id_key, null); if (String.IsNullOrEmpty(unique_userid)) { unique_userid = System.Guid.NewGuid().ToString(); DatabaseConfigurationClient.Client.Set <string> (id_key, unique_userid); } metrics = new MetricsCollection(unique_userid, new DbSampleStore( ServiceManager.DbConnection, "AnonymousUsageData" )); Configuration.Start(); if (Application.ActiveClient != null && Application.ActiveClient.IsStarted) { Initialize(null); } else { Application.ClientStarted += Initialize; } }
public void MetricsCollection() { string id = "myuniqueid"; var metrics = new MetricsCollection(id, new MemorySampleStore()); Assert.AreEqual("myuniqueid", metrics.AnonymousUserId); metrics.AddDefaults(); Assert.IsTrue(metrics.Count > 0); string metrics_str = metrics.ToJsonString(); Assert.IsTrue(metrics_str.Contains("\"ID\":\"myuniqueid\"")); // tests/Makefile.am runs the tests with Locale=it_IT Assert.IsTrue(metrics_str.Contains("it-IT")); // Make sure DateTime samples are saved as invariant strings var now = DateTime.Now; var time_metric = metrics.Add("Foo", now); Assert.AreEqual(Hyena.DateTimeUtil.ToInvariantString(now), metrics.Store.GetFor(time_metric).First().Value); // Make sure we can read the JSON back in var ds = new Json.Deserializer(); ds.SetInput(metrics.ToJsonString()); var json_obj = ds.Deserialize() as JsonObject; Assert.AreEqual(id, json_obj["ID"]); Assert.IsTrue(json_obj["Metrics"] is JsonObject); }
public void MetricsCollection () { string id = "myuniqueid"; var metrics = new MetricsCollection (id, new MemorySampleStore ()); Assert.AreEqual ("myuniqueid", metrics.AnonymousUserId); metrics.AddDefaults (); Assert.IsTrue (metrics.Count > 0); string metrics_str = metrics.ToJsonString (); Assert.IsTrue (metrics_str.Contains ("\"ID\":\"myuniqueid\"")); // tests/Makefile.am runs the tests with Locale=it_IT Assert.IsTrue (metrics_str.Contains ("it-IT")); // Make sure DateTime samples are saved as invariant strings var now = DateTime.Now; var time_metric = metrics.Add ("Foo", now); Assert.AreEqual (Hyena.DateTimeUtil.ToInvariantString (now), metrics.Store.GetFor (time_metric).First ().Value); // Make sure we can read the JSON back in var ds = new Json.Deserializer (); ds.SetInput (metrics.ToJsonString ()); var json_obj = ds.Deserialize () as JsonObject; Assert.AreEqual (id, json_obj["ID"]); Assert.IsTrue (json_obj["Metrics"] is JsonObject); }
public HttpPoster(string url, MetricsCollection metrics) { this.url = url; this.metrics = metrics; // Sending the Expect header causes lighttpd to fail with a 417 header. ServicePointManager.Expect100Continue = false; }
public void RequestDataShouldReturnValidMetricsCollector() { var requestData = new RequestData(); var metricsCollection = new MetricsCollection(); requestData.MetricsCollection = metricsCollection; Assert.AreEqual(metricsCollection, requestData.MetricsCollection); }
private BansheeMetrics() { banshee_metrics = this; string unique_userid = DatabaseConfigurationClient.Client.Get<string> (id_key, null); if (String.IsNullOrEmpty (unique_userid)) { unique_userid = System.Guid.NewGuid ().ToString (); DatabaseConfigurationClient.Client.Set<string> (id_key, unique_userid); } metrics = new MetricsCollection (unique_userid, new DbSampleStore ( ServiceManager.DbConnection, "AnonymousUsageData" )); Configuration.Start (); if (Application.ActiveClient != null && Application.ActiveClient.IsStarted) { Initialize (null); } else { Application.ClientStarted += Initialize; } }
public void DiscoverTestsShouldSendMetricsOnDiscoveryComplete() { var metricsCollector = new MetricsCollection(); metricsCollector.Add("DummyMessage", "DummyValue"); this.mockRequestData.Setup(rd => rd.MetricsCollection).Returns(metricsCollector); DiscoveryCompleteEventArgs receivedDiscoveryCompleteEventArgs = null; TestPluginCacheHelper.SetupMockExtensions( new string[] { typeof(DiscovererEnumeratorTests).GetTypeInfo().Assembly.Location }, () => { }); var sources = new List <string> { typeof(DiscoveryManagerTests).GetTypeInfo().Assembly.Location }; var mockLogger = new Mock <ITestDiscoveryEventsHandler2>(); var criteria = new DiscoveryCriteria(sources, 1, null); mockLogger.Setup(ml => ml.HandleDiscoveryComplete(It.IsAny <DiscoveryCompleteEventArgs>(), It.IsAny <IEnumerable <TestCase> >())) .Callback( (DiscoveryCompleteEventArgs complete, IEnumerable <TestCase> tests) => { receivedDiscoveryCompleteEventArgs = complete; }); // Act. this.discoveryManager.DiscoverTests(criteria, mockLogger.Object); // Assert Assert.IsNotNull(receivedDiscoveryCompleteEventArgs.Metrics); Assert.IsTrue(receivedDiscoveryCompleteEventArgs.Metrics.Any()); Assert.IsTrue(receivedDiscoveryCompleteEventArgs.Metrics.ContainsKey("DummyMessage")); }
public void Dispose () { var handler = Stopped; if (handler != null) { handler (); } Configuration.Stop (); // Disconnect from events we're listening to ServiceManager.SourceManager.ActiveSourceChanged -= OnActiveSourceChanged; Application.ShutdownRequested -= OnShutdownRequested; HyenaSqliteCommand.CommandExecuted -= OnSqliteCommandExecuted; ServiceManager.PlaybackController.SourceChanged -= OnPlaybackSourceChanged; ServiceManager.PlaybackController.ShuffleModeChanged -= OnShuffleModeChanged; ServiceManager.PlaybackController.RepeatModeChanged -= OnRepeatModeChanged; // Delete any collected data metrics.Store.Clear (); metrics.Dispose (); metrics = null; // Forget the user's unique id DatabaseConfigurationClient.Client.Set<string> (id_key, ""); }
public HttpPoster (string url, MetricsCollection metrics) { this.url = url; this.metrics = metrics; }
public override void CreateMetric(BenchmarkMetrics metrics) { _metrics = metrics.GetMetricsCollection("COLLECTOR"); _metrics.AddMetrics(new AvgMetric(MetricName.PackageData)); _metrics.AddMetrics(new AvgMetric(MetricName.Single)); }