public void test_fetching_purposes() { var service = new PurposesService(_gateway); var filter = new PurposesFilter { PageSize = 10, PageNumber = 1, EnabledFilter = true, //NameFilter = "" }; var purposes = service.GetPurposes(filter); var newPurpose = new PurposeInfo { Name = "My new purpose", Description = "My new purpose created via the Aplos API", IsEnabled = true, }; newPurpose.IncomeAccount.AccountNumber = 4000; newPurpose.Fund.Id = 173676; var postResult = service.PostPurpose(newPurpose); postResult.Data.Purpose.Name.Should().Be(newPurpose.Name); newPurpose.Name = "My renamed purpose"; var putResult = service.PutPurpose(postResult.Data.Purpose.Id, newPurpose); putResult.Data.Purpose.Name.Should().Be(newPurpose.Name); var updatedPurpose = service.GetPurpose(putResult.Data.Purpose.Id); updatedPurpose.Data.Purpose.Name.Should().Be(newPurpose.Name); var deleteResult = service.DeletePurpose(postResult.Data.Purpose.Id); deleteResult.Message.Should().Contain(postResult.Data.Purpose.Id.ToString()); var deletedPurpose = service.GetPurpose(putResult.Data.Purpose.Id); deletedPurpose.Data.Purpose.Should().BeNull(); deletedPurpose.Meta.ResourceCount.Should().Be(0); }
public PurposesResponse GetPurposes(PurposesFilter filter) { return(_gateway.Retrieve(client => { var request = new RestRequest("purposes"); request.ApplyPaging(filter); if (filter.EnabledFilter.HasValue) { request.AddQueryParameter("f_enabled", filter.EnabledFilter.Value ? "y" : "n"); } if (!string.IsNullOrWhiteSpace(filter.NameFilter)) { request.AddQueryParameter("f_name", filter.NameFilter); } return client.Get <PurposesResponse>(request); })); }