Skip to content

Commit 64aab20

Browse files
committed
Start/stop interactive sessions adjustments
1 parent 62acd78 commit 64aab20

5 files changed

Lines changed: 82 additions & 69 deletions

File tree

docs/cl-webdriver-client.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1087,10 +1087,12 @@ <h2 class="contents-heading">Table of Contents</h2>
10871087

10881088
<span id="index-WEBDRIVER_002dCLIENT_003aSTOP_002dINTERACTIVE_002dSESSION"></span>
10891089
<span id="WEBDRIVER_002dCLIENT_003aSTOP_002dINTERACTIVE_002dSESSION-function"></span><dl>
1090-
<dt id="index-STOP_002dINTERACTIVE_002dSESSION">WEBDRIVER-CLIENT: <strong>STOP-INTERACTIVE-SESSION</strong> <em>nil</em></dt>
1090+
<dt id="index-STOP_002dINTERACTIVE_002dSESSION">WEBDRIVER-CLIENT: <strong>STOP-INTERACTIVE-SESSION</strong> <em>(&amp;optional (ignore-errors t))</em></dt>
10911091
<dd>
10921092
<p>Stop an interactive session.<br>
10931093
<br>
1094+
Sometimes &lsquo;*SESSION*&rsquo; could be out of sync with Webdriver instance. In that case we may want to ignore errors when trying to delete the session. <var>IGNORE-ERRORS</var> argument controls that.<br>
1095+
<br>
10941096
Category: Session
10951097
</p></dd></dl>
10961098

docs/cl-webdriver-client.info

Lines changed: 69 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1014,10 +1014,16 @@ Session
10141014
Category: Session
10151015
See: *note MAKE-SESSION: WEBDRIVER-CLIENT:MAKE-SESSION function.
10161016

1017-
-- WEBDRIVER-CLIENT: STOP-INTERACTIVE-SESSION nil
1017+
-- WEBDRIVER-CLIENT: STOP-INTERACTIVE-SESSION (&optional (ignore-errors
1018+
t))
10181019

10191020
Stop an interactive session.
10201021

1022+
Sometimes *note *SESSION*: WEBDRIVER-CLIENT:*SESSION* variable.
1023+
could be out of sync with Webdriver instance. In that case we may
1024+
want to ignore errors when trying to delete the session.
1025+
IGNORE-ERRORS argument controls that.
1026+
10211027
Category: Session
10221028

10231029
-- WEBDRIVER-CLIENT: WITH-SESSION (capabilities &body body)
@@ -1258,7 +1264,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
12581264
* Menu:
12591265

12601266
* *DEFAULT-CAPABILITIES*: WEBDRIVER-CLIENT package.
1261-
(line 520)
1267+
(line 526)
12621268
* *DEFAULT-ELEMENT-FUNC*: WEBDRIVER-CLIENT-UTILS package.
12631269
(line 25)
12641270
* *TIMEOUT*: WEBDRIVER-CLIENT-UTILS package.
@@ -1268,7 +1274,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
12681274
* WEBDRIVER-CLIENT-UTILS:*TIMEOUT*: WEBDRIVER-CLIENT-UTILS package.
12691275
(line 21)
12701276
* WEBDRIVER-CLIENT:*DEFAULT-CAPABILITIES*: WEBDRIVER-CLIENT package.
1271-
(line 520)
1277+
(line 526)
12721278

