robotframework-debug 4.6.0__tar.gz → 4.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/PKG-INFO +1 -1
  2. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/__init__.py +1 -1
  3. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/debugcmd.py +16 -8
  4. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/docs/compatibility_matrix.md +2 -2
  5. robotframework_debug-4.6.1/tests/atest/suites/02_repl_commands.robot +121 -0
  6. robotframework_debug-4.6.0/tests/atest/suites/02_repl_commands.robot +0 -64
  7. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/.coveragerc +0 -0
  8. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/.github/workflows/pythonpublish.yml +0 -0
  9. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/.github/workflows/test.yml +0 -0
  10. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/.gitignore +0 -0
  11. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/.gitpod.yml +0 -0
  12. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/CONTRIBUTION.md +0 -0
  13. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/ChangeLog +0 -0
  14. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/CreateWheel.sh +0 -0
  15. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/LICENSE +0 -0
  16. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/MANIFEST.in +0 -0
  17. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/RobotDebug.py +0 -0
  18. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/cmdcompleter.py +0 -0
  19. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/globals.py +0 -0
  20. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/history_app.py +0 -0
  21. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/lexer.py +0 -0
  22. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/prompttoolkitcmd.py +0 -0
  23. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/robotkeyword.py +0 -0
  24. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/robotlib.py +0 -0
  25. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/shell.py +0 -0
  26. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/sourcelines.py +0 -0
  27. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/styles.py +0 -0
  28. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/RobotDebug/version.py +0 -0
  29. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/docs/development.md +0 -0
  30. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/pyproject.toml +0 -0
  31. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/readme.md +0 -0
  32. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/Shift_down.gif +0 -0
  33. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/docs.png +0 -0
  34. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/help_image.png +0 -0
  35. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/help_res.png +0 -0
  36. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/import.png +0 -0
  37. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/irobot.png +0 -0
  38. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/keywords_and_variables_irobot.png +0 -0
  39. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/libs_image.png +0 -0
  40. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/list_command.png +0 -0
  41. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/live_completion.gif +0 -0
  42. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/multiline_example.png +0 -0
  43. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/resource.png +0 -0
  44. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/res/toggle_mouse_on.gif +0 -0
  45. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tasks.py +0 -0
  46. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/__init__.py +0 -0
  47. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/DebugShell.py +0 -0
  48. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/fixtures/debug_task.robot +0 -0
  49. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/fixtures/error_task.robot +0 -0
  50. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/fixtures/keywords.resource +0 -0
  51. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/fixtures/step_task.robot +0 -0
  52. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/resources/shell.resource +0 -0
  53. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/suites/01_repl_basics.robot +0 -0
  54. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/suites/03_debug_keyword.robot +0 -0
  55. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/suites/04_listener_error.robot +0 -0
  56. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/atest/suites/05_step_debugging.robot +0 -0
  57. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/compat/run_matrix.py +0 -0
  58. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/debug.robot +0 -0
  59. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/step.robot +0 -0
  60. {robotframework_debug-4.6.0 → robotframework_debug-4.6.1}/tests/test_debuglibrary.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: robotframework-debug
3
- Version: 4.6.0
3
+ Version: 4.6.1
4
4
  Summary: A debug library and REPL for Robot Framework.
5
5
  Keywords: robotframework,debug,shell,repl
6
6
  Author-email: René Rohner <snooz@posteo.de>
@@ -1,6 +1,6 @@
1
1
  """A debug library and REPL for Robot Framework."""
2
2
 
3
- __version__ = "4.6.0"
3
+ __version__ = "4.6.1"
4
4
 
5
5
  from .RobotDebug import Listener, RobotDebug # noqa: F401
6
6
  from .version import VERSION # noqa: F401
@@ -158,14 +158,22 @@ Access https://github.com/imbus/robotframework-debug for more details.\
158
158
  print_error("< not found library", lib_name)
159
159
  return
160
160
  for lib in matched:
161
- if lib:
162
- print_output("< Keywords of library", lib.name)
163
- for keyword in get_lib_keywords(lib):
164
- # ``short_doc`` is RF >= 7; ``shortdoc`` on older releases.
165
- short_doc = getattr(keyword, "short_doc", None) or getattr(
166
- keyword, "shortdoc", ""
167
- )
168
- print_output(f" {keyword.name}\t", short_doc)
161
+ if not lib:
162
+ continue
163
+ print_output("< Keywords of library", lib.name)
164
+ try:
165
+ keywords = get_lib_keywords(lib)
166
+ except Exception as exc:
167
+ # Don't let one library's doc-build error silently abort the
168
+ # whole listing; report it and continue with the next library.
169
+ print_error(" ! could not read keywords:", repr(exc))
170
+ continue
171
+ for keyword in keywords:
172
+ # ``short_doc`` is RF >= 7; ``shortdoc`` on older releases.
173
+ short_doc = getattr(keyword, "short_doc", None) or getattr(
174
+ keyword, "shortdoc", ""
175
+ )
176
+ print_output(f" {keyword.name}\t", short_doc)
169
177
 
