sharee.bike-App/TestShareeLib/Model/Bike/CopriLock/TestBikeInfo.cs

88 lines
2.1 KiB
C#
Raw Normal View History

2022-08-30 15:42:25 +02:00
using System;
using NUnit.Framework;
using TINK.Model.Bikes.BikeInfoNS;
using TINK.Model.Bikes.BikeInfoNS.BikeNS;
using TINK.Model.Bikes.BikeInfoNS.DriveNS;
namespace TestShareeLib.Model.Bike.CopriLock
{
2022-09-06 16:08:19 +02:00
[TestFixture]
public class TestBikeInfo
{
[Test]
public void TestCtorAvailable()
{
var bike = new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(
new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("bikeId", LockModel.Sigo),
new Drive(),
"stationId",
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo());
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
Assert.That(
bike.State.Value,
Is.EqualTo(TINK.Model.State.InUseStateEnum.Disposable));
}
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
[Test]
public void TestCtorAvailableBikeNull()
{
Assert.That(
() => new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(
null,
new Drive(),
"stationId",
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo()),
Throws.ArgumentNullException);
}
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
[Test]
public void TestCtorFeedbackRequired()
{
var bike = new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(
new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("bikeId", LockModel.Sigo),
new Drive(),
"stationId",
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo(),
true);
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
Assert.That(
bike.State.Value,
Is.EqualTo(TINK.Model.State.InUseStateEnum.FeedbackPending));
}
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
[Test]
public void TestCtorRequestedBikeNull()
{
Assert.That(
() => new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(
null,
new Drive(),
DateTime.Now,
"a@b",
"stationId",
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo(),
new Uri("https://sharee.bike"),
new RentalDescription(),
() => DateTime.Now),
Throws.ArgumentNullException);
}
2022-08-30 15:42:25 +02:00
2022-09-06 16:08:19 +02:00
[Test]
public void TestCtorOccupiedBikeNull()
{
Assert.That(
() => new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(
null,
new Drive(),
DateTime.Now,
"a@b",
"stationId",
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo(),
new Uri("https://sharee.bike"),
new RentalDescription()),
Throws.ArgumentNullException);
}
}
2022-08-30 15:42:25 +02:00
}