public void DeviceCRUDTest() { var beacon = new IBeaconDevice { Major = 13, Minor = 3, ProximityUUID = Guid.NewGuid().ToString(), Name = "bacon" }; var createdId = RunSync(() => _instance.CreateDeviceAsync(beacon)).Id; var device = _instance.Devices.FirstOrDefault(d => d.Id == createdId) as IBeaconDevice; Assert.NotNull(device); Assert.AreEqual(createdId, device.Id); Assert.AreEqual(beacon.Major, device.Major); Assert.AreEqual(beacon.Minor, device.Minor); Assert.AreEqual(beacon.ProximityUUID, device.ProximityUUID); RunSync(() => _instance.DeleteDeviceAsync(createdId)); var deletedDevice = _instance.Devices.FirstOrDefault(d => d.Id == createdId); Assert.IsNull(deletedDevice); }
public void GetMatchForOtherDevice() { var _beacon = new IBeaconDevice { Major = 13, Minor = 3, ProximityUUID = Guid.NewGuid().ToString(), Name = "bacon" }; var(beacon, _monitor) = RunSync(() => _instance.CreateDeviceAndStartListening(_beacon, MatchChannel.Polling)); RunSync(() => _instance.UpdateLocationAsync(new Location { Latitude = 54.414662, Longitude = 18.625498 }, beacon)); RunSync(_monitor.Start); List <Match> matches = null; _monitor.MatchReceived += (object sender, MatchReceivedEventArgs e) => matches = e.Matches; RunSync(() => _instance.CreateSubscriptionAsync(sub, beacon)); var testMatch = SetupTestMatch(); Match match = null; do { if (matches != null) { match = matches.Find(m => m.Subscription.DeviceId == beacon.Id); } } while (match == null); Assert.NotNull(match); }