def test_add_exist_account(self, config, empty_monitor_db: MonitorDB): assert eval_send_messages( config, empty_monitor_db, ["!tc add tt4bot"], [r"^\[INFO\] アカウントの登録に成功しました.アカウント名: tt4bot, 正規表現: None$"], 5, )
def test_remove_added_account(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc add tt4bot", "!tc remove tt4bot"], [r"^\[INFO\] アカウントの削除に成功しました.アカウント名: tt4bot$"], 5, )
def test_invalid_command(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc invalid_command"], [r"^\[ERROR\] コマンドが不正です.'!tc help'を参照してください.$"], 5, )
def test_list_with_empty_accounts(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc list"], [r"^\[INFO\] 登録済みのアカウントはありません.$"], 5, )
def test_remove_non_added_account(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc remove tt4bot"], [r"^\[ERROR\] 登録されていないアカウントです.アカウント名: tt4bot$"], 5, )
def test_list_with_one_added_account(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc add tt4bot", "!tc list"], [r"^\[INFO\] 登録済みのアカウント:" r"\r・アカウント名: tt4bot, 正規表現: None$"], 5, )
def test_add_account_in_db(self, config, empty_monitor_db): db = empty_monitor_db db.insert(config.test_channel_id, TT4BOT_USER_ID, None) assert eval_send_messages( config, db, ["!tc add tt4bot"], [r"^\[ERROR\] 既に登録されているアカウントです.アカウント名: tt4bot$"], 5, )
def test_add_not_exist_account(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc add NON_EXSITING_ACCOUNT_202102212056"], [ r"^\[ERROR\] 存在しないアカウントです.アカウント名: NON_EXSITING_ACCOUNT_202102212056$" ], 5, )
def test_remove_account_in_db(self, config, empty_monitor_db): db = empty_monitor_db db.insert(config.test_channel_id, TT4BOT_USER_ID, None) assert eval_send_messages( config, db, ["!tc remove tt4bot"], [r"^\[INFO\] アカウントの削除に成功しました.アカウント名: tt4bot$"], 5, )
def test_add_account_twice(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc add tt4bot", "!tc add tt4bot"], [ r"^\[INFO\] アカウントの登録に成功しました.アカウント名: tt4bot, 正規表現: None$", r"^\[ERROR\] 既に登録されているアカウントです.アカウント名: tt4bot$", ], 5, )
def test_add_exist_account_with_regular_expression( self, config, empty_monitor_db: MonitorDB): assert eval_send_messages( config, empty_monitor_db, [r"!tc add tt4bot 'mildom\.com'"], [ r"^\[INFO\] アカウントの登録に成功しました.アカウント名: tt4bot, 正規表現: 'mildom\\\\\.com'$" ], 5, )
def test_list_with_two_added_accounts(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc add tt4bot", r"!tc add TwitterJP 'mildom\.com'", "!tc list"], [ r"^\[INFO\] 登録済みのアカウント:" r"\r・アカウント名: tt4bot, 正規表現: None" r"\r・アカウント名: TwitterJP, 正規表現: 'mildom\\\\\.com'$" ], 5, )
def test_list_with_two_accounts_in_db(self, config, empty_monitor_db): db = empty_monitor_db db.insert(config.test_channel_id, TT4BOT_USER_ID, None) db.insert(config.test_channel_id, TWITTER_JP_USER_ID, r"mildom\.com") assert eval_send_messages( config, empty_monitor_db, ["!tc list"], [ r"^\[INFO\] 登録済みのアカウント:" r"\r・アカウント名: tt4bot, 正規表現: None" r"\r・アカウント名: TwitterJP, 正規表現: 'mildom\\\\\.com'$" ], 5, )
def test_help(self, config, empty_monitor_db): assert eval_send_messages( config, empty_monitor_db, ["!tc help"], [ r"^\[INFO\] コマンド仕様:" r"\r・!tc add <アカウント名> \[<正規表現パターン>\]: 収集対象のアカウントを登録" r"\r 例: !tc add moujaatumare 'mildom\\\\\.com'" r"\r 動作: 'mildom\.com'を含むなるおのツイートのみ抽出(短縮リンクは展開)" r"\r・!tc remove <アカウント名>: 登録済みのアカウントを削除" r"\r・!tc list: 登録済みのアカウントの一覧表示" r"\r・!tc help: コマンド仕様を表示$" ], 5, )
def test_invalid_main_command(self, config, empty_monitor_db): assert eval_send_messages(config, empty_monitor_db, ["!tcc add"], [], 5)