mirror of
https://dev.azure.com/TeilRad/sharee.bike%20App/_git/Code
synced 2025-04-22 04:46:30 +02:00
Version 3.0.255
This commit is contained in:
parent
db9c288584
commit
5a26bf273b
1495 changed files with 159465 additions and 5060 deletions
|
@ -21,6 +21,7 @@ using TINK.ViewModel.Settings;
|
|||
using TINK.Model.Services.Geolocation;
|
||||
using TINK.Services;
|
||||
using NSubstitute;
|
||||
using TINK.Services.Permissions;
|
||||
|
||||
namespace TestTINKLib.Fixtures.UseCases.Startup
|
||||
{
|
||||
|
@ -56,12 +57,15 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
locationPermission,
|
||||
Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
viewService,
|
||||
navigationService);
|
||||
|
@ -128,10 +132,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
@ -197,10 +204,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
@ -261,10 +271,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
@ -325,10 +338,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
@ -403,10 +419,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
@ -484,10 +503,13 @@ namespace TestTINKLib.Fixtures.UseCases.Startup
|
|||
|
||||
var viewService = MockRepository.GenerateStub<IViewService>();
|
||||
var navigationService = MockRepository.GenerateStub<INavigation>();
|
||||
var locationPermission = Substitute.For<ILocationPermission>();
|
||||
|
||||
locationPermission.CheckStatusAsync().Returns(Status.Granted);
|
||||
|
||||
var viewModel = new MapPageViewModel(
|
||||
tinkApp,
|
||||
new PermissionsMock(),
|
||||
locationPermission,
|
||||
NSubstitute.Substitute.For<Plugin.BLE.Abstractions.Contracts.IBluetoothLE>(),
|
||||
NSubstitute.Substitute.For<IGeolocation>(),
|
||||
(mapspan) => { },
|
||||
|
|
|
@ -17,14 +17,13 @@ using TINK.Repository;
|
|||
using static TINK.Repository.CopriCallsMemory;
|
||||
using TINK.ViewModel.Map;
|
||||
using TINK.ViewModel.Settings;
|
||||
using Plugin.Permissions.Abstractions;
|
||||
using Plugin.BLE.Abstractions.Contracts;
|
||||
using TINK.Services.BluetoothLock;
|
||||
using NSubstitute;
|
||||
using TINK.ViewModel.BikesAtStation;
|
||||
using Xamarin.Forms;
|
||||
using TINK.Services.BluetoothLock.Tdo;
|
||||
using Plugin.Permissions;
|
||||
using TINK.Services.Permissions;
|
||||
using TINK.Model.Services.Geolocation;
|
||||
using NSubstitute.ExceptionExtensions;
|
||||
using TINK.Services;
|
||||
|
@ -42,7 +41,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
var tinkApp = new TinkApp(
|
||||
|
@ -61,7 +60,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -114,7 +113,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
var tinkApp = new TinkApp(
|
||||
|
@ -133,7 +132,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -178,11 +177,11 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(true); // Fake gps to be on
|
||||
bluetooth.State.Returns(BluetoothState.On); // Fake bluetooth to be on
|
||||
|
||||
|
@ -210,7 +209,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -238,7 +237,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
var btDummy = bluetooth.Received().State;
|
||||
locksService.GetLocksStateAsync(Arg.Any<IEnumerable<LockInfoAuthTdo>>(), Arg.Any<TimeSpan>());
|
||||
|
@ -278,11 +277,11 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
// Fake location permissions not to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Denied));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Denied));
|
||||
|
||||
// Fake anwser on question whether to open permissions dialog
|
||||
viewService.DisplayAlert(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>()).Returns(true);
|
||||
|
@ -311,7 +310,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -339,9 +338,9 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
permissions.RequestPermissionAsync<LocationPermission>(); // Ask user from permissions.
|
||||
permissions.RequestAsync(); // Ask user from permissions.
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
"Please allow location sharing so that bike lock/locks can be managed.\r\nOpen sharing dialog?",
|
||||
|
@ -384,11 +383,11 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
// Fake location permissions not to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Denied));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Denied));
|
||||
permissions.OpenAppSettings().Throws<Exception>(); // Ensures that method is not called and fixture succeeds.
|
||||
|
||||
// Fake anwser on question whether to open permissions dialog
|
||||
|
@ -418,7 +417,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -446,9 +445,9 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
permissions.RequestPermissionAsync<LocationPermission>(); // Ask user from permissions.
|
||||
permissions.RequestAsync(); // Ask user from permissions.
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
"Please allow location sharing so that bike lock/locks can be managed.\r\nOpen sharing dialog?",
|
||||
|
@ -490,11 +489,11 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(false); // Fake gps to be off
|
||||
bluetooth.State.Returns(BluetoothState.On); // Fake bluetooth to be on
|
||||
|
||||
|
@ -522,7 +521,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -550,7 +549,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
|
@ -592,11 +591,11 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(true); // Fake gps to be on
|
||||
bluetooth.State.Returns(BluetoothState.Off); // // Fake bluetooth to be off
|
||||
|
||||
|
@ -624,7 +623,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -652,7 +651,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
var btDummy = bluetooth.Received().State;
|
||||
viewService.DisplayAlert(
|
||||
|
@ -694,7 +693,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
@ -765,7 +764,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
@ -833,7 +832,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
@ -910,7 +909,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
@ -982,7 +981,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
@ -1068,7 +1067,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
bluetooth.State.Returns(BluetoothState.On);
|
||||
|
|
|
@ -16,13 +16,12 @@ using TINK.Repository;
|
|||
using static TINK.Repository.CopriCallsMemory;
|
||||
using TINK.ViewModel.Map;
|
||||
using TINK.ViewModel.Settings;
|
||||
using Plugin.Permissions.Abstractions;
|
||||
using Plugin.BLE.Abstractions.Contracts;
|
||||
using TINK.Services.BluetoothLock;
|
||||
using NSubstitute;
|
||||
using TINK.Services.BluetoothLock.Tdo;
|
||||
using TINK.ViewModel.MyBikes;
|
||||
using Plugin.Permissions;
|
||||
using TINK.Services.Permissions;
|
||||
using Xamarin.Forms;
|
||||
using TINK.Model.Services.Geolocation;
|
||||
using NSubstitute.ExceptionExtensions;
|
||||
|
@ -41,14 +40,14 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
timeOut.MultiConnect.Returns(new TimeSpan(0));
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(true); // Fake gps to be on
|
||||
bluetooth.State.Returns(BluetoothState.On); // Fake bluetooth to be on
|
||||
|
||||
|
@ -76,7 +75,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -102,7 +101,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
var btDummy = bluetooth.Received().State;
|
||||
locksService.GetLocksStateAsync(Arg.Any<IEnumerable<LockInfoAuthTdo>>(), Arg.Any<TimeSpan>());
|
||||
|
@ -132,14 +131,14 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
timeOut.MultiConnect.Returns(new TimeSpan(0));
|
||||
|
||||
// Fake location permissions not to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Denied));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Denied));
|
||||
|
||||
// Fake anwser on question whether to open permissions dialog
|
||||
viewService.DisplayAlert(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>()).Returns(true);
|
||||
|
@ -167,7 +166,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -193,9 +192,9 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
permissions.RequestPermissionAsync<LocationPermission>(); // Ask user from permissions.
|
||||
permissions.RequestAsync(); // Ask user from permissions.
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
"Please allow location sharing so that bike lock/locks can be managed.\r\nOpen sharing dialog?",
|
||||
|
@ -228,14 +227,14 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
timeOut.MultiConnect.Returns(new TimeSpan(0));
|
||||
|
||||
// Fake location permissions not to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Denied));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Denied));
|
||||
|
||||
permissions.OpenAppSettings().Throws<Exception>(); // Ensures that method is not called and fixture succeeds.
|
||||
|
||||
|
@ -266,7 +265,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -292,9 +291,9 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
permissions.RequestPermissionAsync<LocationPermission>(); // Ask user from permissions.
|
||||
permissions.RequestAsync(); // Ask user from permissions.
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
"Please allow location sharing so that bike lock/locks can be managed.\r\nOpen sharing dialog?",
|
||||
|
@ -326,14 +325,14 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
timeOut.MultiConnect.Returns(new TimeSpan(0));
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(false); // Fake gps to be off
|
||||
|
||||
// Fake bluetooth answer for locks with id 2200545 and 2200537.
|
||||
|
@ -360,7 +359,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -386,7 +385,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
viewService.DisplayAlert(
|
||||
"Hint",
|
||||
|
@ -418,14 +417,14 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
timeOut.MultiConnect.Returns(new TimeSpan(0));
|
||||
|
||||
// Fake location permissions to be set
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>().Returns(Task.FromResult(PermissionStatus.Granted));
|
||||
permissions.CheckStatusAsync().Returns(Task.FromResult(Status.Granted));
|
||||
geolocation.Active.IsGeolcationEnabled.Returns(true); // Fake gps to be on
|
||||
bluetooth.State.Returns(BluetoothState.Off); // Fake bluetooth to be off
|
||||
|
||||
|
@ -452,7 +451,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
isConnectedFunc: () => true,
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -478,7 +477,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
// Verify behaviour
|
||||
Received.InOrder(() =>
|
||||
{
|
||||
permissions.CheckPermissionStatusAsync<LocationPermission>();
|
||||
permissions.CheckStatusAsync();
|
||||
var glDummy = geolocation.Active.Received().IsGeolcationEnabled;
|
||||
var btDummy = bluetooth.Received().State;
|
||||
viewService.DisplayAlert(
|
||||
|
@ -516,7 +515,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
|
@ -547,7 +546,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
|
||||
var myBikes = new MyBikesPageViewModel(
|
||||
tinkApp.ActiveUser,
|
||||
permissions,
|
||||
permissions, // Permissions,
|
||||
bluetooth,
|
||||
Device.iOS,
|
||||
() => tinkApp.GetIsConnected(),
|
||||
|
@ -577,7 +576,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
|
@ -599,7 +598,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions
|
||||
isConnectedFunc: () => false, // Offline
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -608,7 +607,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
|
||||
var myBikes = new MyBikesPageViewModel(
|
||||
tinkApp.ActiveUser,
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
bluetooth,
|
||||
Device.iOS,
|
||||
() => tinkApp.GetIsConnected(),
|
||||
|
@ -641,7 +640,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
|
@ -683,7 +682,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
|
||||
var myBikes = new MyBikesPageViewModel(
|
||||
tinkApp.ActiveUser,
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
bluetooth,
|
||||
Device.iOS,
|
||||
() => tinkApp.GetIsConnected(),
|
||||
|
@ -719,7 +718,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
var locksService = Substitute.For<ILocksService>();
|
||||
var timeOut = Substitute.For<ITimeOutProvider>();
|
||||
var viewService = Substitute.For<IViewService>();
|
||||
var permissions = Substitute.For<IPermissions>();
|
||||
var permissions = Substitute.For<ILocationPermission>();
|
||||
var bluetooth = Substitute.For<IBluetoothLE>();
|
||||
|
||||
locksService.TimeOut.Returns(timeOut);
|
||||
|
@ -752,7 +751,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
new DeviceMock(),
|
||||
new SpecialFolderMock(),
|
||||
null, // Cipher
|
||||
permissions,
|
||||
null, // Permissions.
|
||||
isConnectedFunc: () => false, // Offline
|
||||
postAction: (d, obj) => d(obj),
|
||||
currentVersion: new Version(3, 2, 0, 115), // Current app version
|
||||
|
@ -761,7 +760,7 @@ namespace TestTINKLib.Fixtures.ObjectTests.ViewModel
|
|||
|
||||
var myBikes = new MyBikesPageViewModel(
|
||||
tinkApp.ActiveUser,
|
||||
permissions,
|
||||
null, // Permissions,
|
||||
bluetooth,
|
||||
Device.iOS,
|
||||
() => tinkApp.GetIsConnected(),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue