2023-01-18 14:22:51 +01:00
|
|
|
using System;
|
2021-05-13 20:09:46 +02:00
|
|
|
using System.Collections.Generic;
|
2022-08-30 15:42:25 +02:00
|
|
|
using NUnit.Framework;
|
2021-05-13 20:09:46 +02:00
|
|
|
using TINK.Model;
|
2022-08-30 15:42:25 +02:00
|
|
|
using TINK.Model.Bikes;
|
2023-01-18 14:22:51 +01:00
|
|
|
using TINK.Model.Bikes.BikeInfoNS.BC;
|
2022-08-30 15:42:25 +02:00
|
|
|
using TINK.Model.Bikes.BikeInfoNS.BikeNS;
|
|
|
|
using TINK.Model.Bikes.BikeInfoNS.DriveNS;
|
2021-05-13 20:09:46 +02:00
|
|
|
|
|
|
|
namespace TestTINKLib.Fixtures.ObjectTests.Bike
|
|
|
|
{
|
2022-09-06 16:08:19 +02:00
|
|
|
[TestFixture]
|
|
|
|
public class TestBikeCollectionFilter
|
|
|
|
{
|
|
|
|
[Test]
|
|
|
|
public void TestGetAtStation()
|
|
|
|
{
|
|
|
|
var coll = new BikeCollection(
|
2023-04-19 12:14:14 +02:00
|
|
|
new Dictionary<string, BikeInfo>
|
2022-09-06 16:08:19 +02:00
|
|
|
{
|
2023-04-19 12:14:14 +02:00
|
|
|
{"3", new TINK.Model.Bikes.BikeInfoNS.BluetoothLock.BikeInfo(
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("7", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
17, /* Lock id */
|
|
|
|
new Guid(),
|
|
|
|
"3" /* Station id */) },
|
|
|
|
{"7", new TINK.Model.Bikes.BikeInfoNS.BluetoothLock.BikeInfo(
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
17, /* Lock id */
|
|
|
|
new Guid(),
|
|
|
|
"12" /* Station id */) },
|
|
|
|
{"12",
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.BluetoothLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
17, /* Lock id */
|
|
|
|
new Guid(),
|
|
|
|
"12" /* Station id */) }
|
2022-09-06 16:08:19 +02:00
|
|
|
});
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
0,
|
|
|
|
BikeCollectionFilter.GetAtStation(null, "12").Count);
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
0,
|
|
|
|
coll.GetAtStation(null).Count);
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
0,
|
|
|
|
coll.GetAtStation("22").Count);
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
1,
|
|
|
|
coll.GetAtStation("3").Count);
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
2,
|
|
|
|
coll.GetAtStation("12").Count);
|
|
|
|
}
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
[Test]
|
|
|
|
public void TestGetLockIt_Null()
|
|
|
|
{
|
|
|
|
Assert.That(
|
|
|
|
BikeCollectionFilter.GetLockIt(null).Count,
|
|
|
|
Is.EqualTo(0));
|
|
|
|
}
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
[Test]
|
|
|
|
public void TestGetLockIt_NoLockIt()
|
|
|
|
{
|
|
|
|
// Holds no LockIt bikes
|
|
|
|
var coll = new BikeCollection(
|
2023-04-19 12:14:14 +02:00
|
|
|
new Dictionary<string, BikeInfo>
|
2022-09-06 16:08:19 +02:00
|
|
|
{
|
2023-04-19 12:14:14 +02:00
|
|
|
{"7", new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
"12", /* Station id */
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo()) },
|
|
|
|
{"12", new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
"12", /* Station id */
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo()) }
|
2022-09-06 16:08:19 +02:00
|
|
|
});
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
0,
|
|
|
|
coll.GetLockIt().Count);
|
|
|
|
}
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
[Test]
|
|
|
|
public void TestGetLockIt()
|
|
|
|
{
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
// Holds no LockIt bike with matching station number.
|
|
|
|
var coll = new BikeCollection(
|
2023-04-19 12:14:14 +02:00
|
|
|
new Dictionary<string, BikeInfo>
|
2022-09-06 16:08:19 +02:00
|
|
|
{
|
2023-04-19 12:14:14 +02:00
|
|
|
{"7", new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
"12", /* Station id */
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo()) },
|
|
|
|
{"11", new TINK.Model.Bikes.BikeInfoNS.BluetoothLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
5200544,
|
|
|
|
new Guid("00000000-0000-0000-0000-000000000001"),
|
|
|
|
"12" /* Station id */) },
|
|
|
|
{"12", new TINK.Model.Bikes.BikeInfoNS.CopriLock.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt),
|
|
|
|
new Drive(),
|
|
|
|
DataSource.Copri,
|
|
|
|
"12", /* Station id */
|
|
|
|
new TINK.Model.Bikes.BikeInfoNS.CopriLock.LockInfo()) }
|
2022-09-06 16:08:19 +02:00
|
|
|
});
|
2021-05-13 20:09:46 +02:00
|
|
|
|
2022-09-06 16:08:19 +02:00
|
|
|
Assert.AreEqual(
|
|
|
|
1,
|
|
|
|
coll.GetLockIt().Count);
|
|
|
|
}
|
|
|
|
}
|
2021-05-13 20:09:46 +02:00
|
|
|
}
|