diff --git a/Covid19Radar/Covid19Radar.Android/MainApplication.cs b/Covid19Radar/Covid19Radar.Android/MainApplication.cs index 9de756f24..ed54799d8 100644 --- a/Covid19Radar/Covid19Radar.Android/MainApplication.cs +++ b/Covid19Radar/Covid19Radar.Android/MainApplication.cs @@ -39,6 +39,12 @@ private void RegisterPlatformTypes(IContainer container) container.Register(Reuse.Singleton); container.Register(Reuse.Singleton); container.Register(Reuse.Singleton); + +#if USE_MOCK + container.Register(Reuse.Singleton); +#else + container.Register(Reuse.Singleton); +#endif } } } diff --git a/Covid19Radar/Covid19Radar.Android/Services/DeviceCheckService.cs b/Covid19Radar/Covid19Radar.Android/Services/DeviceCheckService.cs index 19f2c64f6..4f63a960a 100644 --- a/Covid19Radar/Covid19Radar.Android/Services/DeviceCheckService.cs +++ b/Covid19Radar/Covid19Radar.Android/Services/DeviceCheckService.cs @@ -2,25 +2,11 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using System.Threading.Tasks; -using Android.App; -using Android.Content; -using Android.OS; -using Android.Runtime; -using Android.Views; -using Android.Widget; using Covid19Radar.Services; -using Covid19Radar.Droid.Services; -using Xamarin.Forms; using Covid19Radar.Model; -using Covid19Radar.Common; using Android.Gms.SafetyNet; -[assembly: Dependency(typeof(DeviceCheckService))] namespace Covid19Radar.Droid.Services { public class DeviceCheckService : IDeviceVerifier diff --git a/Covid19Radar/Covid19Radar.iOS/AppDelegate.cs b/Covid19Radar/Covid19Radar.iOS/AppDelegate.cs index 434a87efd..c9dfd92ac 100644 --- a/Covid19Radar/Covid19Radar.iOS/AppDelegate.cs +++ b/Covid19Radar/Covid19Radar.iOS/AppDelegate.cs @@ -68,6 +68,12 @@ private void RegisterPlatformTypes(IContainer container) container.Register(Reuse.Singleton); container.Register(Reuse.Singleton); container.Register(Reuse.Singleton); + +#if USE_MOCK + container.Register(Reuse.Singleton); +#else + container.Register(Reuse.Singleton); +#endif } } } diff --git a/Covid19Radar/Covid19Radar.iOS/Services/DeviceCheckService.cs b/Covid19Radar/Covid19Radar.iOS/Services/DeviceCheckService.cs index 9894dba3a..d031e1ac5 100644 --- a/Covid19Radar/Covid19Radar.iOS/Services/DeviceCheckService.cs +++ b/Covid19Radar/Covid19Radar.iOS/Services/DeviceCheckService.cs @@ -5,11 +5,8 @@ using System; using System.Threading.Tasks; using Covid19Radar.Services; -using Covid19Radar.iOS.Services; -using Xamarin.Forms; using Covid19Radar.Model; -[assembly: Dependency(typeof(DeviceCheckService))] namespace Covid19Radar.iOS.Services { public class DeviceCheckService : IDeviceVerifier diff --git a/Covid19Radar/Covid19Radar/Services/DeviceVerifierMock.cs b/Covid19Radar/Covid19Radar/Services/DeviceVerifierMock.cs new file mode 100644 index 000000000..385d7610a --- /dev/null +++ b/Covid19Radar/Covid19Radar/Services/DeviceVerifierMock.cs @@ -0,0 +1,15 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ + +using System.Threading.Tasks; +using Covid19Radar.Model; + +namespace Covid19Radar.Services +{ + public class DeviceVerifierMock : IDeviceVerifier + { + public Task VerifyAsync(DiagnosisSubmissionParameter submission) + => Task.Run(() => "DUMMY RESPONSE"); + } +} diff --git a/Covid19Radar/Covid19Radar/Services/ExposureNotificationHandler.cs b/Covid19Radar/Covid19Radar/Services/ExposureNotificationHandler.cs index a0a669ecb..854c0d5cb 100644 --- a/Covid19Radar/Covid19Radar/Services/ExposureNotificationHandler.cs +++ b/Covid19Radar/Covid19Radar/Services/ExposureNotificationHandler.cs @@ -18,7 +18,6 @@ using Covid19Radar.Services.Logs; using Xamarin.Essentials; using Xamarin.ExposureNotifications; -using Xamarin.Forms; namespace Covid19Radar.Services { @@ -29,6 +28,7 @@ public class ExposureNotificationHandler : IExposureNotificationHandler private IHttpDataService HttpDataService => ServiceLocator.Current.GetInstance(); private IExposureNotificationService ExposureNotificationService => ServiceLocator.Current.GetInstance(); private IUserDataService UserDataService => ServiceLocator.Current.GetInstance(); + private readonly IDeviceVerifier DeviceVerifier = ServiceLocator.Current.GetInstance(); public ExposureNotificationHandler() { @@ -386,11 +386,7 @@ private async Task CreateSubmissionAsync(IEnumerab Padding = padding }; - // See if we can add the device verification - if (DependencyService.Get() is IDeviceVerifier verifier) - { - submission.DeviceVerificationPayload = await verifier?.VerifyAsync(submission); - } + submission.DeviceVerificationPayload = await DeviceVerifier.VerifyAsync(submission); loggerService.Info($"DeviceVerificationPayload is {(string.IsNullOrEmpty(submission.DeviceVerificationPayload) ? "null or empty" : "set")}."); loggerService.Info($"VerificationPayload is {(string.IsNullOrEmpty(submission.VerificationPayload) ? "null or empty" : "set")}.");