sharee.bike-App/SharedBusinessLogic.Tests_old/Fixtures/ObjectTests/Connector/TestFilter.cs
2024-04-09 12:53:23 +02:00

105 lines
4.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using NSubstitute;
using NUnit.Framework;
using SharedBusinessLogic.Tests.Framework.Repository;
using ShareeBike.Model.Connector;
using ShareeBike.Repository;
namespace SharedBusinessLogic.Tests.Fixtures.ObjectTests.Connector
{
/// <summary> Tests filter object. </summary>
[TestFixture]
public class TestFilter
{
/// <summary> Tests all stations. </summary>
[Test]
public void TestGetStationsAll()
{
var appContextInfo = new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2));
var connector = new ConnectorCache(
appContextInfo,
null /*UI language */,
string.Empty,
string.Empty,
server: new CopriCallsMemory001(merchantId: appContextInfo.MerchantId));
var filter = new FilteredConnector(new List<string> { FilterHelper.CARGOBIKE, FilterHelper.CITYBIKE }, connector);
var stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(41)); // Count of stations was 9 before switching to data provider CopriCallsMemory(CopriCallsMemory.SampleSets.Set2, 1)
filter = new FilteredConnector(new List<string> { FilterHelper.CARGOBIKE }, connector);
stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(27));
filter = new FilteredConnector(new List<string> { FilterHelper.CITYBIKE }, connector);
stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(21));
filter = new FilteredConnector(new List<string> { "AGroupNamedNonsensDoesNotExist" }, connector);
stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(0));
filter = new FilteredConnector(new List<string>(), connector);
stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(41));
filter = new FilteredConnector(null, connector);
stations = filter.Query.GetBikesAndStationsAsync().Result.Response;
Assert.That(stations.StationsAll.Count(), Is.EqualTo(41), "Null means filter none.");
}
/// <summary> Tests all stations. </summary>
[Test]
public void TestGetBikesAll()
{
var appContextInfo = new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2));
var l_oConnector = new ConnectorCache(
appContextInfo,
null /*UI language */,
string.Empty,
string.Empty,
server: new CopriCallsMemory001(merchantId: appContextInfo.MerchantId));
var l_oFilter = new FilteredConnector(new List<string> { FilterHelper.CARGOBIKE, FilterHelper.CITYBIKE }, l_oConnector);
var l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(8)); // Count of stations was 12 CopriCallsMemory(CopriCallsMemory.SampleSets.Set2, 1)
l_oFilter = new FilteredConnector(new List<string> { FilterHelper.CARGOBIKE }, l_oConnector);
l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(3)); // Was 11
l_oFilter = new FilteredConnector(new List<string> { FilterHelper.CITYBIKE }, l_oConnector);
l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(5)); // Was 1
l_oFilter = new FilteredConnector(new List<string> { "AGroupNamedNonsensDoesNotExist" }, l_oConnector);
l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(0));
l_oFilter = new FilteredConnector(new List<string>(), l_oConnector);
l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(8), "List with zero element means filter all."); // Was 12
l_oFilter = new FilteredConnector(null, l_oConnector);
l_oBikes = l_oFilter.Query.GetBikesAsync().Result.Response;
Assert.That(l_oBikes.Count(), Is.EqualTo(8), "Null means filter none.");
}
[Test]
public void TestIsConnected()
{
var connector = Substitute.For<IConnector>();
connector.IsConnected.Returns(true);
Assert.That(new FilteredConnector(new List<string>(), connector).IsConnected, Is.True);
var dummy = connector.Received().IsConnected;
connector = Substitute.For<IConnector>();
connector.IsConnected.Returns(false);
Assert.That(new FilteredConnector(new List<string>(), connector).IsConnected, Is.False);
dummy = connector.Received().IsConnected;
}
}
}