You've already forked matrix-js-sdk
mirror of
https://github.com/matrix-org/matrix-js-sdk.git
synced 2025-07-31 15:24:23 +03:00
add client method to remove pusher (#3324)
* add client method to remove pusher * remove unused type
This commit is contained in:
@ -2909,4 +2909,43 @@ describe("MatrixClient", function () {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe("pushers", () => {
|
||||||
|
const pusher = {
|
||||||
|
app_id: "test",
|
||||||
|
app_display_name: "Test App",
|
||||||
|
data: {},
|
||||||
|
device_display_name: "test device",
|
||||||
|
kind: "http",
|
||||||
|
lang: "en-NZ",
|
||||||
|
pushkey: "1234",
|
||||||
|
};
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
makeClient();
|
||||||
|
const response: HttpLookup = {
|
||||||
|
method: Method.Post,
|
||||||
|
path: "/pushers/set",
|
||||||
|
data: {},
|
||||||
|
};
|
||||||
|
httpLookups = [response];
|
||||||
|
jest.spyOn(client.http, "authedRequest").mockClear();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should make correct request to set pusher", async () => {
|
||||||
|
const result = await client.setPusher(pusher);
|
||||||
|
expect(client.http.authedRequest).toHaveBeenCalledWith(Method.Post, "/pushers/set", undefined, pusher);
|
||||||
|
expect(result).toEqual({});
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should make correct request to remove pusher", async () => {
|
||||||
|
const result = await client.removePusher(pusher.pushkey, pusher.app_id);
|
||||||
|
expect(client.http.authedRequest).toHaveBeenCalledWith(Method.Post, "/pushers/set", undefined, {
|
||||||
|
pushkey: pusher.pushkey,
|
||||||
|
app_id: pusher.app_id,
|
||||||
|
kind: null,
|
||||||
|
});
|
||||||
|
expect(result).toEqual({});
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
@ -8627,6 +8627,23 @@ export class MatrixClient extends TypedEventEmitter<EmittedEvents, ClientEventHa
|
|||||||
return this.http.authedRequest(Method.Post, path, undefined, pusher);
|
return this.http.authedRequest(Method.Post, path, undefined, pusher);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes an existing pusher
|
||||||
|
* @param pushKey - pushkey of pusher to remove
|
||||||
|
* @param appId - app_id of pusher to remove
|
||||||
|
* @returns Promise which resolves: Empty json object on success
|
||||||
|
* @returns Rejects: with an error response.
|
||||||
|
*/
|
||||||
|
public removePusher(pushKey: string, appId: string): Promise<{}> {
|
||||||
|
const path = "/pushers/set";
|
||||||
|
const body = {
|
||||||
|
pushkey: pushKey,
|
||||||
|
app_id: appId,
|
||||||
|
kind: null, // marks pusher for removal
|
||||||
|
};
|
||||||
|
return this.http.authedRequest(Method.Post, path, undefined, body);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Persists local notification settings
|
* Persists local notification settings
|
||||||
* @returns Promise which resolves: an empty object
|
* @returns Promise which resolves: an empty object
|
||||||
|
Reference in New Issue
Block a user