Esempio n. 1
0
        private async Task should_return_expected_slack_purpose(
            [Frozen] Mock <IConnectionFactory> connectionFactory,
            Mock <IChannelClient> channelClient,
            Mock <IWebSocketClient> webSocket,
            SlackConnection slackConnection)
        {
            // given
            const string slackKey       = "key-yay";
            const string channelName    = "public-channel-name";
            const string channelPurpose = "new purpose";

            var connectionInfo = new ConnectionInformation {
                WebSocket = webSocket.Object, SlackKey = slackKey
            };
            await slackConnection.Initialise(connectionInfo);

            connectionFactory
            .Setup(x => x.CreateChannelClient())
            .Returns(channelClient.Object);

            channelClient
            .Setup(x => x.SetPurpose(slackKey, channelName, channelPurpose))
            .ReturnsAsync(channelPurpose);

            // when
            var result = await slackConnection.SetChannelPurpose(channelName, channelPurpose);

            // then
            result.ShouldLookLike(new SlackPurpose
            {
                ChannelName = channelName,
                Purpose     = channelPurpose
            });
        }
Esempio n. 2
0
        private async Task should_throw_exception_given_empty_channel_name(Mock <IWebSocketClient> webSocket, SlackConnection slackConnection)
        {
            // given
            var connectionInfo = new ConnectionInformation {
                WebSocket = webSocket.Object
            };
            await slackConnection.Initialise(connectionInfo);

            // when
            var exception = await Assert.ThrowsAsync <ArgumentNullException>(() => slackConnection.SetChannelPurpose(string.Empty, "purpose"));

            // then
            exception.Message.ShouldBe("Value cannot be null.\r\nParameter name: channelName");
        }