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); }
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); }