using System; using System.Collections.Generic; using NUnit.Framework; using TINK.Model; using TINK.Model.Bikes; using TINK.Model.Bikes.BikeInfoNS.BC; using TINK.Model.Bikes.BikeInfoNS.BikeNS; using TINK.Model.Bikes.BikeInfoNS.DriveNS; namespace TestTINKLib.Fixtures.ObjectTests.Bike { [TestFixture] public class TestBikeCollectionFilter { [Test] public void TestGetAtStation() { var coll = new BikeCollection( new Dictionary { {"3", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("7", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"3" /* Stadion id */) }, {"7", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) }, {"12", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) } }); Assert.AreEqual( 0, BikeCollectionFilter.GetAtStation(null, "12").Count); Assert.AreEqual( 0, coll.GetAtStation(null).Count); Assert.AreEqual( 0, coll.GetAtStation("22").Count); Assert.AreEqual( 1, coll.GetAtStation("3").Count); Assert.AreEqual( 2, coll.GetAtStation("12").Count); } [Test] public void TestGetLockIt_Null() { Assert.That( BikeCollectionFilter.GetLockIt(null).Count, Is.EqualTo(0)); } [Test] public void TestGetLockIt_NoLockIt() { // Holds no LockIt bikes var coll = new BikeCollection( new Dictionary { {"7", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) }, {"12", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) } }); Assert.AreEqual( 0, coll.GetLockIt().Count); } [Test] public void TestGetLockIt() { // Holds no LockIt bike with matching station number. var coll = new BikeCollection( new Dictionary { {"7", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("8", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) }, {"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" /* Stadion id */) }, {"12", new TINK.Model.Bikes.BikeInfoNS.BC.BikeInfo(new TINK.Model.Bikes.BikeInfoNS.BikeNS.Bike("33", LockModel.ILockIt), new Drive(), TINK.Model.Bikes.BikeInfoNS.BC.DataSource.Copri,"12" /* Stadion id */) } }); Assert.AreEqual( 1, coll.GetLockIt().Count); } } }