mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-04-27 07:48:01 -07:00
93 lines
2.8 KiB
TypeScript
93 lines
2.8 KiB
TypeScript
vi.mock('../../WebClient');
|
|
|
|
import { makeCallbackHelpers } from '../../__mocks__/callbackHelpers';
|
|
import { WebClient } from '../../WebClient';
|
|
import { adjustMod } from './adjustMod';
|
|
import { reloadConfig } from './reloadConfig';
|
|
import { shutdownServer } from './shutdownServer';
|
|
import { updateServerMessage } from './updateServerMessage';
|
|
import {
|
|
Command_AdjustMod_ext,
|
|
Command_ReloadConfig_ext,
|
|
Command_ShutdownServer_ext,
|
|
Command_UpdateServerMessage_ext,
|
|
} from '@app/generated';
|
|
|
|
import { Mock } from 'vitest';
|
|
|
|
const { invokeOnSuccess } = makeCallbackHelpers(
|
|
WebClient.instance.protobuf.sendAdminCommand as Mock,
|
|
2
|
|
);
|
|
|
|
describe('adjustMod', () => {
|
|
|
|
it('calls sendAdminCommand with Command_AdjustMod extension and fields', () => {
|
|
adjustMod('alice', true, false);
|
|
expect(WebClient.instance.protobuf.sendAdminCommand).toHaveBeenCalledWith(
|
|
Command_AdjustMod_ext,
|
|
expect.objectContaining({ userName: 'alice', shouldBeMod: true, shouldBeJudge: false }),
|
|
expect.any(Object)
|
|
);
|
|
});
|
|
|
|
it('onSuccess calls response.admin.adjustMod', () => {
|
|
adjustMod('alice', true, false);
|
|
invokeOnSuccess();
|
|
expect(WebClient.instance.response.admin.adjustMod).toHaveBeenCalledWith('alice', true, false);
|
|
});
|
|
});
|
|
|
|
describe('reloadConfig', () => {
|
|
|
|
it('calls sendAdminCommand with Command_ReloadConfig extension', () => {
|
|
reloadConfig();
|
|
expect(WebClient.instance.protobuf.sendAdminCommand).toHaveBeenCalledWith(
|
|
Command_ReloadConfig_ext,
|
|
expect.any(Object),
|
|
expect.any(Object)
|
|
);
|
|
});
|
|
|
|
it('onSuccess calls response.admin.reloadConfig', () => {
|
|
reloadConfig();
|
|
invokeOnSuccess();
|
|
expect(WebClient.instance.response.admin.reloadConfig).toHaveBeenCalled();
|
|
});
|
|
});
|
|
|
|
describe('shutdownServer', () => {
|
|
|
|
it('calls sendAdminCommand with Command_ShutdownServer extension and fields', () => {
|
|
shutdownServer('maintenance', 10);
|
|
expect(WebClient.instance.protobuf.sendAdminCommand).toHaveBeenCalledWith(
|
|
Command_ShutdownServer_ext,
|
|
expect.objectContaining({ reason: 'maintenance', minutes: 10 }),
|
|
expect.any(Object)
|
|
);
|
|
});
|
|
|
|
it('onSuccess calls response.admin.shutdownServer', () => {
|
|
shutdownServer('maintenance', 10);
|
|
invokeOnSuccess();
|
|
expect(WebClient.instance.response.admin.shutdownServer).toHaveBeenCalled();
|
|
});
|
|
});
|
|
|
|
describe('updateServerMessage', () => {
|
|
|
|
it('calls sendAdminCommand with Command_UpdateServerMessage extension', () => {
|
|
updateServerMessage();
|
|
expect(WebClient.instance.protobuf.sendAdminCommand).toHaveBeenCalledWith(
|
|
Command_UpdateServerMessage_ext,
|
|
expect.any(Object),
|
|
expect.any(Object)
|
|
);
|
|
});
|
|
|
|
it('onSuccess calls response.admin.updateServerMessage', () => {
|
|
updateServerMessage();
|
|
invokeOnSuccess();
|
|
expect(WebClient.instance.response.admin.updateServerMessage).toHaveBeenCalled();
|
|
});
|
|
});
|