def test_auto_summon(): q = queue.Queue() ec = events.EventClassifier() prompt.Prompt(ec) clerbot = cler.ClerBot(q, ec, u"Дарсу") init_group(clerbot, group_setup) for s, mode in group_headers: if mode == "NEAR": clerbot.mudfilter(s) break assert clerbot.mode() == "NEAR" for g_member in group1_near: clerbot.mudfilter(g_member) ec.mudfilter(p1) assert q.get_nowait().command() == u"cast призыв Алиант" ec.mudfilter("Вы произнесли магические слова 'призыв'...") ec.mudfilter("Алиант неожиданно появился.") ec.mudfilter(p1) assert q.get_nowait().command() == u"cast призыв Цушка" ec.mudfilter("Вы произнесли магические слова 'призыв'...") assert q.empty() return q, clerbot
def test_unstone(): q = queue.Queue() ec = events.EventClassifier() prompt.Prompt(ec) clerbot = cler.ClerBot(q, ec, u"Дарсу") init_group(clerbot, group_setup) for s, mode in group_headers: if mode == "HEALTH": clerbot.mudfilter(s) break assert clerbot.mode() == "HEALTH" clerbot.mudfilter(color2_test.replace("^[", chr(27))) ec.mudfilter(p1) assert q.get_nowait().command() == u"cast живое.прикосновение Шыгос" init_group(clerbot, stone_setup) for s, mode in group_headers: if mode == "HEALTH": clerbot.mudfilter(s) break assert clerbot.mode() == "HEALTH" for s in stone_test: clerbot.mudfilter(s.replace("^[", chr(27))) ec.mudfilter(p1) assert q.get_nowait().command() == u"cast живое.прикосновение Китаст"
def test_assist_battle_prompt_regexp(): p1 = u"320H 243M 174V 5MX 0C [Оланги:Великолепное]-[Дарсу:Жив] [рыжая белочка:Умирает] Вых:СЮЗ> " ec = events.EventClassifier() p = prompt.Prompt(ec) ec.mudfilter(p1) assert p.current() assert p.exits() == u"СЮЗ"
def test_check(): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) magebot = mage.MageBot(q, event_classifier, u"Эригон") init_group(event_classifier, group_setup) magebot.mudfilter(u"Вы произнесли магические слова 'гроза'...") assert q.get_nowait().command() == u"пгр поз ряд"
def test_following(): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) magebot = mage.MageBot(q, event_classifier, u"Эригон") init_group(event_classifier, group_setup) magebot.mudfilter(u"Вы последовали за Дарсу.") assert q.get_nowait().command() == u"пгр поз ряд" return q, magebot
def test_frag_mod(): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) group_mod = bot.GroupListMod(q, event_classifier, u"Эригон") mod = bot.FragMod(q, event_classifier, group_mod) init_group(event_classifier, group_setup) for s, mode in group_headers: event_classifier.mudfilter(s) if mode == "POSITION": assert mod.mode() event_classifier.mudfilter(p1) assert (mod.mode() == None)
def test_prompt_regexp(): p1 = u"876H 1009M 66V 51503MX 0C Вых:В>" nonp1 = "not prompt" nonp2 = u"MX 0C Вых:В>" ec = events.EventClassifier() p = prompt.Prompt(ec) ec.mudfilter(p1) assert p.current() assert p.exits() == u"В" ec.mudfilter(nonp1) assert not p.current() ec.mudfilter(nonp2) assert not p.current()
def test_cast(): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) magebot = mage.MageBot(q, event_classifier, u"Эригон") init_group(event_classifier, group_setup) for s, mode in group_headers: if mode == "POSITION": event_classifier.mudfilter(s) break for g_member in group1_fight: event_classifier.mudfilter(g_member) event_classifier.mudfilter(p1) assert q.get_nowait().command() == u"cast гроза"
def test_rotation(): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) magebot = mage.MageBot(q, event_classifier, u"Эригон") init_group(event_classifier, group_setup) advance_battle_round(event_classifier) assert q.get_nowait().command() == u"cast гроза" event_classifier.mudfilter(u"Вы произнесли магические слова 'гроза'...") assert q.get_nowait().command() == u"пгр поз ряд" advance_battle_round(event_classifier) assert q.get_nowait().command() == u"cast гроза" return q, magebot
def test_undrain(): q = queue.Queue() ec = events.EventClassifier() prompt.Prompt(ec) clerbot = cler.ClerBot(q, ec, u"Дарсу") init_group(ec, group_setup) for s, mode in group_headers: if mode == "HEALTH": clerbot.mudfilter(s) break assert clerbot.mode() == "HEALTH" for g_member in group1_health: clerbot.mudfilter(g_member) ec.mudfilter(p1) assert q.get_nowait().command() == u"cast слово.силы Шыгос"
def test_stand_up(monkeypatch): q = queue.Queue() event_classifier = events.EventClassifier() prompt.Prompt(event_classifier) group_mod = bot.GroupListMod(q, event_classifier, u"Эригон") mod = bot.FragMod(q, event_classifier, group_mod) def cmd(command, **kwargs): assert command == "stand" monkeypatch.setattr(exported, "lyntin_command", cmd) init_group(event_classifier, group_setup) for s, mode in group_headers: if mode == "POSITION": event_classifier.mudfilter(s) break for g_member in group1_stand: event_classifier.mudfilter(g_member) event_classifier.mudfilter(p1)
def test_stand_up(monkeypatch): q = queue.Queue() ec = events.EventClassifier() prompt.Prompt(ec) clerbot = cler.ClerBot(q, ec, u"Дарсу") def cmd(command, **kwargs): assert command == "stand" monkeypatch.setattr(exported, "lyntin_command", cmd) init_group(clerbot, group_setup) for s, mode in group_headers: if mode == "HEALTH": clerbot.mudfilter(s) break assert clerbot.mode() == "HEALTH" for g_member in group1_stand: clerbot.mudfilter(g_member) ec.mudfilter(p1)