tmux-python / tmux-python/tmuxp

1.22.0: test_window_shell fails

Open
#855 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
4.6k
Forks
248
Avg merge
2h 13m
Merged PRs (30d)
1

Description

Step 1: Provide a summary of your problem

When packaging 1.22.0, the test test_window_shell fails.

Step 2: Provide tmuxp details

n/a

Step 3: Describe the problem:
Steps to reproduce:

Same as in my other tickets

Observed Results:
=================================== FAILURES ===================================
______________________________ test_window_shell _______________________________

session = Session($1 libtmux_a2zoq8m_)

    def test_window_shell(session):
        workspace = ConfigReader._from_file(
            test_utils.get_workspace_file("workspace/builder/window_shell.yaml")
        )
        workspace = loader.expand(workspace)

        builder = WorkspaceBuilder(sconf=workspace)

>       for w, wconf in builder.iter_create_windows(session):

tests/workspace/test_builder.py:319:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
test_dir/usr/lib/python3.10/site-packages/tmuxp/workspace/builder.py:376: in iter_create_windows
    w = session.new_window(
/usr/lib/python3.10/site-packages/libtmux/session.py:552: in new_window
    return Window.from_window_id(
/usr/lib/python3.10/site-packages/libtmux/window.py:92: in from_window_id
    window = fetch_obj(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

server = Server(socket_name=libtmux_testeupg4wcy), obj_key = 'window_id'
obj_id = '@2', list_cmd = 'list-windows', list_extra_args = ('-a',)

    def fetch_obj(
        server: "Server",
        obj_key: str,
        obj_id: str,
        list_cmd: "ListCmd" = "list-panes",
        list_extra_args: "ListExtraArgs" = None,
    ) -> OutputRaw:
        obj_formatters_filtered = fetch_objs(
            server=server, list_cmd=list_cmd, list_extra_args=list_extra_args
        )

        obj = None
        for _obj in obj_formatters_filtered:
            if _obj.get(obj_key) == obj_id:
                obj = _obj

>       assert obj is not None
E       assert None is not None

/usr/lib/python3.10/site-packages/libtmux/neo.py:242: AssertionError
=========================== short test summary info ============================
FAILED tests/workspace/test_builder.py::test_window_shell - assert None is no...

tmuxp-1.22.0-1-x86_64-check.log

Expected Results:

All tests pass

Relevant Code:

n/a

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with tests/workspace/test_builder.py::test_window_shell and the workspace/builder/window_shell.yaml fixture. Reproduce the packaging failure and inspect the iter_create_windows call and the libtmux window lookup shown in the traceback. Done means the test_window_shell failure is resolved and the full test suite passes.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.