12731279
[index]
12741280
* Menu:
@@ -1284,7 +1290,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
12841290
* BACK: WEBDRIVER-CLIENT package.
12851291
(line 359)
12861292
* CHROME-CAPABILITIES: WEBDRIVER-CLIENT package.
1287-
(line 526)
1293+
(line 532)
12881294
* CLASSLIST: WEBDRIVER-CLIENT-UTILS package.
12891295
(line 64)
12901296
* CLASSNAME: WEBDRIVER-CLIENT-UTILS package.
@@ -1300,7 +1306,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
13001306
* DELETE-COOKIE: WEBDRIVER-CLIENT package.
13011307
(line 442)
13021308
* DELETE-SESSION: WEBDRIVER-CLIENT package.
1303-
(line 499)
1309+
(line 505)
13041310
* DISMISS-ALERT: WEBDRIVER-CLIENT package.
13051311
(line 78)
13061312
* ELEM: WEBDRIVER-CLIENT-UTILS package.
@@ -1316,11 +1322,11 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
13161322
* ELEMENT-ENABLED: WEBDRIVER-CLIENT package.
13171323
(line 125)
13181324
* ELEMENT-ID: WEBDRIVER-CLIENT package.
1319-
(line 607)
1325+
(line 613)
13201326
* ELEMENT-RECT: WEBDRIVER-CLIENT package.
13211327
(line 104)
13221328
* ELEMENT-SCREENSHOT: WEBDRIVER-CLIENT package.
1323-
(line 542)
1329+
(line 548)
13241330
* ELEMENT-SEND-KEYS: WEBDRIVER-CLIENT package.
13251331
(line 266)
13261332
* ELEMENT-TAGNAME: WEBDRIVER-CLIENT package.
@@ -1338,7 +1344,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
13381344
* FIND-ELEMENTS: WEBDRIVER-CLIENT package.
13391345
(line 153)
13401346
* FIREFOX-CAPABILITIES: WEBDRIVER-CLIENT package.
1341-
(line 508)
1347+
(line 514)
13421348
* GET-COOKIE: WEBDRIVER-CLIENT-UTILS package.
13431349
(line 39)
13441350
* GET-WINDOW-HANDLE: WEBDRIVER-CLIENT package.
@@ -1352,21 +1358,21 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
13521358
* KEYS: WEBDRIVER-CLIENT package.
13531359
(line 308)
13541360
* LOG-TYPES: WEBDRIVER-CLIENT package.
1355-
(line 609)
1361+
(line 615)
13561362
* LOGS: WEBDRIVER-CLIENT package.
1357-
(line 566)
1363+
(line 572)
13581364
* MAKE-CAPABILITIES: WEBDRIVER-CLIENT package.
1359-
(line 571)
1365+
(line 577)
13601366
* MAKE-COOKIE: WEBDRIVER-CLIENT package.
13611367
(line 428)
13621368
* MAKE-SESSION: WEBDRIVER-CLIENT package.
13631369
(line 453)
13641370
* MERGE-CAPABILITIES: WEBDRIVER-CLIENT package.
1365-
(line 533)
1371+
(line 539)
13661372
* MOUSE-CLICK: WEBDRIVER-CLIENT package.
1367-
(line 593)
1373+
(line 599)
13681374
* MOUSE-MOVE-TO: WEBDRIVER-CLIENT package.
1369-
(line 574)
1375+
(line 580)
13701376
* NEW-WINDOW: WEBDRIVER-CLIENT package.
13711377
(line 68)
13721378
* PAGE-SOURCE: WEBDRIVER-CLIENT package.
@@ -1378,7 +1384,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
13781384
* REFRESH: WEBDRIVER-CLIENT package.
13791385
(line 337)
13801386
* SCREENSHOT: WEBDRIVER-CLIENT package.
1381-
(line 553)
1387+
(line 559)
13821388
* SEND-KEY: WEBDRIVER-CLIENT-UTILS package.
13831389
(line 60)
13841390
* SEND-KEYS: WEBDRIVER-CLIENT-UTILS package.
@@ -1432,7 +1438,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
14321438
* WEBDRIVER-CLIENT:BACK: WEBDRIVER-CLIENT package.
14331439
(line 359)
14341440
* WEBDRIVER-CLIENT:CHROME-CAPABILITIES: WEBDRIVER-CLIENT package.
1435-
(line 526)
1441+
(line 532)
14361442
* WEBDRIVER-CLIENT:CLOSE-WINDOW: WEBDRIVER-CLIENT package.
14371443
(line 61)
14381444
* WEBDRIVER-CLIENT:COOKIE: WEBDRIVER-CLIENT package.
@@ -1442,7 +1448,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
14421448
* WEBDRIVER-CLIENT:DELETE-COOKIE: WEBDRIVER-CLIENT package.
14431449
(line 442)
14441450
* WEBDRIVER-CLIENT:DELETE-SESSION: WEBDRIVER-CLIENT package.
1445-
(line 499)
1451+
(line 505)
14461452
* WEBDRIVER-CLIENT:DISMISS-ALERT: WEBDRIVER-CLIENT package.
14471453
(line 78)
14481454
* WEBDRIVER-CLIENT:ELEMENT-ATTRIBUTE: WEBDRIVER-CLIENT package.
@@ -1456,11 +1462,11 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
14561462
* WEBDRIVER-CLIENT:ELEMENT-ENABLED: WEBDRIVER-CLIENT package.
14571463
(line 125)
14581464
* WEBDRIVER-CLIENT:ELEMENT-ID: WEBDRIVER-CLIENT package.
1459-
(line 607)
1465+
(line 613)
14601466
* WEBDRIVER-CLIENT:ELEMENT-RECT: WEBDRIVER-CLIENT package.
14611467
(line 104)
14621468
* WEBDRIVER-CLIENT:ELEMENT-SCREENSHOT: WEBDRIVER-CLIENT package.
1463-
(line 542)
1469+
(line 548)
14641470
* WEBDRIVER-CLIENT:ELEMENT-SEND-KEYS: WEBDRIVER-CLIENT package.
14651471
(line 266)
14661472
* WEBDRIVER-CLIENT:ELEMENT-TAGNAME: WEBDRIVER-CLIENT package.
@@ -1476,7 +1482,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
14761482
* WEBDRIVER-CLIENT:FIND-ELEMENTS: WEBDRIVER-CLIENT package.
14771483
(line 153)
14781484
* WEBDRIVER-CLIENT:FIREFOX-CAPABILITIES: WEBDRIVER-CLIENT package.
1479-
(line 508)
1485+
(line 514)
14801486
* WEBDRIVER-CLIENT:GET-WINDOW-HANDLE: WEBDRIVER-CLIENT package.
14811487
(line 20)
14821488
* WEBDRIVER-CLIENT:GET-WINDOW-HANDLES: WEBDRIVER-CLIENT package.
@@ -1486,21 +1492,21 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
14861492
* WEBDRIVER-CLIENT:KEYS: WEBDRIVER-CLIENT package.
14871493
(line 308)
14881494
* WEBDRIVER-CLIENT:LOG-TYPES: WEBDRIVER-CLIENT package.
1489-
(line 609)
1495+
(line 615)
14901496
* WEBDRIVER-CLIENT:LOGS: WEBDRIVER-CLIENT package.
1491-
(line 566)
1497+
(line 572)
14921498
* WEBDRIVER-CLIENT:MAKE-CAPABILITIES: WEBDRIVER-CLIENT package.
1493-
(line 571)
1499+
(line 577)
14941500
* WEBDRIVER-CLIENT:MAKE-COOKIE: WEBDRIVER-CLIENT package.
14951501
(line 428)
14961502
* WEBDRIVER-CLIENT:MAKE-SESSION: WEBDRIVER-CLIENT package.
14971503
(line 453)
14981504
* WEBDRIVER-CLIENT:MERGE-CAPABILITIES: WEBDRIVER-CLIENT package.
1499-
(line 533)
1505+
(line 539)
15001506
* WEBDRIVER-CLIENT:MOUSE-CLICK: WEBDRIVER-CLIENT package.
1501-
(line 593)
1507+
(line 599)
15021508
* WEBDRIVER-CLIENT:MOUSE-MOVE-TO: WEBDRIVER-CLIENT package.
1503-
(line 574)
1509+
(line 580)
15041510
* WEBDRIVER-CLIENT:NEW-WINDOW: WEBDRIVER-CLIENT package.
15051511
(line 68)
15061512
* WEBDRIVER-CLIENT:PAGE-SOURCE: WEBDRIVER-CLIENT package.
@@ -1512,7 +1518,7 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
15121518
* WEBDRIVER-CLIENT:REFRESH: WEBDRIVER-CLIENT package.
15131519
(line 337)
15141520
* WEBDRIVER-CLIENT:SCREENSHOT: WEBDRIVER-CLIENT package.
1515-
(line 553)
1521+
(line 559)
15161522
* WEBDRIVER-CLIENT:START-INTERACTIVE-SESSION: WEBDRIVER-CLIENT package.
15171523
(line 476)
15181524
* WEBDRIVER-CLIENT:STOP-INTERACTIVE-SESSION: WEBDRIVER-CLIENT package.
@@ -1526,13 +1532,13 @@ File: cl-webdriver-client.info, Node: Index, Prev: API, Up: Top
15261532
* WEBDRIVER-CLIENT:USE-SESSION: WEBDRIVER-CLIENT package.
15271533
(line 470)
15281534
* WEBDRIVER-CLIENT:WEBDRIVER-STATUS: WEBDRIVER-CLIENT package.
1529-
(line 603)
1535+
(line 609)
15301536
* WEBDRIVER-CLIENT:WITH-SESSION: WEBDRIVER-CLIENT package.
1531-
(line 490)
1537+
(line 496)
15321538
* WEBDRIVER-STATUS: WEBDRIVER-CLIENT package.
1533-
(line 603)
1539+
(line 609)
15341540
* WITH-SESSION: WEBDRIVER-CLIENT package.
1535-
(line 490)
1541+
(line 496)
15361542

