1# Copyright 2022 The Pigweed Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); you may not 4# use this file except in compliance with the License. You may obtain a copy of 5# the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12# License for the specific language governing permissions and limitations under 13# the License. 14 15load("@rules_python//python:defs.bzl", "py_binary", "py_library", "py_test") 16 17package(default_visibility = ["//visibility:public"]) 18 19py_library( 20 name = "event_count_history", 21 srcs = ["pw_console/widgets/event_count_history.py"], 22) 23 24py_library( 25 name = "pyserial_wrapper", 26 srcs = ["pw_console/pyserial_wrapper.py"], 27 deps = [ 28 ":event_count_history", 29 ], 30) 31 32py_library( 33 name = "pw_console", 34 srcs = [ 35 "pw_console/__init__.py", 36 "pw_console/__main__.py", 37 "pw_console/command_runner.py", 38 "pw_console/console_app.py", 39 "pw_console/console_log_server.py", 40 "pw_console/console_prefs.py", 41 "pw_console/docs/__init__.py", 42 "pw_console/embed.py", 43 "pw_console/filter_toolbar.py", 44 "pw_console/get_pw_console_app.py", 45 "pw_console/help_window.py", 46 "pw_console/html/__init__.py", 47 "pw_console/key_bindings.py", 48 "pw_console/log_filter.py", 49 "pw_console/log_line.py", 50 "pw_console/log_pane.py", 51 "pw_console/log_pane_saveas_dialog.py", 52 "pw_console/log_pane_selection_dialog.py", 53 "pw_console/log_pane_toolbars.py", 54 "pw_console/log_screen.py", 55 "pw_console/log_store.py", 56 "pw_console/log_view.py", 57 "pw_console/mouse.py", 58 "pw_console/pigweed_code_style.py", 59 "pw_console/plugin_mixin.py", 60 "pw_console/plugins/__init__.py", 61 "pw_console/plugins/bandwidth_toolbar.py", 62 "pw_console/plugins/calc_pane.py", 63 "pw_console/plugins/clock_pane.py", 64 "pw_console/plugins/twenty48_pane.py", 65 "pw_console/progress_bar/__init__.py", 66 "pw_console/progress_bar/progress_bar_impl.py", 67 "pw_console/progress_bar/progress_bar_state.py", 68 "pw_console/progress_bar/progress_bar_task_counter.py", 69 "pw_console/pw_ptpython_repl.py", 70 "pw_console/python_logging.py", 71 "pw_console/quit_dialog.py", 72 "pw_console/repl_pane.py", 73 "pw_console/search_toolbar.py", 74 "pw_console/style.py", 75 "pw_console/templates/__init__.py", 76 "pw_console/test_mode.py", 77 "pw_console/text_formatting.py", 78 "pw_console/widgets/__init__.py", 79 "pw_console/widgets/border.py", 80 "pw_console/widgets/checkbox.py", 81 "pw_console/widgets/mouse_handlers.py", 82 "pw_console/widgets/table.py", 83 "pw_console/widgets/window_pane.py", 84 "pw_console/widgets/window_pane_toolbar.py", 85 "pw_console/window_list.py", 86 "pw_console/window_manager.py", 87 ], 88 data = [ 89 "pw_console/docs/user_guide.rst", 90 "pw_console/html/index.html", 91 "pw_console/html/main.js", 92 "pw_console/html/style.css", 93 "pw_console/py.typed", 94 "pw_console/templates/keybind_list.jinja", 95 "pw_console/templates/repl_output.jinja", 96 ], 97 imports = ["."], 98 deps = [ 99 ":event_count_history", 100 ":pyserial_wrapper", 101 "//pw_cli/py:pw_cli", 102 "//pw_log_tokenized/py:pw_log_tokenized", 103 ], 104) 105 106py_binary( 107 name = "pw_console_test_mode", 108 srcs = [ 109 "pw_console/__main__.py", 110 ], 111 main = "pw_console/__main__.py", 112 deps = [ 113 ":pw_console", 114 ], 115) 116 117py_test( 118 name = "command_runner_test", 119 size = "small", 120 srcs = [ 121 "command_runner_test.py", 122 ], 123 deps = [ 124 ":pw_console", 125 ], 126) 127 128py_test( 129 name = "console_app_test", 130 size = "small", 131 srcs = [ 132 "console_app_test.py", 133 ], 134 deps = [ 135 ":pw_console", 136 ], 137) 138 139py_test( 140 name = "console_prefs_test", 141 size = "small", 142 srcs = [ 143 "console_prefs_test.py", 144 ], 145 deps = [ 146 ":pw_console", 147 ], 148) 149 150py_test( 151 name = "help_window_test", 152 size = "small", 153 srcs = [ 154 "help_window_test.py", 155 ], 156 deps = [ 157 ":pw_console", 158 ], 159) 160 161py_test( 162 name = "log_filter_test", 163 size = "small", 164 srcs = [ 165 "log_filter_test.py", 166 ], 167 deps = [ 168 ":pw_console", 169 ], 170) 171 172py_test( 173 name = "log_store_test", 174 size = "small", 175 srcs = [ 176 "log_store_test.py", 177 ], 178 deps = [ 179 ":pw_console", 180 ], 181) 182 183py_test( 184 name = "log_view_test", 185 size = "small", 186 srcs = [ 187 "log_view_test.py", 188 ], 189 deps = [ 190 ":pw_console", 191 ], 192) 193 194py_test( 195 name = "repl_pane_test", 196 size = "small", 197 srcs = [ 198 "repl_pane_test.py", 199 ], 200 deps = [ 201 ":pw_console", 202 ], 203) 204 205py_test( 206 name = "table_test", 207 size = "small", 208 srcs = [ 209 "table_test.py", 210 ], 211 deps = [ 212 ":pw_console", 213 ], 214) 215 216py_test( 217 name = "text_formatting_test", 218 size = "small", 219 srcs = [ 220 "text_formatting_test.py", 221 ], 222 deps = [ 223 ":pw_console", 224 ], 225) 226 227py_test( 228 name = "window_manager_test", 229 size = "small", 230 srcs = [ 231 "window_manager_test.py", 232 ], 233 deps = [ 234 ":pw_console", 235 ], 236) 237