public void ConnectAll_will_run_for_successful_accounts_and_return_exception_for_failed() { var acct1 = new Mock<ILeagueAccount>(); acct1.Setup(x => x.Connect()) .Returns(Task.Factory.StartNew(() => { throw new LeagueConnectionException("Account 1"); })); var acct2 = new Mock<ILeagueAccount>(); acct2.Setup(x => x.Connect()) .Returns(Task.Factory.StartNew(() => { throw new LeagueConnectionException("Account 2"); })); var acct3 = new Mock<ILeagueAccount>(); acct3.Setup(x => x.Connect()).Returns(Task.Factory.StartNew(() => { })); var connection = new CompositeLeagueAccount() .AddAccount(acct1.Object) .AddAccount(acct2.Object) .AddAccount(acct3.Object); var errors = connection.ConnectAll(); // Need to fake that it connected successfully acct3.Setup(x => x.IsConnected).Returns(true); Assert.That(errors, Is.Not.Null); Assert.That(errors.Count, Is.EqualTo(2)); Assert.That(errors[acct1.Object].InnerException.Message, Is.EqualTo("Account 1")); Assert.That(errors[acct2.Object].InnerException.Message, Is.EqualTo("Account 2")); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct3.Object)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct3.Object)); }
public void AddAccount_will_set_the_region_based_on_the_first_account_added() { var client = new Mock<IFlashRemotingClient>(); var account = new LeagueAccount(client.Object, LeagueRegion.NorthAmerica, "testUser1", "testPassword1"); var connection = new CompositeLeagueAccount() .AddAccount(account); Assert.That(connection, Is.Not.Null); Assert.That(connection.Region, Is.EqualTo(LeagueRegion.NorthAmerica)); }
public void AddAccount_throws_when_account_region_doesnt_match_connection_region() { var client = new Mock<IFlashRemotingClient>(); var account = new LeagueAccount(client.Object, LeagueRegion.NorthAmerica, "testUser1", "testPassword1"); var account2 = new LeagueAccount(client.Object, LeagueRegion.Brazil, "testUser2", "testPassword2"); var connection = new CompositeLeagueAccount() .AddAccount(account); Assert.Throws<LeagueException>(() => connection.AddAccount(account2)); }
private static ILeagueAccount BuildAccount(IContext arg) { var account = new CompositeLeagueAccount() .AddAccount(new LeagueAccount(arg.Kernel.Get<IFlashRemotingClient>(), LeagueRegion.NorthAmerica, "BunkTester", "leaguetester1")) .AddAccount(new LeagueAccount(arg.Kernel.Get<IFlashRemotingClient>(), LeagueRegion.NorthAmerica, "BunkTester2", "leaguetester2")); var errors = account.ConnectAll(); return account; }
private static ILeagueAccount BuildAccount(IContext arg) { var account = new CompositeLeagueAccount() .AddAccount(new LeagueAccount(arg.Kernel.Get <IFlashRemotingClient>(), LeagueRegion.NorthAmerica, "BunkTester", "leaguetester1")) .AddAccount(new LeagueAccount(arg.Kernel.Get <IFlashRemotingClient>(), LeagueRegion.NorthAmerica, "BunkTester2", "leaguetester2")); var errors = account.ConnectAll(); return(account); }
public void ConnectAll_will_run_successfully_if_all_clients_connect() { var acct1 = new Mock<ILeagueAccount>(); acct1.Setup(x => x.IsConnected).Returns(false); acct1.Setup(x => x.Connect()).Returns(Task.Factory.StartNew(() => { })); var acct2 = new Mock<ILeagueAccount>(); acct2.Setup(x => x.IsConnected).Returns(false); acct2.Setup(x => x.Connect()).Returns(Task.Factory.StartNew(() => { })); var acct3 = new Mock<ILeagueAccount>(); acct3.Setup(x => x.IsConnected).Returns(false); acct3.Setup(x => x.Connect()).Returns(Task.Factory.StartNew(() => { })); var errors = new CompositeLeagueAccount() .AddAccount(acct1.Object) .AddAccount(acct2.Object) .AddAccount(acct3.Object) .ConnectAll(); Assert.That(errors, Is.Not.Null); Assert.That(errors.Count, Is.EqualTo(0)); }
public void ConnectAll_will_succeed_if_all_clients_are_already_connected() { var acct1 = new Mock<ILeagueAccount>(); acct1.Setup(x => x.IsConnected).Returns(true); var acct2 = new Mock<ILeagueAccount>(); acct2.Setup(x => x.IsConnected).Returns(true); var acct3 = new Mock<ILeagueAccount>(); acct3.Setup(x => x.IsConnected).Returns(true); var errors = new CompositeLeagueAccount() .AddAccount(acct1.Object) .AddAccount(acct2.Object) .AddAccount(acct3.Object) .ConnectAll(); Assert.That(errors, Is.Not.Null); Assert.That(errors.Count, Is.EqualTo(0)); }
public void GetNextAccount_will_throw_when_no_connections_are_open() { var client1 = new Mock<IFlashRemotingClient>(); client1.Setup(x => x.IsConnected).Returns(false); var client2 = new Mock<IFlashRemotingClient>(); client2.Setup(x => x.IsConnected).Returns(false); var acct1 = new LeagueAccount(client1.Object, LeagueRegion.NorthAmerica, "testUser1", "testPassword1"); var acct2 = new LeagueAccount(client2.Object, LeagueRegion.NorthAmerica, "testUser2", "testPassword2"); var connection = new CompositeLeagueAccount() .AddAccount(acct1) .AddAccount(acct2); Assert.That(connection, Is.Not.Null); Assert.Throws<LeagueConnectionException>(() => connection.GetNextAccount()); }
public void GetNextAccount_will_throw_when_no_accounts_are_added() { var connection = new CompositeLeagueAccount(); Assert.That(connection, Is.Not.Null); Assert.Throws<LeagueConnectionException>(() => connection.GetNextAccount()); }
public void GetNextAccount_will_cycle_through_connections_cyclicly() { var client1 = new Mock<IFlashRemotingClient>(); client1.Setup(x => x.IsConnected).Returns(true); var client2 = new Mock<IFlashRemotingClient>(); client2.Setup(x => x.IsConnected).Returns(true); var client3 = new Mock<IFlashRemotingClient>(); client3.Setup(x => x.IsConnected).Returns(true); var acct1 = new LeagueAccount(client1.Object, LeagueRegion.NorthAmerica, "testUser1", "testPassword1"); var acct2 = new LeagueAccount(client2.Object, LeagueRegion.NorthAmerica, "testUser2", "testPassword2"); var acct3 = new LeagueAccount(client2.Object, LeagueRegion.NorthAmerica, "testUser3", "testPassword3"); var connection = new CompositeLeagueAccount() .AddAccount(acct1) .AddAccount(acct2) .AddAccount(acct3); Assert.That(connection, Is.Not.Null); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct2)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct3)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct1)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct2)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct3)); Assert.That(connection.GetNextAccount(), Is.EqualTo(acct1)); }
private static void Initialize() { var accounts = InitAccounts(); var composite = new CompositeLeagueAccount(); foreach (var account in accounts) composite.AddAccount(account); var errors = composite.ConnectAll(); foreach (var error in errors) System.Console.WriteLine("Error Connecting: " + error.Key.Region + " >> " + error.Value); _account = composite; var services = InitializeServices(_account); InitializeCommandMaps(services); }