Test Version match (#887)

* [Tests] makes sure `--version` works
Directly reads the version number from pyproject.toml

* Tag the tests
To run just this test, use `behave --tags=deployments_tests`
This commit is contained in:
MinchinWeb 2020-04-11 13:28:22 -06:00
parent bd6bee47b8
commit 42bebd5632
4 changed files with 20 additions and 1 deletions

View file

@ -122,3 +122,10 @@ Feature: Zapped bugs should stay dead.
Then the output should contain "This thing happened yesterday"
Then the output should contain "Adding an entry right now."
Then the output should not contain "A future entry."
@deployment_tests
Scenario: Version numbers should stay in sync
Given we use the config "basic.yaml"
When we run "jrnl --version"
Then we should get no error
Then the output should contain pyproject.toml version

View file

@ -19,6 +19,8 @@ import keyring
import tzlocal
import shlex
import sys
from pathlib import Path
import toml
consts = pdt.Constants(usePyICU=False)
consts.DOWParseStyle = -1 # Prefers past weekdays
@ -207,6 +209,15 @@ def check_output_time_inline(context, text):
assert output_date in out, output_date
@then("the output should contain pyproject.toml version")
def check_output_version_inline(context):
out = context.stdout_capture.getvalue()
pyproject = (Path(__file__) / ".." / ".." / ".." / "pyproject.toml").resolve()
pyproject_contents = toml.load(pyproject)
pyproject_version = pyproject_contents["tool"]["poetry"]["version"]
assert pyproject_version in out, pyproject_version
@then("the output should contain")
@then('the output should contain "{text}"')
@then('the output should contain "{text}" or "{text2}"')

2
poetry.lock generated
View file

@ -522,7 +522,7 @@ docs = ["sphinx", "jaraco.packaging (>=3.2)", "rst.linker (>=1.9)"]
testing = ["jaraco.itertools", "func-timeout"]
[metadata]
content-hash = "17cf8d4cf5a772217160daf312f590901dea4a3f5545d003035f3fb713a70f07"
content-hash = "afeb906a1ba51bc9fc4e8c19c0b2c63bb5c9529697c9496d6edb64b509da9e0f"
python-versions = ">=3.6.0, <3.9.0"
[metadata.files]

View file

@ -35,6 +35,7 @@ behave = "^1.2"
mkdocs = "^1.0"
flake8 = "^3.7"
black = {version = "^19.10b0",allow-prereleases = true}
toml = "^0.10.0"
[tool.poetry.scripts]
jrnl = 'jrnl.cli:run'