Skip to content

Commit 2539159

Browse files
authored
chore: Server.new_session: Create session w/o name (#400)
Fixes #399
2 parents 0b7a2fa + 0dfdc5b commit 2539159

File tree

2 files changed

+19
-9
lines changed

2 files changed

+19
-9
lines changed

libtmux/server.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -535,15 +535,17 @@ def new_session(
535535
------
536536
:exc:`exc.BadSessionName`
537537
"""
538-
session_check_name(session_name)
539-
assert session_name is not None
540-
541-
if self.has_session(session_name):
542-
if kill_session:
543-
self.cmd("kill-session", "-t%s" % session_name)
544-
logger.info("session %s exists. killed it." % session_name)
545-
else:
546-
raise exc.TmuxSessionExists("Session named %s exists" % session_name)
538+
if session_name is not None:
539+
session_check_name(session_name)
540+
541+
if self.has_session(session_name):
542+
if kill_session:
543+
self.cmd("kill-session", "-t%s" % session_name)
544+
logger.info("session %s exists. killed it." % session_name)
545+
else:
546+
raise exc.TmuxSessionExists(
547+
"Session named %s exists" % session_name
548+
)
547549

548550
logger.debug("creating session %s" % session_name)
549551

tests/test_server.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,14 @@ def test_new_session(server: Server) -> None:
8989
assert server.has_session("test_new_session")
9090

9191

92+
def test_new_session_no_name(server: Server) -> None:
93+
"""Server.new_session works with no name"""
94+
mysession = server.new_session()
95+
session_name = mysession.get("session_name")
96+
assert session_name is not None
97+
assert server.has_session(session_name)
98+
99+
92100
def test_new_session_shell(server: Server) -> None:
93101
"""Server.new_session creates and returns valid session running with
94102
specified command"""

0 commit comments

Comments
 (0)