public async Task ReturnsIndividualEvent() { // given var subject = new EventsClient(_clientConfiguration); var request = new GetEventsRequest { Action = Actions.Payment.PaidOut, ResourceType = ResourceType.Payments }; var events = (await subject.GetPageAsync(request)).Items.ToList(); var @event = events.First(); // when var result = await subject.ForIdAsync(@event.Id); var actual = result.Item; // then Assert.That(actual, Is.Not.Null); Assert.That(actual.Id, Is.Not.Null.And.EqualTo(@event.Id)); Assert.That(actual.Action, Is.Not.Null.And.EqualTo(@event.Action)); Assert.That(actual.CreatedAt, Is.Not.Null.And.EqualTo(@event.CreatedAt)); Assert.That(actual.Details, Is.Not.Null); Assert.That(actual.Details.Cause, Is.Not.Null.And.EqualTo(@event.Details.Cause)); Assert.That(actual.Details.Description, Is.Not.Null.And.EqualTo(@event.Details.Description)); Assert.That(actual.Details.Origin, Is.Not.Null.And.EqualTo(@event.Details.Origin)); Assert.That(actual.Links, Is.Not.Null); Assert.That(actual.Links.ParentEvent, Is.Not.Null.And.EqualTo(@event.Links.ParentEvent)); Assert.That(actual.Links.Payment, Is.Not.Null.And.EqualTo(@event.Links.Payment)); Assert.That(actual.Links.Payout, Is.Not.Null.And.EqualTo(@event.Links.Payout)); Assert.That(actual.Metadata, Is.Not.Null.And.EqualTo(@event.Metadata)); Assert.That(actual.ResourceType, Is.Not.Null.And.EqualTo(@event.ResourceType)); }
public async Task CallsIndividualEventsEndpoint() { // given var subject = new EventsClient(_clientConfiguration); var id = "EV12345678"; // when await subject.ForIdAsync(id); // then _httpTest .ShouldHaveCalled("https://api.gocardless.com/events/EV12345678") .WithVerb(HttpMethod.Get); }
public void EventIdIsNullOrWhiteSpaceThrows(string id) { // given var subject = new EventsClient(_clientConfiguration); // when AsyncTestDelegate test = () => subject.ForIdAsync(id); // then var ex = Assert.ThrowsAsync <ArgumentException>(test); Assert.That(ex.Message, Is.Not.Null); Assert.That(ex.ParamName, Is.EqualTo(nameof(id))); }