2023-04-08 09:44:27 +09:00
|
|
|
import { expectType } from "tsd";
|
|
|
|
import * as Misskey from "../src";
|
|
|
|
|
|
|
|
describe("Streaming", () => {
|
|
|
|
test("emit type", async () => {
|
2023-08-21 23:14:53 +09:00
|
|
|
const stream = new Misskey.Stream("https://iceshrimp.test", {
|
2023-04-08 09:44:27 +09:00
|
|
|
token: "TOKEN",
|
|
|
|
});
|
|
|
|
const mainChannel = stream.useChannel("main");
|
|
|
|
mainChannel.on("notification", (notification) => {
|
|
|
|
expectType<Misskey.entities.Notification>(notification);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
test("params type", async () => {
|
2023-08-21 23:14:53 +09:00
|
|
|
const stream = new Misskey.Stream("https://iceshrimp.test", {
|
2023-04-08 09:44:27 +09:00
|
|
|
token: "TOKEN",
|
|
|
|
});
|
|
|
|
// TODO: 「stream.useChannel の第二引数として受け入れる型が
|
|
|
|
// {
|
|
|
|
// otherparty?: User['id'] | null;
|
|
|
|
// group?: UserGroup['id'] | null;
|
|
|
|
// }
|
|
|
|
// になっている」というテストを行いたいけどtsdでの書き方がわからない
|
|
|
|
const messagingChannel = stream.useChannel("messaging", {
|
|
|
|
otherparty: "aaa",
|
|
|
|
});
|
|
|
|
messagingChannel.on("message", (message) => {
|
|
|
|
expectType<Misskey.entities.MessagingMessage>(message);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|