1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import pathlib
- from unittest.mock import patch
- import pytest
- from yamily._cli import _list
- @patch("sys.argv", ["", "non/existing/file.yml"])
- def test__read_non_existing():
- with pytest.raises(FileNotFoundError):
- _list()
- @patch("sys.argv", ["", "persons/erika-mustermann.yml"])
- def test__list_single_simple(capsys):
- _list()
- out, err = capsys.readouterr()
- assert not err
- assert out == (
- "- !person\n"
- " birth_date: 1957-08-12\n"
- " identifier: erika-mustermann\n"
- " name: Erika Mustermann\n"
- )
- @patch("sys.argv", ["", "persons/max-mustermann.yml"])
- def test__list_single_parents(capsys):
- _list()
- out, err = capsys.readouterr()
- assert not err
- assert out == (
- "- &id001 !person\n"
- " identifier: erika-mustermann\n"
- "- !person\n"
- " birth_date: 1976-02-01\n"
- " father: &id002 !person\n"
- " identifier: thomas-mustermann\n"
- " identifier: max-mustermann\n"
- " mother: *id001\n"
- " name: Max Mustermann\n"
- "- *id002\n"
- )
- @patch("sys.argv", ["", "persons/max-mustermann.yml", "persons/erika-mustermann.yml"])
- def test__list_multiple(capsys):
- _list()
- out, err = capsys.readouterr()
- assert not err
- assert out == (
- "- &id001 !person\n"
- " birth_date: 1957-08-12\n"
- " identifier: erika-mustermann\n"
- " name: Erika Mustermann\n"
- "- !person\n"
- " birth_date: 1976-02-01\n"
- " father: &id002 !person\n"
- " identifier: thomas-mustermann\n"
- " identifier: max-mustermann\n"
- " mother: *id001\n"
- " name: Max Mustermann\n"
- "- *id002\n"
- )
- @patch("sys.argv", ["", "persons"])
- def test__list_recurse_dir(capsys):
- _list()
- out, err = capsys.readouterr()
- assert not err
- assert out == (
- "- &id001 !person\n"
- " birth_date: 1957-08-12\n"
- " identifier: erika-mustermann\n"
- " name: Erika Mustermann\n"
- "- !person\n"
- " birth_date: 1976-02-01\n"
- " father: &id002 !person\n"
- " identifier: thomas-mustermann\n"
- " identifier: max-mustermann\n"
- " mother: *id001\n"
- " name: Max Mustermann\n"
- "- *id002\n"
- )
|