use self.delete and add test

This commit is contained in:
Argn0 2018-01-19 09:29:37 +01:00
parent aeb7bac886
commit bd7054fa2e
2 changed files with 21 additions and 2 deletions

View File

@ -475,8 +475,6 @@ class SessionManager(QObject):
old_windows = list(objreg.window_registry.values())
try:
self.load(name, temp=temp)
if delete:
self.session_delete(name)
except SessionNotFoundError:
raise cmdexc.CommandError("Session {} not found!".format(name))
except SessionError as e:
@ -486,6 +484,17 @@ class SessionManager(QObject):
if clear:
for win in old_windows:
win.close()
if delete:
try:
self.delete(name)
except SessionError as e:
log.sessions.exception("Error while deleting session!")
raise cmdexc.CommandError(
"Error while deleting session: {}"
.format(e))
else:
log.sessions.debug(
"Loaded & deleted session {}.".format(name))
@cmdutils.register(instance='session-manager')
@cmdutils.argument('name', completion=miscmodels.session)

View File

@ -363,6 +363,16 @@ Feature: Saving and loading sessions
And I replace "about:blank" by "http://localhost:(port)/data/numbers/2.txt" in the "loaded_session" session file
And I run :session-load loaded_session
Then data/numbers/2.txt should be loaded
@qtwebengine_flaky
Scenario: Loading and deleting a session
When I open about:blank
And I run :session-save loaded_session
And I replace "about:blank" by "http://localhost:(port)/data/numbers/2.txt" in the "loaded_session" session file
And I run :session-load --delete loaded_session
And I wait for "Loaded & deleted session loaded_session." in the log
Then data/numbers/2.txt should be loaded
And the session loaded_session should not exist
Scenario: Loading a session which doesn't exist
When I run :session-load inexistent_session