mirror of
https://github.com/kennethreitz/pipenv.git
synced 2026-06-05 22:50:18 +00:00
Add tests
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
# Make sure we use the patched packages.
|
||||
import pipenv # noqa
|
||||
import os
|
||||
|
||||
from prettytoml import lexer
|
||||
from prettytoml.elements.atomic import AtomicElement
|
||||
@@ -7,6 +8,7 @@ from prettytoml.elements.metadata import (
|
||||
WhitespaceElement, PunctuationElement, CommentElement
|
||||
)
|
||||
from prettytoml.elements.table import TableElement
|
||||
from pipenv.vendor.pipfile.api import PipfileParser
|
||||
|
||||
|
||||
def test_table():
|
||||
@@ -27,3 +29,36 @@ def test_table():
|
||||
assert set(table.items()) == {('id', 42), ('age', 14)}
|
||||
del table['id']
|
||||
assert set(table.items()) == {('age', 14)}
|
||||
|
||||
|
||||
class TestPipfileParser:
|
||||
|
||||
def test_inject_environment_variables(self):
|
||||
os.environ['PYTEST_PIPFILE_TEST'] = "XYZ"
|
||||
p = PipfileParser()
|
||||
|
||||
parsed_dict = p.inject_environment_variables({
|
||||
"a_string": "https://$PYTEST_PIPFILE_TEST@something.com",
|
||||
"another_string": "https://${PYTEST_PIPFILE_TEST}@something.com",
|
||||
"nested": {
|
||||
"a_string": "https://$PYTEST_PIPFILE_TEST@something.com",
|
||||
"another_string": "${PYTEST_PIPFILE_TEST}",
|
||||
},
|
||||
"list": [
|
||||
{
|
||||
"a_string": "https://$PYTEST_PIPFILE_TEST@something.com",
|
||||
"another_string": "${PYTEST_PIPFILE_TEST}"
|
||||
},
|
||||
{},
|
||||
],
|
||||
"bool": True,
|
||||
"none": None,
|
||||
})
|
||||
|
||||
assert parsed_dict["a_string"] == "https://XYZ@something.com"
|
||||
assert parsed_dict["another_string"] == "https://XYZ@something.com"
|
||||
assert parsed_dict["nested"]["another_string"] == "XYZ"
|
||||
assert parsed_dict["list"][0]["a_string"] == "https://XYZ@something.com"
|
||||
assert parsed_dict["list"][1] == {}
|
||||
assert parsed_dict["bool"] is True
|
||||
assert parsed_dict["none"] is None
|
||||
|
||||
Reference in New Issue
Block a user