Skip to content

Commit

Permalink
Merge branch 'main' into feature/avoid-echo-back-on-stfu
Browse files Browse the repository at this point in the history
  • Loading branch information
MikuroXina committed Jul 23, 2022
2 parents 503c0d8 + 0828103 commit 0b7ae2b
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 1 deletion.
37 changes: 37 additions & 0 deletions src/service/meme.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,24 @@ describe('meme', () => {
);
});

it('use case of web3', async () => {
await responder.on(
'CREATE',
createMockMessage(
{
args: ['web3', 'Rust']
},
(message) => {
expect(message).toStrictEqual({
description:
'```\n「いちばんやさしいRustの教本」 - インプレス \n```'
});
return Promise.resolve();
}
)
);
});

it('args space', async () => {
await responder.on(
'CREATE',
Expand Down Expand Up @@ -237,6 +255,25 @@ describe('meme', () => {
);
});

it('args null (web3)', async () => {
await responder.on(
'CREATE',
createMockMessage(
{
args: ['web3']
},
(message) => {
expect(message).toStrictEqual({
title: '引数が不足してるみたいだ。',
description:
'TCP/IP、SMTP、HTTPはGoogleやAmazonに独占されています。'
});
return Promise.resolve();
}
)
);
});

it('delete message', async () => {
const fn = vi.fn();
await responder.on(
Expand Down
3 changes: 2 additions & 1 deletion src/service/meme.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@ import { n } from './meme/n.js';
import { nigetane } from './meme/nigetane.js';
import parse from 'cli-argparse';
import { takopi } from './meme/takopi.js';
import { web3 } from './meme/web3.js';

const memes = [dousurya, hukueki, lolicon, n, takopi, nigetane];
const memes = [dousurya, hukueki, lolicon, n, takopi, nigetane, web3];
const memesByCommandName: Record<
string,
MemeTemplate<string, string> | undefined
Expand Down
13 changes: 13 additions & 0 deletions src/service/meme/web3.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import type { MemeTemplate } from '../../model/meme-template.js';

export const web3: MemeTemplate<never, never> = {
commandNames: ['web3'],
description: '「いちばんやさしい〇〇の教本」',
flagsKeys: [],
optionsKeys: [],
errorMessage: 'TCP/IP、SMTP、HTTPはGoogleやAmazonに独占されています。',
generate(args) {
const we3Meme = `「いちばんやさしい${args.body}の教本」 - インプレス `;
return '```\n' + we3Meme + '\n```';
}
};

0 comments on commit 0b7ae2b

Please sign in to comment.