From 50859dc0b04101165528f9e0c5a1890611ee4cb7 Mon Sep 17 00:00:00 2001 From: Tony Narlock Date: Wed, 17 Aug 2022 06:26:33 +0200 Subject: [PATCH 1/2] chore: Server.new_session: Create session w/o name --- libtmux/server.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/libtmux/server.py b/libtmux/server.py index beaa82ae0..e08cc3927 100644 --- a/libtmux/server.py +++ b/libtmux/server.py @@ -535,15 +535,17 @@ def new_session( ------ :exc:`exc.BadSessionName` """ - session_check_name(session_name) - assert session_name is not None - - if self.has_session(session_name): - if kill_session: - self.cmd("kill-session", "-t%s" % session_name) - logger.info("session %s exists. killed it." % session_name) - else: - raise exc.TmuxSessionExists("Session named %s exists" % session_name) + if session_name is not None: + session_check_name(session_name) + + if self.has_session(session_name): + if kill_session: + self.cmd("kill-session", "-t%s" % session_name) + logger.info("session %s exists. killed it." % session_name) + else: + raise exc.TmuxSessionExists( + "Session named %s exists" % session_name + ) logger.debug("creating session %s" % session_name) From 0dfdc5b878ad9cef12516e9c5470c6bb4c609bf4 Mon Sep 17 00:00:00 2001 From: Tony Narlock Date: Wed, 17 Aug 2022 06:30:28 +0200 Subject: [PATCH 2/2] test: Server.new_session w/ no name --- tests/test_server.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/test_server.py b/tests/test_server.py index 446a93849..bd73a171e 100644 --- a/tests/test_server.py +++ b/tests/test_server.py @@ -89,6 +89,14 @@ def test_new_session(server: Server) -> None: assert server.has_session("test_new_session") +def test_new_session_no_name(server: Server) -> None: + """Server.new_session works with no name""" + mysession = server.new_session() + session_name = mysession.get("session_name") + assert session_name is not None + assert server.has_session(session_name) + + def test_new_session_shell(server: Server) -> None: """Server.new_session creates and returns valid session running with specified command"""