Skip to content

Commit

Permalink
fix(searchGroupUsers func): searchOptions is now an optional parameter
Browse files Browse the repository at this point in the history
ISSUES CLOSED: #615
  • Loading branch information
drewdaemon committed Sep 3, 2019
1 parent d49159f commit d54bddb
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 21 deletions.
4 changes: 2 additions & 2 deletions packages/arcgis-rest-portal/src/groups/get.ts
Expand Up @@ -136,11 +136,11 @@ export interface ISearchGroupUsersResult {
*/
export function searchGroupUsers(
id: string,
searchOptions: ISearchGroupUsersOptions
searchOptions?: ISearchGroupUsersOptions
): Promise<ISearchGroupUsersResult> {
const url = `${getPortalUrl(searchOptions)}/community/groups/${id}/userlist`;
const options = appendCustomParams<ISearchGroupUsersOptions>(
searchOptions,
searchOptions || {},
["name", "num", "start", "sortField", "sortOrder", "joined", "memberType"],
{
httpMethod: "GET"
Expand Down
57 changes: 38 additions & 19 deletions packages/arcgis-rest-portal/test/groups/get.test.ts
Expand Up @@ -104,33 +104,52 @@ describe("groups", () => {
});
});

it("should search group users", done => {
fetchMock.once("*", SearchGroupUsersResponse);
describe("search group users", function() {
it("should search group users", done => {
fetchMock.once("*", SearchGroupUsersResponse);

searchGroupUsers("5bc", {
params: {
searchGroupUsers("5bc", {
name: "jupe",
sortField: "fullname",
sortOrder: "asc",
num: 2,
start: 2,
joined: [null, 123456],
memberType: "member"
},
...MOCK_REQOPTS
})
.then(response => {
expect(fetchMock.called()).toEqual(true);
const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
expect(url).toEqual(
"https://myorg.maps.arcgis.com/sharing/rest/community/groups/5bc/userlist?f=json&name=jupe&sortField=fullname&sortOrder=asc&num=2&start=2&joined=%2C123456&memberType=member&token=fake-token"
);
expect(options.method).toBe("GET");
done();
memberType: "member",
...MOCK_REQOPTS
})
.catch(e => {
fail(e);
});
.then(response => {
expect(fetchMock.called()).toEqual(true);
const [url, options]: [string, RequestInit] = fetchMock.lastCall(
"*"
);
expect(url).toEqual(
"https://myorg.maps.arcgis.com/sharing/rest/community/groups/5bc/userlist?f=json&name=jupe&num=2&start=2&sortField=fullname&sortOrder=asc&joined=%2C123456&memberType=member&token=fake-token"
);
expect(options.method).toBe("GET");
done();
})
.catch(e => {
fail(e);
});
});

it("shouldn't require searchOptions", done => {
fetchMock.once("*", SearchGroupUsersResponse);

searchGroupUsers("5bc")
.then(_ => {
expect(fetchMock.called()).toEqual(true);
const [__, options]: [string, RequestInit] = fetchMock.lastCall(
"*"
);
expect(options.method).toBe("GET");
done();
})
.catch(e => {
fail(e);
});
});
});
});
});

0 comments on commit d54bddb

Please sign in to comment.