summaryrefslogtreecommitdiff
path: root/tests/unit/test_utils.py
diff options
context:
space:
mode:
authorNejc Habjan <hab.nejc@gmail.com>2021-11-28 00:50:49 +0100
committerNejc Habjan <hab.nejc@gmail.com>2021-11-28 02:37:30 +0100
commitc5b2148c5b6dc27a158a7b4e9633dc9f5bdea3a4 (patch)
treeaa46e9cf608045c6fda2e739937ff0dbf589bf01 /tests/unit/test_utils.py
parent09a973ee379d82af05a5080decfaec16d2f4eab3 (diff)
downloadgitlab-test/gitlab-coverage.tar.gz
test(gitlab): increase base and utils coveragetest/gitlab-coverage
Diffstat (limited to 'tests/unit/test_utils.py')
-rw-r--r--tests/unit/test_utils.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/unit/test_utils.py b/tests/unit/test_utils.py
index dbe0838..8506f79 100644
--- a/tests/unit/test_utils.py
+++ b/tests/unit/test_utils.py
@@ -15,6 +15,10 @@
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+import pytest
+import requests
+import responses
+
from gitlab import utils
@@ -40,3 +44,47 @@ def test_sanitized_url():
src = "http://localhost/foo.bar.baz"
dest = "http://localhost/foo%2Ebar%2Ebaz"
assert dest == utils.sanitized_url(src)
+
+
+@responses.activate
+def test_response_content(capsys):
+ responses.add(
+ method="GET",
+ url="https://example.com",
+ status=200,
+ body="test",
+ content_type="application/octet-stream",
+ )
+
+ resp = requests.get("https://example.com", stream=True)
+ utils.response_content(resp, streamed=True, action=None, chunk_size=1024)
+
+ captured = capsys.readouterr()
+ assert "test" in captured.out
+
+
+@pytest.mark.parametrize(
+ "source,expected",
+ [
+ ({"a": "", "b": "spam", "c": None}, {"a": "", "b": "spam", "c": None}),
+ ({"a": "", "b": {"c": "spam"}}, {"a": "", "b[c]": "spam"}),
+ ],
+)
+def test_copy_dict(source, expected):
+ dest = {}
+
+ utils.copy_dict(dest, source)
+ assert dest == expected
+
+
+@pytest.mark.parametrize(
+ "dictionary,expected",
+ [
+ ({"a": None, "b": "spam"}, {"b": "spam"}),
+ ({"a": "", "b": "spam"}, {"a": "", "b": "spam"}),
+ ({"a": None, "b": None}, {}),
+ ],
+)
+def test_remove_none_from_dict(dictionary, expected):
+ result = utils.remove_none_from_dict(dictionary)
+ assert result == expected