hbmartin commited on
Commit
f1b9623
·
1 Parent(s): beb68c9

added tests

Browse files
pytube/request.py CHANGED
@@ -8,7 +8,7 @@ from urllib.request import urlopen
8
  def _execute_request(url: str) -> Any:
9
  if not url.lower().startswith("http"):
10
  raise ValueError
11
- return urlopen(Request(url, headers={"User-Agent": "Mozilla/5.0"}))
12
 
13
 
14
  def get(url) -> str:
 
8
  def _execute_request(url: str) -> Any:
9
  if not url.lower().startswith("http"):
10
  raise ValueError
11
+ return urlopen(Request(url, headers={"User-Agent": "Mozilla/5.0"})) # nosec
12
 
13
 
14
  def get(url) -> str:
tests/test_captions.py CHANGED
@@ -85,3 +85,12 @@ def test_repr():
85
  {"url": "url1", "name": {"simpleText": "name1"}, "languageCode": "en"}
86
  )
87
  assert str(caption) == '<Caption lang="name1" code="en">'
 
 
 
 
 
 
 
 
 
 
85
  {"url": "url1", "name": {"simpleText": "name1"}, "languageCode": "en"}
86
  )
87
  assert str(caption) == '<Caption lang="name1" code="en">'
88
+
89
+
90
+ @mock.patch("pytube.request.get")
91
+ def test_xml_captions(request_get):
92
+ request_get.return_value = "test"
93
+ caption = Caption(
94
+ {"url": "url1", "name": {"simpleText": "name1"}, "languageCode": "en"}
95
+ )
96
+ assert caption.xml_captions == "test"
tests/test_cli.py CHANGED
@@ -156,3 +156,14 @@ def test_main_download_caption(youtube):
156
  cli.main()
157
  youtube.assert_called()
158
  cli.download_caption.assert_called()
 
 
 
 
 
 
 
 
 
 
 
 
156
  cli.main()
157
  youtube.assert_called()
158
  cli.download_caption.assert_called()
159
+
160
+
161
+ @mock.patch("pytube.cli.YouTube.__init__", return_value=None)
162
+ def test_download_by_resolution(youtube):
163
+ parser = argparse.ArgumentParser()
164
+ args = parse_args(parser, ["urlhere", "-r", "720p"])
165
+ cli._parse_args = MagicMock(return_value=args)
166
+ cli.download_by_resolution = MagicMock()
167
+ cli.main()
168
+ youtube.assert_called()
169
+ cli.download_by_resolution.assert_called()
tests/test_request.py CHANGED
@@ -3,6 +3,8 @@ import os
3
 
4
  from unittest import mock
5
 
 
 
6
  from pytube import request
7
 
8
 
@@ -39,3 +41,8 @@ def test_get(mock_urlopen):
39
  mock_urlopen.return_value = response
40
  response = request.get("http://fakeassurl.gov")
41
  assert response == "<html></html>"
 
 
 
 
 
 
3
 
4
  from unittest import mock
5
 
6
+ import pytest
7
+
8
  from pytube import request
9
 
10
 
 
41
  mock_urlopen.return_value = response
42
  response = request.get("http://fakeassurl.gov")
43
  assert response == "<html></html>"
44
+
45
+
46
+ def test_get_non_http():
47
+ with pytest.raises(ValueError):
48
+ request.get("file://bad")