15371543

15381544

@@ -1596,37 +1602,37 @@ Ref: WEBDRIVER-CLIENT:MAKE-SESSION function33187
15961602
Ref: WEBDRIVER-CLIENT:USE-SESSION function33949
15971603
Ref: WEBDRIVER-CLIENT:START-INTERACTIVE-SESSION function34058
15981604
Ref: WEBDRIVER-CLIENT:STOP-INTERACTIVE-SESSION function34323
1599-
Ref: WEBDRIVER-CLIENT:WITH-SESSION macro34434
1600-
Ref: WEBDRIVER-CLIENT:DELETE-SESSION function34717
1601-
Ref: WEBDRIVER-CLIENT:FIREFOX-CAPABILITIES function34852
1602-
Ref: WEBDRIVER-CLIENT:*DEFAULT-CAPABILITIES* variable35160
1603-
Ref: WEBDRIVER-CLIENT:CHROME-CAPABILITIES function35267
1604-
Ref: WEBDRIVER-CLIENT:MERGE-CAPABILITIES function35466
1605-
Ref: WEBDRIVER-CLIENT:ELEMENT-SCREENSHOT function35609
1606-
Ref: WEBDRIVER-CLIENT:SCREENSHOT function36056
1607-
Ref: WEBDRIVER-CLIENT:LOGS function36504
1608-
Ref: WEBDRIVER-CLIENT:MAKE-CAPABILITIES function36672
1609-
Ref: WEBDRIVER-CLIENT:MOUSE-MOVE-TO function36802
1610-
Ref: WEBDRIVER-CLIENT:NO-SUCH-ELEMENT-ERROR class37309
1611-
Ref: WEBDRIVER-CLIENT:MOUSE-CLICK function37516
1612-
Ref: WEBDRIVER-CLIENT:WEBDRIVER-STATUS function37946
1613-
Ref: WEBDRIVER-CLIENT:ELEMENT-ID function38029
1614-
Ref: WEBDRIVER-CLIENT:LOG-TYPES function38080
1615-
Node: WEBDRIVER-CLIENT-UTILS package38710
1616-
Ref: WEBDRIVER-CLIENT-UTILS:*TIMEOUT* variable39283
1617-
Ref: WEBDRIVER-CLIENT-UTILS:*DEFAULT-ELEMENT-FUNC* variable39386
1618-
Ref: WEBDRIVER-CLIENT-UTILS:ID function39643
1619-
Ref: WEBDRIVER-CLIENT-UTILS:GET-COOKIE function39725
1620-
Ref: WEBDRIVER-CLIENT-UTILS:FIND-ELEM function39814
1621-
Ref: WEBDRIVER-CLIENT-UTILS:WAIT-FOR function39962
1622-
Ref: WEBDRIVER-CLIENT-UTILS:CLASSNAME function40178
1623-
Ref: WEBDRIVER-CLIENT-UTILS:TEXT function40274
1624-
Ref: WEBDRIVER-CLIENT-UTILS:SEND-KEY function40362
1625-
Ref: WEBDRIVER-CLIENT-UTILS:CLASSLIST function40461
1626-
Ref: WEBDRIVER-CLIENT-UTILS:ATTR function40558
1627-
Ref: WEBDRIVER-CLIENT-UTILS:SEND-KEYS function40655
1628-
Ref: WEBDRIVER-CLIENT-UTILS:ELEM function40755
1629-
Ref: WEBDRIVER-CLIENT-UTILS:CLICK function41062
1630-
Node: Index41149
1605+
Ref: WEBDRIVER-CLIENT:WITH-SESSION macro34717
1606+
Ref: WEBDRIVER-CLIENT:DELETE-SESSION function35000
1607+
Ref: WEBDRIVER-CLIENT:FIREFOX-CAPABILITIES function35135
1608+
Ref: WEBDRIVER-CLIENT:*DEFAULT-CAPABILITIES* variable35443
1609+
Ref: WEBDRIVER-CLIENT:CHROME-CAPABILITIES function35550
1610+
Ref: WEBDRIVER-CLIENT:MERGE-CAPABILITIES function35749
1611+
Ref: WEBDRIVER-CLIENT:ELEMENT-SCREENSHOT function35892
1612+
Ref: WEBDRIVER-CLIENT:SCREENSHOT function36339
1613+
Ref: WEBDRIVER-CLIENT:LOGS function36787
1614+
Ref: WEBDRIVER-CLIENT:MAKE-CAPABILITIES function36955
1615+
Ref: WEBDRIVER-CLIENT:MOUSE-MOVE-TO function37085
1616+
Ref: WEBDRIVER-CLIENT:NO-SUCH-ELEMENT-ERROR class37592
1617+
Ref: WEBDRIVER-CLIENT:MOUSE-CLICK function37799
1618+
Ref: WEBDRIVER-CLIENT:WEBDRIVER-STATUS function38229
1619+
Ref: WEBDRIVER-CLIENT:ELEMENT-ID function38312
1620+
Ref: WEBDRIVER-CLIENT:LOG-TYPES function38363
1621+
Node: WEBDRIVER-CLIENT-UTILS package38993
1622+
Ref: WEBDRIVER-CLIENT-UTILS:*TIMEOUT* variable39566
1623+
Ref: WEBDRIVER-CLIENT-UTILS:*DEFAULT-ELEMENT-FUNC* variable39669
1624+
Ref: WEBDRIVER-CLIENT-UTILS:ID function39926
1625+
Ref: WEBDRIVER-CLIENT-UTILS:GET-COOKIE function40008
1626+
Ref: WEBDRIVER-CLIENT-UTILS:FIND-ELEM function40097
1627+
Ref: WEBDRIVER-CLIENT-UTILS:WAIT-FOR function40245
1628+
Ref: WEBDRIVER-CLIENT-UTILS:CLASSNAME function40461
1629+
Ref: WEBDRIVER-CLIENT-UTILS:TEXT function40557
1630+
Ref: WEBDRIVER-CLIENT-UTILS:SEND-KEY function40645
1631+
Ref: WEBDRIVER-CLIENT-UTILS:CLASSLIST function40744
1632+
Ref: WEBDRIVER-CLIENT-UTILS:ATTR function40841
1633+
Ref: WEBDRIVER-CLIENT-UTILS:SEND-KEYS function40938
1634+
Ref: WEBDRIVER-CLIENT-UTILS:ELEM function41038
1635+
Ref: WEBDRIVER-CLIENT-UTILS:CLICK function41345
1636+
Node: Index41432
16311637

