Beispiel #1
0
        public void GivenEventMessage_WhenAskingToSendNeed_ThenItShouldReturnEventData()
        {
            // arrange
            EventData        expected         = new EventData(Encoding.UTF8.GetBytes("{'Dammit':'Bobby!'}"));
            FakeEventMessage fakeEventMessage = new FakeEventMessage(expected);
            Need             need             = new Need(fakeEventMessage, new FakeEventHubClient());

            // act
            EventData actual = need.SendAsync().Result;

            // assert
            actual.Should().Be(expected);
        }
Beispiel #2
0
        public void GivenEventMessage_WhenAskingToSendNeed_ThenItShouldCallEventHubClient()
        {
            // arrange
            EventData          expected           = new EventData(Encoding.UTF8.GetBytes("{'Dammit':'Bobby!'}"));
            FakeEventMessage   fakeEventMessage   = new FakeEventMessage(expected);
            FakeEventHubClient fakeEventHubClient = new FakeEventHubClient();
            Need need = new Need(fakeEventMessage, fakeEventHubClient);

            // act
            Func <Task> func = async() => await need.SendAsync();

            func.Invoke();

            // assert
            fakeEventHubClient.CallCount.Should().Be(1);
        }
Beispiel #3
0
        public void GivenFulfilledNeed_WhenAskingForValue_ThenItShouldReturnCorrectValue()
        {
            // arrange
            FakeEventMessage fakeEventMessage     = new FakeEventMessage(new EventData(new ArraySegment <byte>()));
            FakeNeed         fakeNeed             = new FakeNeed();
            const string     stricklandPropaneLlc = "Strickland Propane, LLC";
            ExpandoObject    expected             = JsonConvert.DeserializeObject <ExpandoObject>($"{{'BusinessName':'{stricklandPropaneLlc}'}}");
            FakeResult       fakeResult           = new FakeResult(expected);
            INeedActivity    needActivity         = new Privateer().Object <GoogazonActivities.TopicNeedActivity.TopicNeedActivity>(fakeEventMessage, fakeNeed, fakeResult);

            // act
            dynamic actual = needActivity.ValueAsync().Result;

            // assert
            ((ExpandoObject)actual).Should().BeEquivalentTo(expected);
            ((string)actual.BusinessName).Should().Be(stricklandPropaneLlc);
        }
Beispiel #4
0
        public void GivenNeed_WhenAskingToExpressNeed_ThenItShouldCallExpressNeed()
        {
            // arrange
            FakeEventMessage fakeEventMessage     = new FakeEventMessage(new EventData(new ArraySegment <byte>()));
            FakeNeed         fakeNeed             = new FakeNeed();
            const string     stricklandPropaneLlc = "Strickland Propane, LLC";
            ExpandoObject    expected             = JsonConvert.DeserializeObject <ExpandoObject>($"{{'BusinessName':'{stricklandPropaneLlc}'}}");
            FakeResult       fakeResult           = new FakeResult(expected);
            INeedActivity    needActivity         = new Privateer().Object <GoogazonActivities.TopicNeedActivity.TopicNeedActivity>(fakeEventMessage, fakeNeed, fakeResult);

            // act
            Func <Task> func = async() => await needActivity.ExpressNeed();

            func.Invoke();

            // assert
            fakeNeed.CallCountSpy.Should().Be(1);
        }