========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================= test session starts ==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
platform linux -- Python 3.10.12, pytest-9.0.3, pluggy-1.6.0 -- /usr/bin/python3
cachedir: .pytest_cache
metadata: {'Python': '3.10.12', 'Platform': 'Linux-6.8.0-1025-gke-x86_64-with-glibc2.35', 'Packages': {'pytest': '9.0.3', 'pluggy': '1.6.0'}, 'Plugins': {'anyio': '4.13.0', 'mock': '3.15.1', 'metadata': '3.1.1', 'json-report': '1.5.0', 'cov': '7.1.0'}}
rootdir: /workspace/cookiecutter
configfile: setup.cfg
plugins: anyio-4.13.0, mock-3.15.1, metadata-3.1.1, json-report-1.5.0, cov-7.1.0
collected 16 items

tests/replay/test_dump.py::test_type_error_if_no_template_name PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            [  6%]
tests/replay/test_dump.py::test_type_error_if_not_dict_context PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            [ 12%]
tests/replay/test_dump.py::test_value_error_if_key_missing_in_context PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     [ 18%]
tests/replay/test_dump.py::test_ioerror_if_replay_dir_creation_fails PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      [ 25%]
tests/replay/test_dump.py::test_run_json_dump PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             [ 31%]
tests/replay/test_load.py::test_type_error_if_no_template_name PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            [ 37%]
tests/replay/test_load.py::test_value_error_if_key_missing_in_context PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     [ 43%]
tests/replay/test_load.py::test_io_error_if_no_replay_file PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                [ 50%]
tests/replay/test_load.py::test_run_json_load PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             [ 56%]
tests/replay/test_replay.py::test_get_replay_file_name[bar] PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               [ 62%]
tests/replay/test_replay.py::test_get_replay_file_name[bar.json] PASSED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          [ 68%]
tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs0] FAILED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  [ 75%]
tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs1] FAILED                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  [ 81%]
tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs2] FAILED                                                                                                                                                                                                                                                                                                                                                              <response clipped><NOTE>Due to the max output limit, only part of the full response has been shown to you.</NOTE>===================================================================================================================================================================================================================
_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ test_raise_on_invalid_mode[invalid_kwargs0] ______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

invalid_kwargs = {'no_input': True}

    @pytest.mark.parametrize(
        'invalid_kwargs',
        (
            {'no_input': True},
            {'extra_context': {}},
            {'no_input': True, 'extra_context': {}},
        ),
    )
    def test_raise_on_invalid_mode(invalid_kwargs):
        """Test `cookiecutter` raise exception on unacceptable `replay` request."""
>       with pytest.raises(exceptions.InvalidModeException):
E       Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>

tests/replay/test_replay.py:28: Failed
_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ test_raise_on_invalid_mode[invalid_kwargs1] ______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

invalid_kwargs = {'extra_context': {}}

    @pytest.mark.parametrize(
        'invalid_kwargs',
        (
            {'no_input': True},
            {'extra_context': {}},
            {'no_input': True, 'extra_context': {}},
        ),
    )
    def test_raise_on_invalid_mode(invalid_kwargs):
        """Test `cookiecutter` raise exception on unacceptable `replay` request."""
>       with pytest.raises(exceptions.InvalidModeException):
E       Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>

tests/replay/test_replay.py:28: Failed
_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ test_raise_on_invalid_mode[invalid_kwargs2] ______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

invalid_kwargs = {'extra_context': {}, 'no_input': True}

    @pytest.mark.parametrize(
        'invalid_kwargs',
        (
            {'no_input': True},
            {'extra_context': {}},
            {'no_input': True, 'extra_context': {}},
        ),
    )
    def test_raise_on_invalid_mode(invalid_kwargs):
        """Test `cookiecutter` raise exception on unacceptable `replay` request."""
>       with pytest.raises(exceptions.InvalidModeException):
E       Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>

tests/replay/test_replay.py:28: Failed
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ test_main_does_not_invoke_dump_but_load ________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