16321638
End Tag Table

docs/cl-webdriver-client.pdf

692 Bytes
Binary file not shown.

docs/index.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1087,10 +1087,12 @@ <h2 class="contents-heading">Table of Contents</h2>
10871087

10881088
<span id="index-WEBDRIVER_002dCLIENT_003aSTOP_002dINTERACTIVE_002dSESSION"></span>
10891089
<span id="WEBDRIVER_002dCLIENT_003aSTOP_002dINTERACTIVE_002dSESSION-function"></span><dl>
1090-
<dt id="index-STOP_002dINTERACTIVE_002dSESSION">WEBDRIVER-CLIENT: <strong>STOP-INTERACTIVE-SESSION</strong> <em>nil</em></dt>
1090+
<dt id="index-STOP_002dINTERACTIVE_002dSESSION">WEBDRIVER-CLIENT: <strong>STOP-INTERACTIVE-SESSION</strong> <em>(&amp;optional (ignore-errors t))</em></dt>
10911091
<dd>
10921092
<p>Stop an interactive session.<br>
10931093
<br>
1094+
Sometimes &lsquo;*SESSION*&rsquo; could be out of sync with Webdriver instance. In that case we may want to ignore errors when trying to delete the session. <var>IGNORE-ERRORS</var> argument controls that.<br>
1095+
<br>
10941096
Category: Session
10951097
</p></dd></dl>
10961098

src/session.lisp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,17 @@ See: MAKE-SESSION"
8888
8989
Category: Session
9090
See: MAKE-SESSION"
91-
(when *session*
92-
(delete-session *session*))
91+
(stop-interactive-session)
9392
(setf *session* (make-session capabilities)))
9493

95-
(defun stop-interactive-session ()
94+
(defun stop-interactive-session (&optional (ignore-errors t))
9695
"Stop an interactive session.
9796
97+
Sometimes *SESSION* could be out of sync with Webdriver instance. In that case we may want to ignore errors when trying to delete the session. IGNORE-ERRORS argument controls that.
98+
9899
Category: Session"
99100
(when *session*
100-
(delete-session *session*)
101+
(if ignore-errors
102+
(ignore-errors (delete-session *session*))
103+
(delete-session *session*))
101104
(setf *session* nil)))

0 commit comments

Comments
 (0)