コード例 #1
0
        public void Should_be_able_to_publish_and_consume_JSON_payloads_synchronously()
        {
            var orgItem = EncodingTestItem.Create();
            EncodingTestItem decodedItem = null;

            _client.Sub("ClientProtobufEncodingTests", stream => stream.Subscribe(msg =>
            {
                decodedItem = msg.FromJson <EncodingTestItem>();
                ReleaseOne();
            }));

            _client.PubAsJson("ClientProtobufEncodingTests", orgItem);
            WaitOne();

            orgItem.Should().BeEquivalentTo(decodedItem);
        }
コード例 #2
0
        public async Task Should_be_able_to_publish_and_consume_JSON_payloads_asynchronously()
        {
            var orgItem = EncodingTestItem.Create();
            EncodingTestItem decodedItem = null;

            await _client.SubAsync(Subject, stream => stream.Subscribe(msg =>
            {
                decodedItem = msg.FromJson <EncodingTestItem>();
                ReleaseOne();
            }));

            await _client.PubAsJsonAsync(Subject, orgItem);

            WaitOne();

            orgItem.Should().BeEquivalentTo(decodedItem);
        }
コード例 #3
0
        public async Task Should_be_able_to_publish_and_consume_JSON_payloads_synchronously()
        {
            var subject = Context.GenerateSubject();
            var orgItem = EncodingTestItem.Create();
            EncodingTestItem decodedItem = null;

            _sync   = Sync.MaxOne();
            _client = await Context.ConnectClientAsync();

            _client.Sub(subject, stream => stream.Subscribe(msg =>
            {
                decodedItem = msg.FromJson <EncodingTestItem>();
                _sync.Release();
            }));

            _client.PubAsJson(subject, orgItem);
            _sync.WaitForAll();

            orgItem.Should().BeEquivalentTo(decodedItem);
        }