diff --git a/steve/util.py b/steve/util.py index 87e2f6c..8cba683 100644 --- a/steve/util.py +++ b/steve/util.py @@ -10,6 +10,7 @@ import datetime import json import os +import pkgutil import string import sys import textwrap @@ -301,10 +302,8 @@ def generate_filename(text): def get_video_requirements(): - fn = os.path.join(os.path.dirname(__file__), 'video_reqs.json') - fp = open(fn) - data = json.load(fp) - fp.close() + binary_json_string = pkgutil.get_data('steve', 'video_reqs.json') + data = json.loads(binary_json_string.decode('UTF-8')) return data diff --git a/tests/test_utils.py b/tests/test_utils.py index 8421e64..87e6517 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -10,6 +10,7 @@ from steve.util import ( get_video_id, + get_video_requirements, html_to_markdown, is_youtube, SteveException, @@ -162,3 +163,10 @@ def test_get_video_id(): for url in data: with pytest.raises(SteveException): get_video_id(url) + + +def test_get_video_requirements(): + # Test fetching video_reqs.json from package + data = get_video_requirements() + assert type(data) == list + assert len(data) > 0