public void TestTraktSearchTextQueryRequestUriParamsWithoutResultTypes() { var request = new TraktSearchTextQueryRequest(null) { ResultTypes = null }; Action act = () => request.GetUriPathParameters(); act.ShouldThrow <ArgumentNullException>(); }
public void TestTraktSearchTextQueryRequestUriParamsWithoutQuery() { var request = new TraktSearchTextQueryRequest(null) { ResultTypes = TraktSearchResultType.Movie, Query = null }; Action act = () => request.GetUriPathParameters(); act.ShouldThrow <ArgumentException>(); request = new TraktSearchTextQueryRequest(null) { ResultTypes = TraktSearchResultType.Movie, Query = string.Empty }; act = () => request.GetUriPathParameters(); act.ShouldThrow <ArgumentException>(); }
public void TestTraktSearchTextQueryRequestUriParamsWithSearchFields() { var resultTypes = TraktSearchResultType.Movie | TraktSearchResultType.Show; var query = "the big bang theory"; var fields = TraktSearchField.Name | TraktSearchField.Overview; var request = new TraktSearchTextQueryRequest(null) { ResultTypes = resultTypes, Query = query, SearchFields = fields }; var uriParams = request.GetUriPathParameters(); uriParams.Should().NotBeNull().And.NotBeEmpty().And.HaveCount(3); uriParams.Should().Contain(new Dictionary <string, object> { ["type"] = resultTypes.UriName, ["query"] = query, ["fields"] = fields.UriName }); }
public void TestTraktSearchTextQueryRequestHasValidUriTemplate() { var request = new TraktSearchTextQueryRequest(null); request.UriTemplate.Should().Be("search/{type}{?query,fields,years,genres,languages,countries,runtimes,ratings,extended,page,limit}"); }
public void TestTraktSearchTextQueryRequestHasAuthorizationNotRequired() { var request = new TraktSearchTextQueryRequest(null); request.AuthorizationRequirement.Should().Be(TraktAuthorizationRequirement.NotRequired); }