170
178
  do_k = do_keywords
171
179
 
@@ -5,11 +5,11 @@ Acceptance suite (`tests/atest/suites`) run against each Robot Framework release
5
5
  | Feature area | RF 5.0.1<br/>(Py 3.10.19) | RF 6.0.2<br/>(Py 3.11.15) | RF 6.1.1<br/>(Py 3.11.15) | RF 7.0.1<br/>(Py 3.11.15) | RF 7.2.2<br/>(Py 3.12.8) | RF 7.3.2<br/>(Py 3.12.8) | RF 7.4.2<br/>(Py 3.12.8) |
6
6
  |---|---|---|---|---|---|---|---|
7
7
  | REPL basics | ✅ 9/9 | ✅ 9/9 | ✅ 9/9 | ✅ 9/9 | ✅ 9/9 | ✅ 9/9 | ✅ 9/9 |
8
- | REPL commands | ✅ 7/7 | ✅ 7/7 | ✅ 7/7 | ✅ 7/7 | ✅ 7/7 | ✅ 7/7 | ✅ 7/7 |
8
+ | REPL commands | ✅ 15/15 | ✅ 15/15 | ✅ 15/15 | ✅ 15/15 | ✅ 15/15 | ✅ 15/15 | ✅ 15/15 |
9
9
  | Debug keyword | ✅ 6/6 | ✅ 6/6 | ✅ 6/6 | ✅ 6/6 | ✅ 6/6 | ✅ 6/6 | ✅ 6/6 |
10
10
  | Listener on error | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 |
11
11
  | Step debugging | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 | ✅ 5/5 |
12
- | **Total** | **✅ 32/32** | **✅ 32/32** | **✅ 32/32** | **✅ 32/32** | **✅ 32/32** | **✅ 32/32** | **✅ 32/32** |
12
+ | **Total** | **✅ 40/40** | **✅ 40/40** | **✅ 40/40** | **✅ 40/40** | **✅ 40/40** | **✅ 40/40** | **✅ 40/40** |
13
13
 
14
14
  ## Notes
15
15
  All tested Robot Framework versions pass the full suite.
