using System; using NSubstitute; using NUnit.Framework; using TINK.Model.Connector; using TINK.Model.Services.CopriApi; using TINK.Repository; namespace TestTINKLib.Fixtures.ObjectTests.Connector { [TestFixture] public class TestConnector { /// /// Verifies that factory method returns correcty type depending on session cookie. /// [Test] public void TestCommandFactory() { var l_oCopri = Substitute.For(); // Construct not logged in version of connector. var l_oCommand = new TINK.Model.Connector.Connector( new System.Uri("http://1.2.3.4"), new AppContextInfo("oiF2kahH", "sharee.bike.test", new Version(3, 0, 267)), null /*UI language */, "", // Not logged in "", server: l_oCopri).Command; Assert.AreEqual(typeof(Command), l_oCommand.GetType()); } /// /// Verifies that factory method returns correcty type depending on session cookie. /// [Test] public void TestCommandFactory_LoggedIn() { var l_oCopri = Substitute.For(); var l_oCommand = new TINK.Model.Connector.Connector( new System.Uri("http://1.2.3.4"), new AppContextInfo("oiF2kahH", "sharee.bike.test", new Version(3, 0, 267)), null /*UI language */, "123", // Logged in "a@b", server: l_oCopri).Command; Assert.AreEqual(typeof(CommandLoggedIn), l_oCommand.GetType()); } /// /// Verifies that factory method returns correcty type depending on session cookie. /// [Test] public void TestQueryFactory_CachedServer() { var l_oCopri = Substitute.For(); var l_oQuery = new TINK.Model.Connector.Connector( new Uri("http://1.2.3.4"), new AppContextInfo("oiF2kahH", "sharee.bike.test", new Version(3, 0, 267)), null /*UI language */, "", "", server: l_oCopri).Query; Assert.AreEqual(typeof(CachedQuery), l_oQuery.GetType()); } /// /// Verifies that factory method returns correcty type depending on session cookie. /// [Test] public void TestQueryFactory_LoggedIn() { var l_oCopri = Substitute.For(); var l_oQuery = new TINK.Model.Connector.Connector( new System.Uri("http://1.2.3.4"), new AppContextInfo("oiF2kahH", "sharee.bike.test", new Version(3, 0, 267)), null /*UI language */, "123", "a@b", server: l_oCopri).Query; Assert.AreEqual(typeof(CachedQueryLoggedIn), l_oQuery.GetType()); } } }