public static void Main (string[] args) { var settings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); var client = new AmqpClient (settings); var t = Task.Factory.StartNew(async () => await client.ConnectAsync ()); t.Wait (); }
public void Given_there_is_no_remote_broker_When_a_client_connects_to_the_broker_Then_an_exception_is_thrown() { var settings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); var subject = new AmqpClient (settings); Func<Task> action = async () => await subject.ConnectAsync(); action.ShouldThrow<AmqpConnectionAttemptFailedException> (); }
public async Task Given_a_remote_broker_When_a_client_connects_to_the_broker_Then_a_connection_is_created() { using (new TestScope ()) { var settings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); var subject = new AmqpClient (settings); var result = await subject.ConnectAsync (); result.Should ().BeAssignableTo<IAmqpConnection> (); } }
public async Task Given_a_remote_broker_When_a_client_connects_Then_the_connection_has_AMQP_version_equal_to_broker_version () { using (new TestScope ()) { var settings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); var subject = new AmqpClient (settings); var result = await subject.ConnectAsync (); result.AmqpVersion.ShouldBeEquivalentTo (new Version (1, 0, 0)); } }
public async Task Given_the_client_sends_a_request_that_cannot_be_parsed_When_negotiating_which_version_to_use_Then_the_server_returns_its_preferred_version_And_closes_the_connection() { var settings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); new AmqpServer (settings).Start (); var client = new GarbageSpewingClient (); // Act Version result = await client.ConnectAsync (); // Assert Assert.That (result, Is.EqualTo (new Version (1, 0, 0))); Assert.That (client.IsConnected (), Is.False); }
public async Task Given_a_client_uses_a_higher_version_that_server_When_negotiating_which_version_to_use_Then_the_server_returns_the_highest_version_it_can_support() { // Arrange var serverSettings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); new AmqpServer (serverSettings).Start (); var clientSettings = new AmqpSettingsBuilder ().SupportsVersion (1, 0, 0); var client = new AmqpClient (clientSettings); // Act var result = await client.ConnectAsync (); // Assert Assert.That (result.AmqpVersion, Is.EqualTo (new Version (1, 0, 0))); }
public async Task Given_a_client_prefers_a_lower_version_than_the_version_the_server_prefers_When_negotiating_which_version_to_use_Then_the_server_returns_the_clients_preferred_version() { // Arrange var serverSettings = new AmqpSettingsBuilder ().SupportsVersions (Version.From (0, 9, 0).To (1, 0, 0)); new AmqpServer (serverSettings).Start(); var clientSettings = new AmqpSettingsBuilder ().SupportsVersion (0, 9, 0); var client = new AmqpClient (clientSettings); // Act var result = await client.ConnectAsync (); // Assert Assert.That (result.AmqpVersion, Is.EqualTo (new Version(0, 9, 0))); }
public static void Main (string[] args) { ConsoleLogger.Create (); var settingsBuilder = new AmqpSettingsBuilder () .WithPort (1984) .SupportsVersion (1, 0, 0); var server = new AmqpServer(settingsBuilder); Console.WriteLine ("MSG version 0.0.1 DEV"); server.Start (); Console.WriteLine ("Started server."); Console.WriteLine ("Press enter to stop..."); Console.ReadLine (); server.Stop (); Console.WriteLine ("Server stopped."); }
public AmqpClient(AmqpSettingsBuilder settingsBuilder) { this.settings = settingsBuilder.Build (); }