Add mocking of webbrowser

This commit is contained in:
Åke Forslund 2019-11-06 14:52:20 +01:00
parent e5677e4730
commit a869615d8e
5 changed files with 22 additions and 0 deletions

22
test/__init__.py Normal file
View File

@ -0,0 +1,22 @@
from test.integrationtests.skills.skill_tester import SkillTest
import mock
SEARCH_BASE = 'http://www.google.com/search?&sourceid=navclient&btnI=I&q={}'
@mock.patch('mycroft.skills.mycroft_skill.mycroft_skill.DeviceApi.send_email')
def test_runner(skill, example, emitter, loader, m1):
s = [s for s in loader.skills if s and s.root_dir == skill][0]
with mock.patch('webbrowser.open') as m:
ret = SkillTest(skill, example, emitter).run(loader)
if example.endswith('find.puppies.json'):
m.assert_called_with(SEARCH_BASE.format('wikipedia%20puppies'))
elif example.endswith('find.puppies.json'):
m.assert_called_with(SEARCH_BASE.format('imgur'))
elif example.endswith('open.tumblr.json'):
m.assert_called_with(SEARCH_BASE.format('tumblr'))
elif example.endswith('search.for.kittens.json'):
m.assert_called_with(SEARCH_BASE.format('youtube%20for%20kittens'))
return ret