@@ -0,0 +1,121 @@
1
+ *** Settings ***
2
+ Documentation Every interactive ``irobot`` shell meta command and its
3
+ ... aliases/flags: libs[ -s], res[ -s], keywords/k, docs/d,
4
+ ... style, clear/cls, help and the ``?`` help prefix.
5
+ ...
6
+ ... ``keywords``/``k`` and ``docs``/``d`` build library keyword
7
+ ... documentation, which used to break on Robot Framework 7.4.x
8
+ ... (removed ``LibraryDocBuilder._get_type_docs``); see the
9
+ ... compatibility matrix and ``RobotDebug/robotlib.py``.
10
+
11
+ Resource ../resources/shell.resource
12
+
13
+ Force Tags repl commands
14
+
15
+
16
+ *** Test Cases ***
17
+ List Imported Libraries
18
+ ${input}= Lines libs exit
19
+ ${out}= Run Interactive Shell ${input}
20
+ Should Contain ${out} Imported libraries:
21
+ Should Contain ${out} BuiltIn
22
+ Should Contain ${out} RobotDebug
23
+
24
+ List Imported Libraries With Source
25
+ ${input}= Lines libs -s exit
26
+ ${out}= Run Interactive Shell ${input}
27
+ Should Contain ${out} Imported libraries:
28
+ # -s adds the source path of each library.
29
+ Should Contain ${out} BuiltIn.py
30
+
31
+ List Imported Resources
32
+ ${input}= Lines res exit
33
+ ${out}= Run Interactive Shell ${input}
34
+ Should Contain ${out} Imported resources:
35
+
36
+ List Imported Resources With Source
37
+ ${input}= Lines res -s exit
38
+ ${out}= Run Interactive Shell ${input}
39
+ Should Contain ${out} Imported resources:
40
+
41
+ List Keywords Of A Library
42
+ [Tags] libdoc
43
+ ${input}= Lines
44
+ ... keywords\tRobotDebug
45
+ ... exit
46
+ ${out}= Run Interactive Shell ${input}
47
+ Should Contain ${out} Keywords of library RobotDebug
48
+ # "Variables" is a RobotDebug keyword and, unlike "Debug", is not a
49
+ # substring of the echoed "keywords RobotDebug" command.
50
+ Should Contain ${out} Variables
51
+
52
+ List Keywords Short Alias K
53
+ [Tags] libdoc
54
+ ${input}= Lines
55
+ ... k\tBuiltIn
56
+ ... exit
57
+ ${out}= Run Interactive Shell ${input}
58
+ Should Contain ${out} Keywords of library BuiltIn
59
+ Should Contain ${out} Log To Console
60
+
61
+ Show Keyword Documentation
62
+ [Tags] libdoc
63
+ ${input}= Lines
64
+ ... docs\tDebug
65
+ ... exit
66
+ ${out}= Run Interactive Shell ${input}
67
+ Should Contain ${out} interactive shell
68
+
69
+ Show Keyword Documentation Short Alias D
70
+ [Tags] libdoc
71
+ ${input}= Lines
72
+ ... d\tLog To Console
73
+ ... exit
74
+ ${out}= Run Interactive Shell ${input}
75
+ Should Contain ${out} Logs the given message to the console.
76
+
77
+ List Available Output Styles
78
+ ${input}= Lines style exit
79
+ ${out}= Run Interactive Shell ${input}
80
+ # "monokai" is a Pygments style available in every supported version.
81
+ Should Contain ${out} monokai
82
+
83
+ Set Output Style
84
+ ${input}= Lines
85
+ ... style\tmonokai
86
+ ... exit
87
+ ${out}= Run Interactive Shell ${input}
88
+ Should Contain ${out} Set style to:
89
+ Should Contain ${out} monokai
90
+
91
+ Clear Screen Does Not Crash The Shell
92
+ # clear/cls emits terminal escapes; assert a later keyword still runs.
93
+ ${input}= Lines
94
+ ... cls
95
+ ... Log To Console\tALIVE_AFTER_CLEAR
96
+ ... exit
97
+ ${out}= Run Interactive Shell ${input}
98
+ Should Contain ${out} ALIVE_AFTER_CLEAR
99
+
100
+ Help Without Arguments
101
+ ${input}= Lines help exit
102
+ ${out}= Run Interactive Shell ${input}
103
+ Should Contain ${out} Input Robotframework keywords
104
+
105
+ Help For A Specific Command
106
+ ${input}= Lines help libs exit
107
+ ${out}= Run Interactive Shell ${input}
108
+ Should Contain ${out} Print imported
109
+
110
+ Help For A Command Alias
111
+ ${input}= Lines help c exit
112
+ ${out}= Run Interactive Shell ${input}
113
+ Should Contain ${out} Continue execution.
114
+
115
+ Question Mark Is A Help Prefix
116
+ [Tags] libdoc
117
+ ${input}= Lines
118
+ ... ?keywords
119
+ ... exit
120
+ ${out}= Run Interactive Shell ${input}
121
+ Should Contain ${out} Print keywords of libraries
@@ -1,64 +0,0 @@
1
- *** Settings ***
2
- Documentation Interactive ``irobot`` shell meta commands: libs, res,
3
- ... keywords/k, docs/d and help.
4
- ...
5
- ... NOTE: ``keywords``/``k`` and ``docs``/``d`` build library
6
- ... keyword documentation and are known to break on Robot
7
- ... Framework 7.4.x (removed ``LibraryDocBuilder._get_type_docs``).
8
- ... See the compatibility matrix.
9
-
10
- Resource ../resources/shell.resource
11
-
12
- Force Tags repl commands
13
-
14
-
15
- *** Test Cases ***
16
- List Imported Libraries
17
- ${input}= Lines libs exit
18
- ${out}= Run Interactive Shell ${input}
19
- Should Contain ${out} Imported libraries:
20
- Should Contain ${out} BuiltIn
21
- Should Contain ${out} RobotDebug
22
-
23
- List Imported Resources
24
- ${input}= Lines res exit
25
- ${out}= Run Interactive Shell ${input}
26
- Should Contain ${out} Imported resources:
27
-
28
- List Keywords Of A Library
29
- [Tags] libdoc
30
- ${input}= Lines
31
- ... keywords\tRobotDebug
32
- ... exit
33
- ${out}= Run Interactive Shell ${input}
34
- Should Contain ${out} Keywords of library RobotDebug
35
- # "Variables" is a RobotDebug keyword and, unlike "Debug", is not a
36
- # substring of the echoed "keywords RobotDebug" command.
37
- Should Contain ${out} Variables
38
-
39
- List Keywords Short Alias K
40
- [Tags] libdoc
41
- ${input}= Lines
42
- ... k\tBuiltIn
43
- ... exit
44
- ${out}= Run Interactive Shell ${input}
45
- Should Contain ${out} Keywords of library BuiltIn
46
- Should Contain ${out} Log To Console
47
-
48
- Show Keyword Documentation
49
- [Tags] libdoc
50
- ${input}= Lines
51
- ... docs\tDebug
52
- ... exit
53
- ${out}= Run Interactive Shell ${input}
54
- Should Contain ${out} interactive shell
55
-
56
- Help Without Arguments
57
- ${input}= Lines help exit
58
- ${out}= Run Interactive Shell ${input}
59
- Should Contain ${out} Input Robotframework keywords
60
-
61
- Help For A Specific Command
62
- ${input}= Lines help libs exit
63
- ${out}= Run Interactive Shell ${input}
64
- Should Contain ${out} Print imported