sharee.bike-App/TestShareeLib/ViewModel/Bikes/Bike/BC/TestMyBikePageViewModel.cs
2023-06-06 12:05:48 +02:00

88 lines
2.1 KiB
C#

using System;
using NSubstitute;
using NUnit.Framework;
using TINK.Model.Device;
using TINK.ViewModel;
using TINK.ViewModel.Bikes;
namespace UITest.Fixtures.ViewModel
{
[TestFixture]
public class TestMyBikesPageViewModel
{
/// <summary>
/// Tests base class functionality by using child.
/// </summary>
[Test]
public void TestStateText_LoggedIn_Reserved()
{
var l_oViewModel = TestBikeViewModel.TestStateText_LoggedIn_Reserved(
(bike, user) => new TINK.ViewModel.Bikes.Bike.BC.BikeViewModel(
null,
null,
null,
null,
Substitute.For<ISmartDevice>(),
null,
bike,
user,
new MyBikeInUseStateInfoProvider(),
Substitute.For<IBikesViewModel>(),
url => { }));
Assert.AreEqual("Location Station 3, still 15 min. reserved.", l_oViewModel.StateText);
}
/// <summary>
/// Tests base class functionality by using child.
/// </summary>
[Test]
public void TestStateText_LoggedIn_ReservedWithCopriConnect()
{
var l_oViewModel = TestBikeViewModel.TestStateText_LoggedIn_ReservedWithCopriConnect(
(bike, user) => new TINK.ViewModel.Bikes.Bike.BC.BikeViewModel(
null,
null,
null,
null,
Substitute.For<ISmartDevice>(),
null,
bike,
user,
new MyBikeInUseStateInfoProvider(),
Substitute.For<IBikesViewModel>(),
url => { }));
Assert.AreEqual("Code 4asdfA, location Station 3, still 7 min. reserved.", l_oViewModel.StateText);
}
/// <summary>
/// Tests base class functionality by using child.
/// </summary>
///
[Test]
public void TestStateText_LoggedIn_Booked()
{
var l_oViewModel = TestBikeViewModel.TestStateText_LoggedIn_Booked(
(bike, user) => new TINK.ViewModel.Bikes.Bike.BC.BikeViewModel(
null,
null,
null,
null,
Substitute.For<ISmartDevice>(),
null,
bike,
user,
new MyBikeInUseStateInfoProvider(),
Substitute.For<IBikesViewModel>(),
url => { }));
Assert.AreEqual(
$"Code 4asdfA, location Station 3, rented since {new DateTime(2018, 10, 24, 21, 49, 00).ToString("dd. MMMM HH:mm")}.",
l_oViewModel.StateText);
}
}
}