mocker = <pytest_mock.plugin.MockerFixture object at 0x72343da5f040>

    def test_main_does_not_invoke_dump_but_load(mocker):
        """Test `cookiecutter` calling correct functions on `replay`."""
        mock_prompt = mocker.patch('cookiecutter.main.prompt_for_config')
        mock_gen_context = mocker.patch('cookiecutter.main.generate_context')
        mock_gen_files = mocker.patch('cookiecutter.main.generate_files')
        mock_replay_dump = mocker.patch('cookiecutter.main.dump')
        mock_replay_load = mocker.patch('cookiecutter.main.load')

        main.cookiecutter('tests/fake-repo-tmpl/', replay=True)

        assert not mock_prompt.called
>       assert mock_gen_context.called
E       AssertionError: assert False
E        +  where False = <MagicMock name='generate_context' id='125568698143488'>.called

tests/replay/test_replay.py:43: AssertionError
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ test_main_does_not_invoke_load_but_dump ________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

mocker = <pytest_mock.plugin.MockerFixture object at 0x72343da5eb90>

    def test_main_does_not_invoke_load_but_dump(mocker):
        """Test `cookiecutter` calling correct functions on non-replay launch."""
        mock_prompt = mocker.patch('cookiecutter.main.prompt_for_config')
        mock_gen_context = mocker.patch('cookiecutter.main.generate_context')
        mock_gen_files = mocker.patch('cookiecutter.main.generate_files')
        mock_replay_dump = mocker.patch('cookiecutter.main.dump')
        mock_replay_load = mocker.patch('cookiecutter.main.load')

        main.cookiecutter('tests/fake-repo-tmpl/', replay=False)

>       assert mock_prompt.called
E       AssertionError: assert False
E        +  where False = <MagicMock name='prompt_for_config' id='125568696256976'>.called

tests/replay/test_replay.py:59: AssertionError
============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================ tests coverage ============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ coverage: platform linux, python 3.10.12-final-0 ___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Name                          Stmts   Miss  Cover   Missing
-----------------------------------------------------------
cookiecutter/__init__.py          6      0   100%
cookiecutter/__main__.py          1      1     0%   3
cookiecutter/cli.py              39     39     0%   2-53
cookiecutter/config.py           18      4    78%   15, 23, 27, 48
cookiecutter/environment.py      16      9    44%   21-27, 35, 49
cookiecutter/exceptions.py       23      4    83%   103-105, 109
cookiecutter/extensions.py       42     42     0%   2-72
cookiecutter/find.py              8      1    88%   15
cookiecutter/generate.py         30      7    77%   29, 33, 45, 68, 72, 84, 100
cookiecutter/hooks.py            28      7    75%   24, 38, 46, 55, 65, 77, 84
cookiecutter/log.py               6      6     0%   2-13
cookiecutter/main.py             25      5    80%   55-56, 59-60, 63
cookiecutter/prompt.py           48     15    69%   19, 28, 44, 51, 62, 70, 80, 89, 108, 112, 119, 126, 134, 144, 157
cookiecutter/replay.py           29      1    97%   13
cookiecutter/repository.py       16      5    69%   11, 15, 23, 31, 56
cookiecutter/utils.py            28      8    71%   20, 27, 34, 42, 49, 53, 57, 61
cookiecutter/vcs.py              17      3    82%   22, 30, 43
cookiecutter/zipfile.py          11      1    91%   26
-----------------------------------------------------------
TOTAL                           391    158    60%
======================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================= short test summary info ========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
FAILED tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs0] - Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>
FAILED tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs1] - Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>
FAILED tests/replay/test_replay.py::test_raise_on_invalid_mode[invalid_kwargs2] - Failed: DID NOT RAISE <class 'cookiecutter.exceptions.InvalidModeException'>
FAILED tests/replay/test_replay.py::test_main_does_not_invoke_dump_but_load - AssertionError: assert False
 +  where False = <MagicMock name='generate_context' id='125568698143488'>.called
FAILED tests/replay/test_replay.py::test_main_does_not_invoke_load_but_dump - AssertionError: assert False
 +  where False = <MagicMock name='prompt_for_config' id='125568696256976'>.called
===================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================== 5 failed, 11 passed in 0.33s =====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
[The command completed with exit code 1.]
[Current working directory: /workspace/cookiecutter]
[Python interpreter: /usr/bin/python]
[Command finished with exit code 1]