async def test_carrierscanner_parse_sheet(session, f_track_testbed): fake_sheet = aiomock.AIOMock() fake_sheet.whole_sheet.async_return_value = [["Carrier ID", "Squadron"], ['XJ1-222', "Baddies"], ['FX3-42A', "Baddies"]] r_scanner = CarrierScanner(fake_sheet) await r_scanner.update_cells() r_scanner.parse_sheet(session) found = session.query(TrackByID).filter(TrackByID.id.in_(['XJ1-222', 'FX3-42A'])).all() assert len(found) == 2
def mock_inter(values): inter = aiomock.AIOMock(values=values, sent=[]) inter.component.label = inter.values[0] inter.sent = [] async def send_(resp): inter.sent += [resp] inter.send = send_ return inter
async def test_carrierscanner_parse_carriers(): fake_sheet = aiomock.AIOMock() fake_sheet.whole_sheet.async_return_value = [["Carrier ID", "Squadron"], ['XJ1-222', "Baddies"], ['FX3-42A', "Baddies"]] r_scanner = CarrierScanner(fake_sheet) await r_scanner.update_cells() expected = { 'XJ1-222': { 'id': 'XJ1-222', 'squad': 'Baddies', 'override': True }, 'FX3-42A': { 'id': 'FX3-42A', 'squad': 'Baddies', 'override': True } } assert r_scanner.carriers() == expected
def f_bot(): """ Return a mocked bot. Bot must have methods: bot.send_message bot.send_long_message bot.send_ttl_message bot.delete_message bot.emoji.fix - EmojiResolver tested elsewhere bot.loop.run_in_executor, None, func, *args bot.get_member_by_substr Bot must have attributes: bot.uptime bot.prefix """ member = aiomock.Mock() member.mention = "@Gears" fake_bot = aiomock.AIOMock(uptime=5, prefix="!") fake_bot.send_message.async_return_value = fake_msg_gears( "A message to send.") fake_bot.send_ttl_message.async_return_value = fake_msg_gears( "A ttl message to send.") fake_bot.send_long_message.async_return_value = fake_msg_gears( "A long message to send.") fake_bot.get_member_by_substr.return_value = member fake_bot.wait_for.async_return_value = None # Whenever wait_for needed, put message here. fake_bot.emoji.fix = lambda x, y: x fake_bot.guilds = fake_servers() fake_bot.get_channel_by_name.return_value = 'private_dev' def fake_exec(_, func, *args): return func(*args) fake_bot.loop.run_in_executor.async_side_effect = fake_exec tick.util.BOT = fake_bot yield fake_bot tick.util.BOT = None
async def test_recruitsscanner_update_first_free(): fake_sheet = aiomock.AIOMock() fake_sheet.whole_sheet.async_return_value = [['1'], ['2'], ['3'], ['4'], ['5'], ['6'], ['7']] r_scanner = RecruitsScanner(fake_sheet) await r_scanner.update_cells() assert r_scanner.update_first_free() == 8