private void InitServiceHelper() { SensusServiceHelper.ClearSingleton(); TestSensusServiceHelper serviceHelper = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => serviceHelper); }
public void FlashNotificationsEnabledTest() { var service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); service1.FlashNotificationsEnabled = true; var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial); Assert.AreEqual(service1.FlashNotificationsEnabled, service2.FlashNotificationsEnabled); service1.FlashNotificationsEnabled = false; serial = JsonConvert.SerializeObject(service1); SensusServiceHelper.ClearSingleton(); service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial); Assert.AreEqual(service1.FlashNotificationsEnabled, service2.FlashNotificationsEnabled); }
public void SerializeDeserializeWithEnumTest() { TestSensusServiceHelper service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); ActivityDatum datum = new ActivityDatum(DateTimeOffset.UtcNow, Activities.OnBicycle, ActivityPhase.Starting, ActivityState.Inactive, 1); Protocol protocol = new Protocol("test"); AnonymizedJsonContractResolver anonymizer = new AnonymizedJsonContractResolver(protocol); string serializedJSON = datum.GetJSON(anonymizer, false); ActivityDatum deserializedDatum = Datum.FromJSON(serializedJSON) as ActivityDatum; Assert.AreEqual(datum.BuildId, deserializedDatum.BuildId); Assert.AreEqual(datum.DeviceId, deserializedDatum.DeviceId); Assert.AreEqual(datum.Id, deserializedDatum.Id); Assert.AreEqual(datum.ProtocolId, deserializedDatum.ProtocolId); Assert.AreEqual(datum.Timestamp, deserializedDatum.Timestamp); Assert.AreEqual(datum.Activity, deserializedDatum.Activity); Assert.AreEqual(datum.Confidence, deserializedDatum.Confidence); Assert.AreEqual(datum.ActivityStarting, deserializedDatum.ActivityStarting); Assert.AreEqual(datum.Phase, deserializedDatum.Phase); Assert.AreEqual(datum.State, deserializedDatum.State); }
public void ScriptsDisplayDateTimeOrderTest() { var service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); ScriptRunner runner = new ScriptRunner("Test", new ScriptProbe()); Random random = new Random(); for (int i = 0; i < 50; ++i) { Script script = new Script(runner); script.ScheduledRunTime = new DateTimeOffset(2000, 1, 1, 0, 0, 0, TimeSpan.Zero).AddMinutes(random.Next(-100000, 100000)); service1.AddScript(script, RunMode.Multiple); } Script scriptMin = new Script(runner); scriptMin.ScheduledRunTime = DateTimeOffset.MinValue; service1.AddScript(scriptMin, RunMode.Multiple); Script scriptMax = new Script(runner); scriptMax.ScheduledRunTime = DateTimeOffset.MaxValue; service1.AddScript(scriptMax, RunMode.Multiple); for (int i = 1; i < service1.ScriptsToRun.Count; ++i) { Assert.True(service1.ScriptsToRun.ElementAt(i).DisplayDateTime >= service1.ScriptsToRun.ElementAt(i - 1).DisplayDateTime); } }
public async Task RegisteredTwoProtocolsTest() { SensusServiceHelper.Initialize(() => new TestSensusServiceHelper()); SensusServiceHelper service1 = SensusServiceHelper.Get(); service1.RegisteredProtocols.Clear(); await Protocol.CreateAsync("Test1"); await Protocol.CreateAsync("Test2"); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); TestSensusServiceHelper service2 = null; SensusContext.Current.MainThreadSynchronizer.ExecuteThreadSafe(() => { service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial, _jsonSerializerSettings); }); Assert.Equal(2, service1.RegisteredProtocols.Count); Assert.Equal(2, service2.RegisteredProtocols.Count); Assert.Equal(service1.RegisteredProtocols.Skip(0).Take(1).Single().Name, service2.RegisteredProtocols.Skip(0).Take(1).Single().Name); Assert.Equal(service1.RegisteredProtocols.Skip(1).Take(1).Single().Name, service2.RegisteredProtocols.Skip(1).Take(1).Single().Name); }
public void SerializeAndDeserializeNoExceptionTest() { var service1 = new TestSensusServiceHelper(); var serial1 = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); service1.RegisteredProtocols.Clear(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial1, _jsonSerializerSettings); Assert.AreEqual(0, service1.RegisteredProtocols.Count); Assert.AreEqual(0, service2.RegisteredProtocols.Count); }
public void PointsOfInterestTest() { var service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); service1.PointsOfInterest.Clear(); service1.PointsOfInterest.Add(new PointOfInterest("Test", "Test", null)); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial, _jsonSerializerSettings); Assert.AreEqual(service1.PointsOfInterest.Count, service2.PointsOfInterest.Count); Assert.AreEqual(service1.PointsOfInterest.Single().Name, service2.PointsOfInterest.Single().Name); }
public void RegisteredOneProtocolTest() { TestSensusServiceHelper service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); service1.RegisteredProtocols.Clear(); Protocol.Create("Test"); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial, _jsonSerializerSettings); Assert.AreEqual(service1.RegisteredProtocols.Count, service2.RegisteredProtocols.Count); Assert.AreEqual(service1.RegisteredProtocols.First().Name, service2.RegisteredProtocols.First().Name); }
public void ScriptsToRunTest() { var service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); service1.RunningProtocolIds.Clear(); service1.ScriptsToRun.Add(new Script(new ScriptRunner("Test", new ScriptProbe()))); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial); Assert.AreEqual(service1.ScriptsToRun.Count, service2.ScriptsToRun.Count); Assert.AreEqual(service1.ScriptsToRun.Single().Id, service2.ScriptsToRun.Single().Id); }
public void RunningProtocolIdsTest() { var service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); Protocol.Create("Test"); service1.RunningProtocolIds.Clear(); service1.RunningProtocolIds.Add(service1.RegisteredProtocols.Single().Id); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial, _jsonSerializerSettings); Assert.AreEqual(service1.RunningProtocolIds.Count, service2.RunningProtocolIds.Count); Assert.AreEqual(service1.RunningProtocolIds.Single(), service2.RunningProtocolIds.Single()); }
public void RegisteredTwoProtocolsTest() { TestSensusServiceHelper service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1, false); service1.RegisteredProtocols.Clear(); Protocol.Create("Test1"); Protocol.Create("Test2"); var serial = JsonConvert.SerializeObject(service1, _jsonSerializerSettings); SensusServiceHelper.ClearSingleton(); var service2 = JsonConvert.DeserializeObject <TestSensusServiceHelper>(serial, _jsonSerializerSettings); Assert.AreEqual(2, service1.RegisteredProtocols.Count); Assert.AreEqual(2, service2.RegisteredProtocols.Count); Assert.AreEqual(service1.RegisteredProtocols.Skip(0).Take(1).Single().Name, service2.RegisteredProtocols.Skip(0).Take(1).Single().Name); Assert.AreEqual(service1.RegisteredProtocols.Skip(1).Take(1).Single().Name, service2.RegisteredProtocols.Skip(1).Take(1).Single().Name); }
public void SerializeDeserializeTest() { TestSensusServiceHelper service1 = new TestSensusServiceHelper(); SensusServiceHelper.Initialize(() => service1); LocationDatum datum = new LocationDatum(DateTimeOffset.UtcNow, 0.5, 75.5, -35.5); Protocol protocol = new Protocol("test"); AnonymizedJsonContractResolver anonymizer = new AnonymizedJsonContractResolver(protocol); string serializedJSON = datum.GetJSON(anonymizer, false); LocationDatum deserializedDatum = Datum.FromJSON(serializedJSON) as LocationDatum; Assert.AreEqual(datum.Accuracy, deserializedDatum.Accuracy); Assert.AreEqual(datum.BuildId, deserializedDatum.BuildId); Assert.AreEqual(datum.DeviceId, deserializedDatum.DeviceId); Assert.AreEqual(datum.Id, deserializedDatum.Id); Assert.AreEqual(datum.Latitude, deserializedDatum.Latitude); Assert.AreEqual(datum.Longitude, deserializedDatum.Longitude); Assert.AreEqual(datum.ProtocolId, deserializedDatum.ProtocolId); Assert.AreEqual(datum.Timestamp, deserializedDatum.Timestamp); }