public void Ctor_ValidPageIdAndEdge_ReturnsExpected(PostsRequestEdge edge, string expectedEdge) { var postsRequest = new PostsRequest("PageId", edge); Assert.Equal("PageId", postsRequest.PageId); Assert.Equal(edge, postsRequest.Edge); Assert.Null(postsRequest.Fields); Assert.Equal($"/PageId/{expectedEdge}?fields=id,message,link,caption,description,from,created_time,updated_time," + "permalink_url,status_type,type,name,place,shares,comments.limit(0).summary(True)," + "reactions.limit(0).summary(True)&", postsRequest.ToString()); }
/// <summary> /// Constructs a request for the endpoint https://graph.facebook.com/vX.Y/{PageId}/{Edge}. /// </summary> /// <param name="pageId">The Id of the page to fetch posts from the Facebook Graph API.</param> /// <param name="edge">The type of posts to fetch from the Facebook Graph API.</param> /// <exception cref="ArgumentNullException"><paramref name="pageId"/> is null.</exception> /// <exception cref="ArgumentException"> /// <paramref name="pageId"/> is empty or whitespace. /// -or- /// <paramref name="edge"/> is not a valid <see cref="PostsRequestEdge"/> value /// </exception> public PostsRequest(string pageId, PostsRequestEdge edge) { if (pageId == null) { throw new ArgumentNullException(nameof(pageId)); } if (string.IsNullOrWhiteSpace(pageId)) { throw new ArgumentException("Argument cannot be empty or white space.", nameof(pageId)); } if (!Enum.IsDefined(typeof(PostsRequestEdge), edge)) { throw new ArgumentException("Argument is not a valid enum.", nameof(edge)); } PageId = pageId; Edge = edge; }
public void Ctor_InvalidEdge_ThrowsArgumentException(PostsRequestEdge edge) { Assert.Throws <ArgumentException>("edge", () => new PostsRequest("PageId", edge)); }