sharee.bike-App/TestShareeLib/Model/Connector/TestConnectorCache.cs

86 lines
2.2 KiB
C#
Raw Normal View History

2023-02-22 14:03:35 +01:00
using System;
2023-04-05 15:02:10 +02:00
using NSubstitute;
2022-08-30 15:42:25 +02:00
using NUnit.Framework;
2021-07-12 21:31:46 +02:00
using TINK.Model.Connector;
using TINK.Repository;
namespace TestTINKLib.Fixtures.ObjectTests.Connector
{
2022-09-06 16:08:19 +02:00
[TestFixture]
public class TestConnectorCache
{
/// <summary>
/// Verifies that factory method returns correcty type depending on session cookie.
/// </summary>
[Test]
public void TestCommandFactory()
{
2023-04-05 15:02:10 +02:00
var l_oCopri = Substitute.For<ICopriServer>();
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
// Construct not logged in version of connector.
var l_oCommand = new ConnectorCache(
new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2)),
null /*UI language */,
"", // Not logged in
"",
2023-02-22 14:03:35 +01:00
server: l_oCopri).Command;
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
Assert.AreEqual(typeof(Command), l_oCommand.GetType());
}
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
/// <summary>
/// Verifies that factory method returns correcty type depending on session cookie.
/// </summary>
[Test]
public void TestCommandFactory_LoggedIn()
{
2023-04-05 15:02:10 +02:00
var l_oCopri = Substitute.For<ICopriServer>();
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
var l_oCommand = new ConnectorCache(
new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2)),
null /*UI language */,
"123", // Logged in
"a@b",
2023-02-22 14:03:35 +01:00
server: l_oCopri).Command;
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
Assert.AreEqual(typeof(CommandLoggedIn), l_oCommand.GetType());
}
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
/// <summary>
/// Verifies that factory method returns correcty type depending on session cookie.
/// </summary>
[Test]
public void TestQueryFactory_CachedServer()
{
2023-04-05 15:02:10 +02:00
var l_oCopri = Substitute.For<ICopriServer>();
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
var l_oQuery = new ConnectorCache(
new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2)),
null /*UI language */,
"",
"",
2023-02-22 14:03:35 +01:00
server: l_oCopri).Query;
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
Assert.AreEqual(typeof(TINK.Model.Connector.Query), l_oQuery.GetType());
}
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
/// <summary>
/// Verifies that factory method returns correcty type depending on session cookie.
/// </summary>
[Test]
public void TestQueryFactory_LoggedIn()
{
2023-04-05 15:02:10 +02:00
var l_oCopri = Substitute.For<ICopriServer>();
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
var l_oQuery = new ConnectorCache(
new AppContextInfo("MyMerchId", "MyApp", new Version(1, 2)),
null /*UI language */,
"123",
"a@b",
2023-02-22 14:03:35 +01:00
server: l_oCopri).Query;
2021-07-12 21:31:46 +02:00
2022-09-06 16:08:19 +02:00
Assert.AreEqual(typeof(QueryLoggedIn), l_oQuery.GetType());
}
}
2021-07-12 21:31:46 +02:00
}