using NUnit.Framework; using System; using System.Collections.Generic; using TINK.Model; using TINK.Model.Bike; namespace TestTINKLib.Fixtures.ObjectTests.Bike { [TestFixture] public class TestBikeCollectionFilter { [Test] public void TestGetAtStation() { var coll = new BikeCollection( new Dictionary { {3, new TINK.Model.Bike.BC.BikeInfo(7, 3 /* Stadion id */) }, {7, new TINK.Model.Bike.BC.BikeInfo(8, 12 /* Stadion id */) }, {12, new TINK.Model.Bike.BC.BikeInfo(33, 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.Bike.BC.BikeInfo(8, 12 /* Stadion id */) }, {12, new TINK.Model.Bike.BC.BikeInfo(33, 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.Bike.BC.BikeInfo(8, 12 /* Stadion id */) }, {11, new TINK.Model.Bike.BluetoothLock.BikeInfo(33, 5200544, new Guid("00000000-0000-0000-0000-000000000001"),12 /* Stadion id */) }, {12, new TINK.Model.Bike.BC.BikeInfo(33, 12 /* Stadion id */) } }); Assert.AreEqual( 1, coll.GetLockIt().Count); } } }