chrome-devtools-frontend 1.0.1506453 → 1.0.1510180
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.
- package/config/owner/COMMON_OWNERS +1 -0
- package/eslint.config.mjs +39 -5
- package/front_end/Images/src/gdp-logo-standalone.svg +9 -0
- package/front_end/core/host/AidaClient.ts +26 -0
- package/front_end/core/host/GdpClient.ts +151 -0
- package/front_end/core/host/InspectorFrontendHost.ts +7 -0
- package/front_end/core/host/InspectorFrontendHostAPI.ts +29 -1
- package/front_end/core/host/UserMetrics.ts +0 -25
- package/front_end/core/host/host.ts +2 -0
- package/front_end/core/root/Runtime.ts +15 -1
- package/front_end/core/sdk/CSSMatchedStyles.ts +183 -48
- package/front_end/core/sdk/CSSPropertyParser.ts +7 -7
- package/front_end/core/sdk/CSSPropertyParserMatchers.ts +175 -37
- package/front_end/core/sdk/CSSStyleSheetHeader.ts +5 -0
- package/front_end/core/sdk/DOMModel.ts +58 -0
- package/front_end/core/sdk/FrameAssociated.ts +4 -1
- package/front_end/core/sdk/Script.ts +5 -1
- package/front_end/core/sdk/SourceMap.ts +10 -2
- package/front_end/core/sdk/SourceMapCache.ts +54 -0
- package/front_end/core/sdk/SourceMapManager.ts +20 -7
- package/front_end/core/sdk/sdk.ts +2 -0
- package/front_end/devtools_compatibility.js +0 -1
- package/front_end/entrypoints/main/GlobalAiButton.ts +71 -1
- package/front_end/entrypoints/main/MainImpl.ts +6 -27
- package/front_end/entrypoints/main/globalAiButton.css +1 -1
- package/front_end/entrypoints/main/main-meta.ts +15 -0
- package/front_end/generated/InspectorBackendCommands.js +3 -2
- package/front_end/generated/SupportedCSSProperties.js +23 -7
- package/front_end/generated/protocol-mapping.d.ts +8 -1
- package/front_end/generated/protocol-proxy-api.d.ts +6 -1
- package/front_end/generated/protocol.ts +17 -4
- package/front_end/models/ai_assistance/ConversationHandler.ts +34 -54
- package/front_end/models/ai_assistance/ExtensionScope.ts +3 -12
- package/front_end/models/ai_assistance/README.md +1 -1
- package/front_end/models/ai_assistance/agents/AiAgent.ts +1 -3
- package/front_end/models/ai_assistance/agents/FileAgent.ts +0 -6
- package/front_end/models/ai_assistance/agents/NetworkAgent.ts +16 -15
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +32 -16
- package/front_end/models/ai_assistance/agents/StylingAgent.ts +199 -23
- package/front_end/models/ai_assistance/ai_assistance.ts +2 -0
- package/front_end/models/ai_assistance/data_formatters/FileFormatter.ts +4 -1
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +8 -5
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +248 -83
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +303 -94
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +442 -93
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +35 -17
- package/front_end/models/ai_assistance/data_formatters/Types.ts +9 -0
- package/front_end/models/ai_code_completion/AiCodeCompletion.ts +114 -2
- package/front_end/models/autofill_manager/AutofillManager.ts +0 -11
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +64 -6
- package/front_end/models/bindings/ResourceScriptMapping.ts +6 -0
- package/front_end/models/emulation/DeviceModeModel.ts +13 -14
- package/front_end/models/extensions/ExtensionPanel.ts +6 -6
- package/front_end/models/extensions/ExtensionServer.ts +2 -0
- package/front_end/models/extensions/ExtensionView.ts +4 -0
- package/front_end/{ui/legacy/Geometry.ts → models/geometry/GeometryImpl.ts} +4 -4
- package/front_end/models/geometry/geometry.ts +5 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +4 -4
- package/front_end/models/network_time_calculator/Calculator.ts +14 -0
- package/front_end/{panels/network → models/network_time_calculator}/NetworkTimeCalculator.ts +4 -4
- package/front_end/models/network_time_calculator/network_time_calculator.ts +6 -0
- package/front_end/models/persistence/EditFileSystemView.ts +4 -0
- package/front_end/models/persistence/NetworkPersistenceManager.ts +2 -0
- package/front_end/models/persistence/PersistenceActions.ts +2 -0
- package/front_end/models/persistence/PersistenceUtils.ts +2 -0
- package/front_end/models/persistence/WorkspaceSettingsTab.ts +6 -0
- package/front_end/models/persistence/persistence-meta.ts +2 -0
- package/front_end/models/stack_trace/StackTrace.ts +18 -0
- package/front_end/models/stack_trace/StackTraceImpl.ts +4 -1
- package/front_end/models/stack_trace/StackTraceModel.ts +4 -3
- package/front_end/models/trace/ModelImpl.ts +2 -1
- package/front_end/models/trace/Processor.ts +3 -30
- package/front_end/models/trace/handlers/AnimationFramesHandler.ts +10 -11
- package/front_end/models/trace/handlers/AnimationHandler.ts +4 -4
- package/front_end/models/trace/handlers/AsyncJSCallsHandler.ts +8 -9
- package/front_end/models/trace/handlers/AuctionWorkletsHandler.ts +10 -10
- package/front_end/models/trace/handlers/DOMStatsHandler.ts +2 -2
- package/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +59 -51
- package/front_end/models/trace/handlers/FlowsHandler.ts +10 -10
- package/front_end/models/trace/handlers/FramesHandler.ts +2 -2
- package/front_end/models/trace/handlers/GPUHandler.ts +2 -2
- package/front_end/models/trace/handlers/ImagePaintingHandler.ts +12 -12
- package/front_end/models/trace/handlers/InitiatorsHandler.ts +18 -20
- package/front_end/models/trace/handlers/InvalidationsHandler.ts +6 -6
- package/front_end/models/trace/handlers/LargestImagePaintHandler.ts +4 -3
- package/front_end/models/trace/handlers/LargestTextPaintHandler.ts +2 -2
- package/front_end/models/trace/handlers/LayerTreeHandler.ts +10 -10
- package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +28 -28
- package/front_end/models/trace/handlers/MemoryHandler.ts +2 -2
- package/front_end/models/trace/handlers/MetaHandler.ts +18 -18
- package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +25 -23
- package/front_end/models/trace/handlers/PageFramesHandler.ts +2 -2
- package/front_end/models/trace/handlers/PageLoadMetricsHandler.ts +5 -5
- package/front_end/models/trace/handlers/RendererHandler.ts +18 -18
- package/front_end/models/trace/handlers/SamplesHandler.ts +6 -9
- package/front_end/models/trace/handlers/ScreenshotsHandler.ts +8 -8
- package/front_end/models/trace/handlers/ScriptsHandler.ts +2 -2
- package/front_end/models/trace/handlers/SelectorStatsHandler.ts +4 -4
- package/front_end/models/trace/handlers/UserInteractionsHandler.ts +14 -14
- package/front_end/models/trace/handlers/UserTimingsHandler.ts +10 -10
- package/front_end/models/trace/handlers/WarningsHandler.ts +12 -12
- package/front_end/models/trace/handlers/WorkersHandler.ts +6 -6
- package/front_end/models/trace/helpers/Extensions.ts +10 -10
- package/front_end/models/trace/helpers/Trace.ts +3 -3
- package/front_end/models/trace/insights/ForcedReflow.ts +4 -0
- package/front_end/models/trace/insights/NetworkDependencyTree.ts +4 -0
- package/front_end/models/trace/insights/ThirdParties.ts +4 -0
- package/front_end/models/trace/types/Extensions.ts +27 -17
- package/front_end/models/trace/types/Overlays.ts +1 -3
- package/front_end/models/trace/types/TraceEvents.ts +2 -5
- package/front_end/models/workspace/FileManager.ts +1 -0
- package/front_end/panels/accessibility/ARIAAttributesView.ts +2 -60
- package/front_end/panels/ai_assistance/AiAssistancePanel.ts +22 -4
- package/front_end/panels/ai_assistance/PatchWidget.ts +1 -1
- package/front_end/panels/ai_assistance/SelectWorkspaceDialog.ts +2 -1
- package/front_end/panels/ai_assistance/ai_assistance-meta.ts +9 -9
- package/front_end/panels/ai_assistance/components/ChatView.ts +44 -2
- package/front_end/panels/animation/AnimationUI.ts +2 -1
- package/front_end/panels/application/KeyValueStorageItemsView.ts +2 -1
- package/front_end/panels/application/components/BackForwardCacheStrings.ts +9 -9
- package/front_end/panels/autofill/AutofillView.ts +15 -10
- package/front_end/panels/browser_debugger/CSPViolationBreakpointsSidebarPane.ts +5 -6
- package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +174 -272
- package/front_end/panels/browser_debugger/EventListenerBreakpointsSidebarPane.ts +9 -6
- package/front_end/panels/browser_debugger/categorizedBreakpointsSidebarPane.css +1 -1
- package/front_end/panels/common/BadgeNotification.ts +121 -0
- package/front_end/panels/common/FreDialog.ts +4 -3
- package/front_end/panels/common/badgeNotification.css +74 -0
- package/front_end/panels/common/common.ts +3 -1
- package/front_end/panels/console/ConsolePrompt.ts +2 -3
- package/front_end/panels/console/ConsoleView.ts +8 -8
- package/front_end/panels/console/ConsoleViewMessage.ts +14 -13
- package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +2 -1
- package/front_end/panels/elements/CSSRuleValidator.ts +0 -57
- package/front_end/panels/elements/ElementsTreeElement.ts +12 -4
- package/front_end/panels/elements/ElementsTreeOutlineRenderer.ts +8 -5
- package/front_end/panels/elements/PropertyRenderer.ts +1 -1
- package/front_end/panels/elements/StylePropertyTreeElement.ts +110 -9
- package/front_end/panels/emulation/DeviceModeView.ts +6 -5
- package/front_end/panels/layer_viewer/Layers3DView.ts +9 -9
- package/front_end/panels/layers/LayerTreeModel.ts +5 -5
- package/front_end/panels/lighthouse/LighthouseStatusView.ts +2 -1
- package/front_end/panels/lighthouse/LighthouseTimespanView.ts +2 -1
- package/front_end/panels/media/MainView.ts +48 -18
- package/front_end/panels/media/MediaModel.ts +4 -4
- package/front_end/panels/media/PlayerListView.ts +7 -0
- package/front_end/panels/mobile_throttling/ThrottlingManager.ts +2 -2
- package/front_end/panels/network/NetworkDataGridNode.ts +4 -5
- package/front_end/panels/network/NetworkItemView.ts +2 -2
- package/front_end/panels/network/NetworkLogView.ts +10 -15
- package/front_end/panels/network/NetworkLogViewColumns.ts +6 -8
- package/front_end/panels/network/NetworkOverview.ts +6 -4
- package/front_end/panels/network/NetworkPanel.ts +5 -5
- package/front_end/panels/network/NetworkWaterfallColumn.ts +5 -5
- package/front_end/panels/network/RequestTimingView.ts +7 -6
- package/front_end/panels/network/network.ts +1 -3
- package/front_end/panels/profiler/HeapTimelineOverview.ts +2 -1
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +2 -1
- package/front_end/panels/sensors/SensorsView.ts +10 -9
- package/front_end/panels/settings/AISettingsTab.ts +2 -2
- package/front_end/panels/settings/SettingsScreen.ts +19 -9
- package/front_end/panels/settings/components/SyncSection.ts +136 -3
- package/front_end/panels/settings/components/syncSection.css +54 -0
- package/front_end/panels/sources/AiCodeCompletionPlugin.ts +26 -9
- package/front_end/panels/sources/CSSPlugin.ts +5 -4
- package/front_end/panels/timeline/CountersGraph.ts +1 -1
- package/front_end/panels/timeline/ExtensionTrackAppender.ts +2 -2
- package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +3 -3
- package/front_end/panels/timeline/TimelineDetailsView.ts +41 -26
- package/front_end/panels/timeline/TimelinePaintProfilerView.ts +2 -1
- package/front_end/panels/timeline/TimelinePanel.ts +58 -59
- package/front_end/panels/timeline/TimelineUIUtils.ts +89 -20
- package/front_end/panels/timeline/TimingsTrackAppender.ts +10 -7
- package/front_end/panels/timeline/components/insights/CLSCulprits.ts +1 -11
- package/front_end/panels/timeline/components/insights/ForcedReflow.ts +4 -0
- package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +2 -3
- package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +4 -0
- package/front_end/panels/timeline/components/insights/ThirdParties.ts +4 -0
- package/front_end/panels/timeline/extensions/ExtensionUI.ts +1 -1
- package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +1 -1
- package/front_end/panels/timeline/overlays/components/TimespanBreakdownOverlay.ts +3 -12
- package/front_end/panels/timeline/utils/AIContext.ts +14 -1
- package/front_end/panels/whats_new/ReleaseNoteText.ts +11 -11
- package/front_end/panels/whats_new/resources/WNDT.md +6 -6
- package/front_end/services/tracing/tracing.ts +0 -2
- package/front_end/tsconfig.json +1 -0
- package/front_end/ui/components/buttons/button.css +4 -0
- package/front_end/ui/components/highlighting/HighlightManager.ts +19 -9
- package/front_end/ui/legacy/ARIAUtils.ts +1 -1
- package/front_end/ui/legacy/DockController.ts +1 -1
- package/front_end/ui/legacy/GlassPane.ts +2 -1
- package/front_end/ui/legacy/InspectorView.ts +41 -14
- package/front_end/ui/legacy/ResizerWidget.ts +45 -50
- package/front_end/ui/legacy/SoftDropDown.ts +2 -2
- package/front_end/ui/legacy/SplitWidget.ts +341 -357
- package/front_end/ui/legacy/SuggestBox.ts +2 -2
- package/front_end/ui/legacy/TabbedPane.ts +5 -5
- package/front_end/ui/legacy/Treeoutline.ts +227 -32
- package/front_end/ui/legacy/UIUtils.ts +72 -17
- package/front_end/ui/legacy/Widget.ts +15 -14
- package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +6 -14
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingModel.ts +3 -3
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingUI.ts +15 -14
- package/front_end/ui/legacy/components/inline_editor/BezierUI.ts +6 -5
- package/front_end/ui/legacy/components/inline_editor/CSSAngleUtils.ts +7 -6
- package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.ts +13 -12
- package/front_end/ui/legacy/components/object_ui/ObjectPopoverHelper.ts +2 -1
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -11
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -2
- package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +7 -5
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +3 -13
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.ts +2 -3
- package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +2 -1
- package/front_end/ui/legacy/components/source_frame/XMLView.ts +268 -295
- package/front_end/ui/legacy/components/source_frame/xmlTree.css +10 -8
- package/front_end/ui/legacy/components/source_frame/xmlView.css +3 -1
- package/front_end/ui/legacy/inspectorCommon.css +3 -2
- package/front_end/ui/legacy/legacy.ts +0 -2
- package/front_end/ui/visual_logging/KnownContextValues.ts +8 -4
- package/package.json +2 -2
- package/.gemini/commands/migrate-e2e-non-hosted.toml +0 -43
- package/.gemini/commands/review.toml +0 -85
- package/.github/workflows/auto-close-prs.yml +0 -30
- package/.vscode/devtools-workspace-launch.json +0 -43
- package/.vscode/devtools-workspace-settings.json +0 -12
- package/.vscode/devtools-workspace-tasks.json +0 -66
- package/.vscode/extensions.json +0 -3
- package/codereview.settings +0 -4
- package/config/gni/devtools_grd_files.gni +0 -2646
- package/config/gni/devtools_image_files.gni +0 -309
- package/config/gni/i18n.gni +0 -115
- package/extensions/cxx_debugging/CMakeLists.txt +0 -162
- package/extensions/cxx_debugging/README.md +0 -81
- package/extensions/cxx_debugging/e2e/MochaRootHooks.ts +0 -110
- package/extensions/cxx_debugging/e2e/OptionsPageTests.ts +0 -36
- package/extensions/cxx_debugging/e2e/StandaloneTestDriver.ts +0 -20
- package/extensions/cxx_debugging/e2e/TestDriver.ts +0 -311
- package/extensions/cxx_debugging/e2e/cxx-debugging-extension-helpers.ts +0 -62
- package/extensions/cxx_debugging/e2e/resources/huge-source-file.cc +0 -29
- package/extensions/cxx_debugging/e2e/resources/pointers.cc +0 -40
- package/extensions/cxx_debugging/e2e/resources/scope-view-non-primitives.c +0 -30
- package/extensions/cxx_debugging/e2e/resources/scope-view-non-primitives.cpp +0 -49
- package/extensions/cxx_debugging/e2e/resources/scope-view-primitives.c +0 -19
- package/extensions/cxx_debugging/e2e/resources/stepping-with-state.c +0 -31
- package/extensions/cxx_debugging/e2e/resources/test_wasm_simd.c +0 -13
- package/extensions/cxx_debugging/e2e/resources/vector.cc +0 -14
- package/extensions/cxx_debugging/e2e/resources/wchar.cc +0 -22
- package/extensions/cxx_debugging/e2e/runner.py +0 -542
- package/extensions/cxx_debugging/e2e/runner.py.vpython +0 -5
- package/extensions/cxx_debugging/e2e/runner.py.vpython3 +0 -5
- package/extensions/cxx_debugging/e2e/standalone/MemoryInspector_test.ts +0 -59
- package/extensions/cxx_debugging/e2e/tests/cpp_eval.yaml +0 -37
- package/extensions/cxx_debugging/e2e/tests/pointer.yaml +0 -42
- package/extensions/cxx_debugging/e2e/tests/scope_view_non_primitives.yaml +0 -35
- package/extensions/cxx_debugging/e2e/tests/scope_view_non_primitives_cpp.yaml +0 -44
- package/extensions/cxx_debugging/e2e/tests/scope_view_primitives.yaml +0 -31
- package/extensions/cxx_debugging/e2e/tests/stepping_with_state.yaml +0 -64
- package/extensions/cxx_debugging/e2e/tests/string_view.yaml +0 -32
- package/extensions/cxx_debugging/e2e/tests/test_big_dwo.yaml +0 -21
- package/extensions/cxx_debugging/e2e/tests/test_linear_memory_inspector.yaml +0 -11
- package/extensions/cxx_debugging/e2e/tests/test_loop.yaml +0 -34
- package/extensions/cxx_debugging/e2e/tests/test_wasm_simd.yaml +0 -42
- package/extensions/cxx_debugging/e2e/tests/vector.yaml +0 -26
- package/extensions/cxx_debugging/e2e/tests/wchar.yaml +0 -52
- package/extensions/cxx_debugging/e2e/tsconfig.json +0 -24
- package/extensions/cxx_debugging/lib/ApiContext.cc +0 -627
- package/extensions/cxx_debugging/lib/ApiContext.h +0 -119
- package/extensions/cxx_debugging/lib/CMakeLists.txt +0 -53
- package/extensions/cxx_debugging/lib/Expressions.cc +0 -303
- package/extensions/cxx_debugging/lib/Expressions.h +0 -53
- package/extensions/cxx_debugging/lib/Variables.cc +0 -101
- package/extensions/cxx_debugging/lib/Variables.h +0 -65
- package/extensions/cxx_debugging/lib/WasmModule.cc +0 -573
- package/extensions/cxx_debugging/lib/WasmModule.h +0 -126
- package/extensions/cxx_debugging/lib/WasmVendorPlugins.cc +0 -172
- package/extensions/cxx_debugging/lib/WasmVendorPlugins.h +0 -329
- package/extensions/cxx_debugging/lib/api.h +0 -593
- package/extensions/cxx_debugging/lib/api.h.in +0 -86
- package/extensions/cxx_debugging/src/CMakeLists.txt +0 -158
- package/extensions/cxx_debugging/src/CreditsItem.ts +0 -126
- package/extensions/cxx_debugging/src/CustomFormatters.ts +0 -689
- package/extensions/cxx_debugging/src/DWARFSymbols.ts +0 -613
- package/extensions/cxx_debugging/src/DevToolsPlugin.html +0 -7
- package/extensions/cxx_debugging/src/DevToolsPluginForTests.html +0 -6
- package/extensions/cxx_debugging/src/DevToolsPluginHost.ts +0 -145
- package/extensions/cxx_debugging/src/DevToolsPluginWorker.ts +0 -120
- package/extensions/cxx_debugging/src/DevToolsPluginWorkerMain.ts +0 -9
- package/extensions/cxx_debugging/src/ExtensionOptions.html +0 -24
- package/extensions/cxx_debugging/src/ExtensionOptions.ts +0 -705
- package/extensions/cxx_debugging/src/Formatters.ts +0 -282
- package/extensions/cxx_debugging/src/GlobMatch.ts +0 -51
- package/extensions/cxx_debugging/src/MEMFSResourceLoader.ts +0 -102
- package/extensions/cxx_debugging/src/ModuleConfiguration.ts +0 -117
- package/extensions/cxx_debugging/src/ModuleConfigurationList.ts +0 -239
- package/extensions/cxx_debugging/src/SymbolsBackend.cc +0 -262
- package/extensions/cxx_debugging/src/SymbolsBackend.cc.in +0 -139
- package/extensions/cxx_debugging/src/SymbolsBackend.d.ts +0 -179
- package/extensions/cxx_debugging/src/SymbolsBackend.d.ts.in +0 -108
- package/extensions/cxx_debugging/src/TestDriver.js +0 -21
- package/extensions/cxx_debugging/src/WasmTypes.ts +0 -119
- package/extensions/cxx_debugging/src/WorkerRPC.ts +0 -158
- package/extensions/cxx_debugging/src/index.html +0 -69
- package/extensions/cxx_debugging/src/manifest.json.in +0 -22
- package/extensions/cxx_debugging/src/rollup.config.in.js +0 -33
- package/extensions/cxx_debugging/tests/CMakeLists.txt +0 -146
- package/extensions/cxx_debugging/tests/CreditsItem_test.ts +0 -50
- package/extensions/cxx_debugging/tests/CustomFormatters_test.ts +0 -307
- package/extensions/cxx_debugging/tests/DevToolsPluginTestWorker.ts +0 -43
- package/extensions/cxx_debugging/tests/DevToolsPlugin_test.ts +0 -345
- package/extensions/cxx_debugging/tests/Externref_test.ts +0 -63
- package/extensions/cxx_debugging/tests/Formatters_test.ts +0 -284
- package/extensions/cxx_debugging/tests/GlobMatch_test.ts +0 -58
- package/extensions/cxx_debugging/tests/Interpreter_test.ts +0 -219
- package/extensions/cxx_debugging/tests/LLDBEvalExtensions.h +0 -154
- package/extensions/cxx_debugging/tests/LLDBEvalTests.d.ts +0 -24
- package/extensions/cxx_debugging/tests/ModuleConfiguration_test.ts +0 -136
- package/extensions/cxx_debugging/tests/RealBackend.ts +0 -482
- package/extensions/cxx_debugging/tests/SymbolsBackendTests.d.ts +0 -12
- package/extensions/cxx_debugging/tests/SymbolsBackend_test.ts +0 -39
- package/extensions/cxx_debugging/tests/TestUtils.ts +0 -250
- package/extensions/cxx_debugging/tests/WasmModule_test.cc +0 -332
- package/extensions/cxx_debugging/tests/build-artifacts.js.in +0 -10
- package/extensions/cxx_debugging/tests/inputs/CMakeLists.txt +0 -141
- package/extensions/cxx_debugging/tests/inputs/addr_index.s +0 -97
- package/extensions/cxx_debugging/tests/inputs/addresses.cc +0 -25
- package/extensions/cxx_debugging/tests/inputs/classstatic.s +0 -119
- package/extensions/cxx_debugging/tests/inputs/dw_opcodes.def +0 -66
- package/extensions/cxx_debugging/tests/inputs/embedded.s +0 -124
- package/extensions/cxx_debugging/tests/inputs/enums.s +0 -376
- package/extensions/cxx_debugging/tests/inputs/externref.js +0 -22
- package/extensions/cxx_debugging/tests/inputs/externref.s +0 -207
- package/extensions/cxx_debugging/tests/inputs/globals.s +0 -443
- package/extensions/cxx_debugging/tests/inputs/hello-split-missing-dwo.s +0 -92
- package/extensions/cxx_debugging/tests/inputs/hello-split.s +0 -134
- package/extensions/cxx_debugging/tests/inputs/hello.s +0 -70
- package/extensions/cxx_debugging/tests/inputs/helper.s +0 -130
- package/extensions/cxx_debugging/tests/inputs/inline.s +0 -196
- package/extensions/cxx_debugging/tests/inputs/namespaces.s +0 -207
- package/extensions/cxx_debugging/tests/inputs/page.html +0 -6
- package/extensions/cxx_debugging/tests/inputs/page.js +0 -35
- package/extensions/cxx_debugging/tests/inputs/shadowing.s +0 -121
- package/extensions/cxx_debugging/tests/inputs/split-dwarf.s +0 -126
- package/extensions/cxx_debugging/tests/inputs/string_view.cc +0 -40
- package/extensions/cxx_debugging/tests/inputs/windows_paths.s +0 -70
- package/extensions/cxx_debugging/tests/karma.conf.in.js +0 -133
- package/extensions/cxx_debugging/tests/karma_preload.html +0 -12
- package/extensions/cxx_debugging/third_party/.clang-format +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/CHANGELOG.md +0 -247
- package/extensions/cxx_debugging/third_party/lit-html/LICENSE +0 -28
- package/extensions/cxx_debugging/third_party/lit-html/README.chromium +0 -13
- package/extensions/cxx_debugging/third_party/lit-html/README.md +0 -47
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.d.ts +0 -33
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.js +0 -108
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.d.ts +0 -34
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.js +0 -91
- package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/cache.d.ts +0 -30
- package/extensions/cxx_debugging/third_party/lit-html/directives/cache.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/cache.js +0 -77
- package/extensions/cxx_debugging/third_party/lit-html/directives/cache.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.d.ts +0 -28
- package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.js +0 -101
- package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/guard.d.ts +0 -49
- package/extensions/cxx_debugging/third_party/lit-html/directives/guard.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/guard.js +0 -69
- package/extensions/cxx_debugging/third_party/lit-html/directives/guard.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.d.ts +0 -22
- package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.js +0 -37
- package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/live.d.ts +0 -38
- package/extensions/cxx_debugging/third_party/lit-html/directives/live.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/live.js +0 -73
- package/extensions/cxx_debugging/third_party/lit-html/directives/live.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.d.ts +0 -37
- package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.js +0 -415
- package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.d.ts +0 -36
- package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.js +0 -78
- package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.js +0 -41
- package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.js +0 -44
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.js +0 -61
- package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/until.d.ts +0 -35
- package/extensions/cxx_debugging/third_party/lit-html/directives/until.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/directives/until.js +0 -86
- package/extensions/cxx_debugging/third_party/lit-html/directives/until.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.d.ts +0 -39
- package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.js +0 -52
- package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/directive.d.ts +0 -59
- package/extensions/cxx_debugging/third_party/lit-html/lib/directive.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/directive.js +0 -63
- package/extensions/cxx_debugging/third_party/lit-html/lib/directive.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/dom.d.ts +0 -29
- package/extensions/cxx_debugging/third_party/lit-html/lib/dom.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/dom.js +0 -44
- package/extensions/cxx_debugging/third_party/lit-html/lib/dom.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.d.ts +0 -38
- package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.js +0 -125
- package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/part.d.ts +0 -46
- package/extensions/cxx_debugging/third_party/lit-html/lib/part.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/part.js +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/lib/part.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/parts.d.ts +0 -148
- package/extensions/cxx_debugging/third_party/lit-html/lib/parts.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/parts.js +0 -476
- package/extensions/cxx_debugging/third_party/lit-html/lib/parts.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.d.ts +0 -19
- package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.js +0 -14
- package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/render.d.ts +0 -33
- package/extensions/cxx_debugging/third_party/lit-html/lib/render.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/render.js +0 -43
- package/extensions/cxx_debugging/third_party/lit-html/lib/render.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.d.ts +0 -83
- package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.js +0 -286
- package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.d.ts +0 -57
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.js +0 -48
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.d.ts +0 -30
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.js +0 -134
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.d.ts +0 -46
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.js +0 -14
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.d.ts +0 -42
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.js +0 -131
- package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template.d.ts +0 -92
- package/extensions/cxx_debugging/third_party/lit-html/lib/template.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lib/template.js +0 -215
- package/extensions/cxx_debugging/third_party/lit-html/lib/template.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lit-html.d.ts +0 -42
- package/extensions/cxx_debugging/third_party/lit-html/lit-html.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/lit-html.js +0 -59
- package/extensions/cxx_debugging/third_party/lit-html/lit-html.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/package.json +0 -84
- package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.d.ts +0 -24
- package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.d.ts.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.js +0 -60
- package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.js.map +0 -1
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/async-append.ts +0 -100
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/async-replace.ts +0 -82
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/cache.ts +0 -90
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/class-map.ts +0 -118
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/guard.ts +0 -74
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/if-defined.ts +0 -40
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/live.ts +0 -76
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/repeat.ts +0 -442
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/style-map.ts +0 -88
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/template-content.ts +0 -52
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/unsafe-html.ts +0 -54
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/unsafe-svg.ts +0 -71
- package/extensions/cxx_debugging/third_party/lit-html/src/directives/until.ts +0 -104
- package/extensions/cxx_debugging/third_party/lit-html/src/env.d.ts +0 -20
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/default-template-processor.ts +0 -59
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/directive.ts +0 -73
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/dom.ts +0 -55
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/modify-template.ts +0 -135
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/part.ts +0 -50
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/parts.ts +0 -545
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/render-options.ts +0 -20
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/render.ts +0 -52
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/shady-render.ts +0 -316
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-factory.ts +0 -92
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-instance.ts +0 -155
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-processor.ts +0 -51
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-result.ts +0 -148
- package/extensions/cxx_debugging/third_party/lit-html/src/lib/template.ts +0 -255
- package/extensions/cxx_debugging/third_party/lit-html/src/lit-html.ts +0 -74
- package/extensions/cxx_debugging/third_party/lit-html/src/polyfills/template_polyfill.ts +0 -70
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/async-append.d.ts +0 -33
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/async-replace.d.ts +0 -34
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/cache.d.ts +0 -30
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/class-map.d.ts +0 -28
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/guard.d.ts +0 -49
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/if-defined.d.ts +0 -22
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/live.d.ts +0 -38
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/repeat.d.ts +0 -37
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/style-map.d.ts +0 -36
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/template-content.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/unsafe-html.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/unsafe-svg.d.ts +0 -23
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/until.d.ts +0 -35
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/default-template-processor.d.ts +0 -39
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/directive.d.ts +0 -59
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/dom.d.ts +0 -29
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/modify-template.d.ts +0 -38
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/part.d.ts +0 -46
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/parts.d.ts +0 -148
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/render-options.d.ts +0 -19
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/render.d.ts +0 -33
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/shady-render.d.ts +0 -83
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-factory.d.ts +0 -57
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-instance.d.ts +0 -30
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-processor.d.ts +0 -46
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-result.d.ts +0 -42
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template.d.ts +0 -92
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lit-html.d.ts +0 -42
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/polyfills/template_polyfill.d.ts +0 -24
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/src/env.d.ts +0 -19
- package/extensions/cxx_debugging/third_party/lit-html/ts3.4/tsconfig.json +0 -24
- package/extensions/cxx_debugging/third_party/lldb-eval/README.chromium +0 -15
- package/extensions/cxx_debugging/third_party/llvm/README.chromium +0 -17
- package/extensions/cxx_debugging/tools/api.pdl +0 -224
- package/extensions/cxx_debugging/tools/bootstrap.py +0 -352
- package/extensions/cxx_debugging/tools/generate-api.py +0 -74
- package/extensions/cxx_debugging/tools/pdl_cxx.py +0 -171
- package/extensions/cxx_debugging/tools/whitespaces.txt +0 -1
- package/extensions/cxx_debugging/tsconfig.json +0 -16
- package/front_end/core/common/Base64.test.ts +0 -41
- package/front_end/core/common/CharacterIdMap.test.ts +0 -46
- package/front_end/core/common/Color.test.ts +0 -904
- package/front_end/core/common/ColorConverter.test.ts +0 -525
- package/front_end/core/common/ColorUtils.test.ts +0 -112
- package/front_end/core/common/Console.test.ts +0 -86
- package/front_end/core/common/Debouncer.test.ts +0 -26
- package/front_end/core/common/EventTarget.test.ts +0 -166
- package/front_end/core/common/Gzip.test.ts +0 -63
- package/front_end/core/common/Lazy.test.ts +0 -28
- package/front_end/core/common/MapWithDefault.test.ts +0 -61
- package/front_end/core/common/Mutex.test.ts +0 -98
- package/front_end/core/common/Object.test.ts +0 -87
- package/front_end/core/common/ParsedURL.test.ts +0 -751
- package/front_end/core/common/Progress.test.ts +0 -269
- package/front_end/core/common/ResolverBase.test.ts +0 -115
- package/front_end/core/common/ResourceType.test.ts +0 -557
- package/front_end/core/common/Revealer.test.ts +0 -122
- package/front_end/core/common/SegmentedRange.test.ts +0 -210
- package/front_end/core/common/SettingRegistration.test.ts +0 -138
- package/front_end/core/common/Settings.test.ts +0 -858
- package/front_end/core/common/SimpleHistoryManager.test.ts +0 -66
- package/front_end/core/common/StringOutputStream.test.ts +0 -29
- package/front_end/core/common/TextDictionary.test.ts +0 -85
- package/front_end/core/common/Throttler.test.ts +0 -227
- package/front_end/core/common/Trie.test.ts +0 -110
- package/front_end/core/dom_extension/DOMExtension.test.ts +0 -343
- package/front_end/core/host/AidaClient.test.ts +0 -731
- package/front_end/core/i18n/ByteUtilities.test.ts +0 -59
- package/front_end/core/i18n/DevToolsLocale.test.ts +0 -104
- package/front_end/core/i18n/NumberFormatter.test.ts +0 -92
- package/front_end/core/i18n/i18n.test.ts +0 -207
- package/front_end/core/i18n/time-utilities.test.ts +0 -164
- package/front_end/core/platform/ArrayUtilities.test.ts +0 -499
- package/front_end/core/platform/DOMUtilities.test.ts +0 -95
- package/front_end/core/platform/DateUtilities.test.ts +0 -31
- package/front_end/core/platform/DevToolsPath.test.ts +0 -84
- package/front_end/core/platform/KeyboardUtilities.test.ts +0 -57
- package/front_end/core/platform/MapUtilities.test.ts +0 -50
- package/front_end/core/platform/MimeType.test.ts +0 -192
- package/front_end/core/platform/NumberUtilities.test.ts +0 -127
- package/front_end/core/platform/StringUtilities.test.ts +0 -729
- package/front_end/core/platform/TypedArrayUtilities.test.ts +0 -61
- package/front_end/core/protocol_client/NodeURL.test.ts +0 -74
- package/front_end/core/root/Runtime.test.ts +0 -68
- package/front_end/core/sdk/AccessibilityModel.test.ts +0 -17
- package/front_end/core/sdk/AnimationModel.test.ts +0 -257
- package/front_end/core/sdk/AutofillModel.test.ts +0 -82
- package/front_end/core/sdk/CPUThrottlingManager.test.ts +0 -49
- package/front_end/core/sdk/CSSContainerQuery.test.ts +0 -67
- package/front_end/core/sdk/CSSMatchedStyles.test.ts +0 -772
- package/front_end/core/sdk/CSSModel.test.ts +0 -120
- package/front_end/core/sdk/CSSProperty.test.ts +0 -130
- package/front_end/core/sdk/CSSPropertyParser.test.ts +0 -525
- package/front_end/core/sdk/CSSPropertyParserMatchers.test.ts +0 -766
- package/front_end/core/sdk/CSSStyleDeclaration.test.ts +0 -261
- package/front_end/core/sdk/CSSStyleSheetHeader.test.ts +0 -137
- package/front_end/core/sdk/ChildTargetManager.test.ts +0 -259
- package/front_end/core/sdk/ConsoleModel.test.ts +0 -202
- package/front_end/core/sdk/Cookie.test.ts +0 -294
- package/front_end/core/sdk/CookieModel.test.ts +0 -258
- package/front_end/core/sdk/CookieParser.test.ts +0 -211
- package/front_end/core/sdk/DOMModel.test.ts +0 -171
- package/front_end/core/sdk/DebuggerModel.test.ts +0 -461
- package/front_end/core/sdk/EmulationModel.test.ts +0 -45
- package/front_end/core/sdk/EnhancedTracesParser.test.ts +0 -318
- package/front_end/core/sdk/FrameManager.test.ts +0 -305
- package/front_end/core/sdk/NetworkManager.test.ts +0 -2196
- package/front_end/core/sdk/NetworkRequest.test.ts +0 -550
- package/front_end/core/sdk/OverlayColorGenerator.test.ts +0 -21
- package/front_end/core/sdk/OverlayModel.test.ts +0 -179
- package/front_end/core/sdk/OverlayPersistentHighlighter.test.ts +0 -232
- package/front_end/core/sdk/PageResourceLoader.test.ts +0 -369
- package/front_end/core/sdk/PreloadingModel.test.ts +0 -877
- package/front_end/core/sdk/RehydratingConnection.test.ts +0 -190
- package/front_end/core/sdk/RemoteObject.test.ts +0 -493
- package/front_end/core/sdk/ResourceTreeModel.test.ts +0 -222
- package/front_end/core/sdk/RuntimeModel.test.ts +0 -84
- package/front_end/core/sdk/ScreenCaptureModel.test.ts +0 -216
- package/front_end/core/sdk/Script.test.ts +0 -155
- package/front_end/core/sdk/ServerSentEventsProtocol.test.ts +0 -220
- package/front_end/core/sdk/ServerTiming.test.ts +0 -377
- package/front_end/core/sdk/ServiceWorkerCacheModel.test.ts +0 -200
- package/front_end/core/sdk/ServiceWorkerManager.test.ts +0 -287
- package/front_end/core/sdk/SourceMap.test.ts +0 -1350
- package/front_end/core/sdk/SourceMapFunctionRanges.test.ts +0 -171
- package/front_end/core/sdk/SourceMapManager.test.ts +0 -334
- package/front_end/core/sdk/SourceMapScopeChainEntry.test.ts +0 -129
- package/front_end/core/sdk/SourceMapScopesInfo.test.ts +0 -747
- package/front_end/core/sdk/StorageBucketsModel.test.ts +0 -383
- package/front_end/core/sdk/StorageKeyManager.test.ts +0 -95
- package/front_end/core/sdk/Target.test.ts +0 -97
- package/front_end/core/sdk/TargetManager.test.ts +0 -279
- package/front_end/core/sdk/TraceObject.test.ts +0 -30
- package/front_end/entrypoints/formatter_worker/CSSFormatter.test.ts +0 -216
- package/front_end/entrypoints/formatter_worker/FormattedContentBuilder.test.ts +0 -177
- package/front_end/entrypoints/formatter_worker/FormatterWorker.test.ts +0 -19
- package/front_end/entrypoints/formatter_worker/HTMLFormatter.test.ts +0 -344
- package/front_end/entrypoints/formatter_worker/JSONFormatter.test.ts +0 -147
- package/front_end/entrypoints/formatter_worker/JavaScriptFormatter.test.ts +0 -789
- package/front_end/entrypoints/formatter_worker/ScopeParser.test.ts +0 -121
- package/front_end/entrypoints/formatter_worker/Substitute.test.ts +0 -179
- package/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker.test.ts +0 -11
- package/front_end/entrypoints/inspector_main/InspectorMain.test.ts +0 -344
- package/front_end/entrypoints/inspector_main/OutermostTargetSelector.test.ts +0 -80
- package/front_end/entrypoints/main/ExecutionContextSelector.test.ts +0 -64
- package/front_end/entrypoints/main/GlobalAiButton.test.ts +0 -132
- package/front_end/entrypoints/main/MainImpl.test.ts +0 -87
- package/front_end/entrypoints/wasmparser_worker/wasmparser_worker.test.ts +0 -11
- package/front_end/integration_test_runner.html +0 -40
- package/front_end/legacy_test_runner/accessibility_test_runner/accessibility_test_runner.js +0 -83
- package/front_end/legacy_test_runner/application_test_runner/CacheStorageTestRunner.js +0 -297
- package/front_end/legacy_test_runner/application_test_runner/IndexedDBTestRunner.js +0 -478
- package/front_end/legacy_test_runner/application_test_runner/ResourceTreeTestRunner.js +0 -106
- package/front_end/legacy_test_runner/application_test_runner/ResourcesTestRunner.js +0 -173
- package/front_end/legacy_test_runner/application_test_runner/ServiceWorkersTestRunner.js +0 -133
- package/front_end/legacy_test_runner/application_test_runner/StorageTestRunner.js +0 -13
- package/front_end/legacy_test_runner/application_test_runner/application_test_runner.js +0 -19
- package/front_end/legacy_test_runner/axe_core_test_runner/axe_core_test_runner.js +0 -176
- package/front_end/legacy_test_runner/bindings_test_runner/AutomappingTestRunner.js +0 -137
- package/front_end/legacy_test_runner/bindings_test_runner/BindingsTestRunner.js +0 -251
- package/front_end/legacy_test_runner/bindings_test_runner/IsolatedFilesystemTestRunner.js +0 -289
- package/front_end/legacy_test_runner/bindings_test_runner/OverridesTestRunner.js +0 -30
- package/front_end/legacy_test_runner/bindings_test_runner/PersistenceTestRunner.js +0 -111
- package/front_end/legacy_test_runner/bindings_test_runner/bindings_test_runner.js +0 -17
- package/front_end/legacy_test_runner/console_test_runner/console_test_runner.js +0 -732
- package/front_end/legacy_test_runner/coverage_test_runner/coverage_test_runner.js +0 -156
- package/front_end/legacy_test_runner/data_grid_test_runner/data_grid_test_runner.js +0 -85
- package/front_end/legacy_test_runner/device_mode_test_runner/device_mode_test_runner.js +0 -47
- package/front_end/legacy_test_runner/elements_test_runner/EditDOMTestRunner.js +0 -79
- package/front_end/legacy_test_runner/elements_test_runner/ElementsPanelShadowSelectionOnRefreshTestRunner.js +0 -39
- package/front_end/legacy_test_runner/elements_test_runner/ElementsTestRunner.js +0 -1256
- package/front_end/legacy_test_runner/elements_test_runner/SetOuterHTMLTestRunner.js +0 -116
- package/front_end/legacy_test_runner/elements_test_runner/StylesUpdateLinksTestRunner.js +0 -136
- package/front_end/legacy_test_runner/elements_test_runner/elements_test_runner.js +0 -14
- package/front_end/legacy_test_runner/extensions_test_runner/ExtensionsNetworkTestRunner.js +0 -27
- package/front_end/legacy_test_runner/extensions_test_runner/ExtensionsTestRunner.js +0 -71
- package/front_end/legacy_test_runner/extensions_test_runner/extensions_test_runner.js +0 -11
- package/front_end/legacy_test_runner/heap_profiler_test_runner/heap_profiler_test_runner.js +0 -785
- package/front_end/legacy_test_runner/layers_test_runner/layers_test_runner.js +0 -161
- package/front_end/legacy_test_runner/legacy_test_runner.ts +0 -14
- package/front_end/legacy_test_runner/network_test_runner/network_test_runner.js +0 -295
- package/front_end/legacy_test_runner/performance_test_runner/TimelineDataTestRunner.js +0 -5263
- package/front_end/legacy_test_runner/performance_test_runner/TimelineTestRunner.js +0 -357
- package/front_end/legacy_test_runner/performance_test_runner/performance_test_runner.js +0 -11
- package/front_end/legacy_test_runner/sdk_test_runner/sdk_test_runner.js +0 -314
- package/front_end/legacy_test_runner/security_test_runner/security_test_runner.js +0 -36
- package/front_end/legacy_test_runner/sources_test_runner/AutocompleteTestRunner.js +0 -50
- package/front_end/legacy_test_runner/sources_test_runner/DebuggerTestRunner.js +0 -655
- package/front_end/legacy_test_runner/sources_test_runner/EditorTestRunner.js +0 -240
- package/front_end/legacy_test_runner/sources_test_runner/LiveEditTestRunner.js +0 -34
- package/front_end/legacy_test_runner/sources_test_runner/SearchTestRunner.js +0 -161
- package/front_end/legacy_test_runner/sources_test_runner/SourcesTestRunner.js +0 -111
- package/front_end/legacy_test_runner/sources_test_runner/sources_test_runner.js +0 -19
- package/front_end/legacy_test_runner/test_runner/TestRunner.js +0 -1480
- package/front_end/legacy_test_runner/test_runner/test_runner.js +0 -115
- package/front_end/models/ai_assistance/AgentProject.test.ts +0 -370
- package/front_end/models/ai_assistance/AiHistoryStorage.test.ts +0 -619
- package/front_end/models/ai_assistance/ChangeManager.test.ts +0 -330
- package/front_end/models/ai_assistance/ConversationHandler.test.ts +0 -355
- package/front_end/models/ai_assistance/EvaluateAction.test.ts +0 -173
- package/front_end/models/ai_assistance/ExtensionScope.test.ts +0 -447
- package/front_end/models/ai_assistance/agents/AiAgent.test.ts +0 -491
- package/front_end/models/ai_assistance/agents/FileAgent.test.ts +0 -217
- package/front_end/models/ai_assistance/agents/NetworkAgent.test.ts +0 -237
- package/front_end/models/ai_assistance/agents/PatchAgent.test.ts +0 -130
- package/front_end/models/ai_assistance/agents/PerformanceAgent.test.ts +0 -759
- package/front_end/models/ai_assistance/agents/PerformanceAnnotationsAgent.test.ts +0 -32
- package/front_end/models/ai_assistance/agents/StylingAgent.test.ts +0 -1065
- package/front_end/models/ai_assistance/data_formatters/FileFormatter.test.ts +0 -116
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.test.ts +0 -87
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.test.ts +0 -367
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.test.ts +0 -92
- package/front_end/models/ai_code_completion/AiCodeCompletion.test.ts +0 -328
- package/front_end/models/autofill_manager/AutofillManager.test.ts +0 -266
- package/front_end/models/bindings/CompilerScriptMapping.test.ts +0 -550
- package/front_end/models/bindings/ContentProviderBasedProject.test.ts +0 -118
- package/front_end/models/bindings/DebuggerLanguagePlugins.test.ts +0 -144
- package/front_end/models/bindings/DebuggerWorkspaceBinding.test.ts +0 -179
- package/front_end/models/bindings/DefaultScriptMapping.test.ts +0 -193
- package/front_end/models/bindings/FileUtils.test.ts +0 -69
- package/front_end/models/bindings/LiveLocation.test.ts +0 -47
- package/front_end/models/bindings/PresentationConsoleMessageHelper.test.ts +0 -276
- package/front_end/models/bindings/ResourceMapping.test.ts +0 -253
- package/front_end/models/bindings/ResourceScriptMapping.test.ts +0 -118
- package/front_end/models/bindings/ResourceUtils.test.ts +0 -105
- package/front_end/models/breakpoints/BreakpointManager.test.ts +0 -1919
- package/front_end/models/cpu_profile/CPUProfileDataModel.test.ts +0 -376
- package/front_end/models/crux-manager/CrUXManager.test.ts +0 -613
- package/front_end/models/emulation/DeviceModeModel.test.ts +0 -104
- package/front_end/models/emulation/EmulatedDevices.test.ts +0 -61
- package/front_end/models/extensions/ExtensionServer.test.ts +0 -1170
- package/front_end/models/extensions/HostUrlPattern.test.ts +0 -312
- package/front_end/models/extensions/LanguageExtensionEndpoint.test.ts +0 -65
- package/front_end/models/extensions/RecorderPluginManager.test.ts +0 -34
- package/front_end/models/formatter/ScriptFormatter.test.ts +0 -93
- package/front_end/models/har/Importer.test.ts +0 -353
- package/front_end/models/har/Log.test.ts +0 -208
- package/front_end/models/har/Writer.test.ts +0 -49
- package/front_end/models/heap_snapshot_model/heap_snapshot_model.test.ts +0 -11
- package/front_end/models/issues_manager/CheckFormsIssuesTrigger.test.ts +0 -22
- package/front_end/models/issues_manager/DeprecationIssue.test.ts +0 -81
- package/front_end/models/issues_manager/ElementAccessibilityIssue.test.ts +0 -87
- package/front_end/models/issues_manager/FederatedAuthUserInfoRequestIssue.test.ts +0 -52
- package/front_end/models/issues_manager/GenericIssue.test.ts +0 -82
- package/front_end/models/issues_manager/Issue.test.ts +0 -56
- package/front_end/models/issues_manager/IssueResolver.test.ts +0 -91
- package/front_end/models/issues_manager/IssuesManager.test.ts +0 -360
- package/front_end/models/issues_manager/LowTextContrastIssue.test.ts +0 -58
- package/front_end/models/issues_manager/MarkdownIssueDescription.test.ts +0 -92
- package/front_end/models/issues_manager/PropertyRuleIssue.test.ts +0 -109
- package/front_end/models/issues_manager/RelatedIssue.test.ts +0 -64
- package/front_end/models/issues_manager/SRIMessageSignatureIssue.test.ts +0 -68
- package/front_end/models/issues_manager/SharedDictionaryIssue.test.ts +0 -68
- package/front_end/models/issues_manager/StylesheetLoadingIssue.test.ts +0 -138
- package/front_end/models/issues_manager/UnencodedDigestIssue.test.ts +0 -49
- package/front_end/models/javascript_metadata/JavaScriptMetadata.test.ts +0 -62
- package/front_end/models/logs/NetworkLog.test.ts +0 -376
- package/front_end/models/logs/RequestResolver.test.ts +0 -92
- package/front_end/models/persistence/AutomaticFileSystemManager.test.ts +0 -208
- package/front_end/models/persistence/AutomaticFileSystemWorkspaceBinding.test.ts +0 -227
- package/front_end/models/persistence/EditFileSystemView.test.ts +0 -181
- package/front_end/models/persistence/NetworkPersistenceManager.test.ts +0 -989
- package/front_end/models/persistence/PersistenceAction.test.ts +0 -93
- package/front_end/models/persistence/PersistenceImpl.test.ts +0 -229
- package/front_end/models/persistence/PlatformFileSystem.test.ts +0 -19
- package/front_end/models/persistence/WorkspaceSettingsTab.test.ts +0 -146
- package/front_end/models/project_settings/ProjectSettingsModel.test.ts +0 -260
- package/front_end/models/source_map_scopes/NamesResolver.test.ts +0 -624
- package/front_end/models/source_map_scopes/ScopeChainModel.test.ts +0 -87
- package/front_end/models/source_map_scopes/ScopeTreeCache.test.ts +0 -63
- package/front_end/models/stack_trace/StackTraceImpl.test.ts +0 -74
- package/front_end/models/stack_trace/StackTraceModel.test.ts +0 -296
- package/front_end/models/stack_trace/Trie.test.ts +0 -129
- package/front_end/models/text_utils/ContentData.test.ts +0 -162
- package/front_end/models/text_utils/StaticContentProvider.test.ts +0 -34
- package/front_end/models/text_utils/StreamingContentData.test.ts +0 -81
- package/front_end/models/text_utils/Text.test.ts +0 -103
- package/front_end/models/text_utils/TextCursor.test.ts +0 -48
- package/front_end/models/text_utils/TextRange.test.ts +0 -461
- package/front_end/models/text_utils/TextUtils.test.ts +0 -730
- package/front_end/models/text_utils/WasmDisassembly.test.ts +0 -56
- package/front_end/models/trace/ModelImpl.test.ts +0 -161
- package/front_end/models/trace/Processor.test.ts +0 -429
- package/front_end/models/trace/extras/FilmStrip.test.ts +0 -90
- package/front_end/models/trace/extras/MainThreadActivity.test.ts +0 -82
- package/front_end/models/trace/extras/ScriptDuplication.test.ts +0 -407
- package/front_end/models/trace/extras/StackTraceForEvent.test.ts +0 -330
- package/front_end/models/trace/extras/ThirdParties.test.ts +0 -114
- package/front_end/models/trace/extras/TraceFilter.test.ts +0 -103
- package/front_end/models/trace/extras/TraceTree.test.ts +0 -489
- package/front_end/models/trace/handlers/AnimationFramesHandler.test.ts +0 -40
- package/front_end/models/trace/handlers/AnimationHandler.test.ts +0 -54
- package/front_end/models/trace/handlers/AsyncJSCallsHandler.test.ts +0 -300
- package/front_end/models/trace/handlers/AuctionWorkletsHandler.test.ts +0 -167
- package/front_end/models/trace/handlers/DOMStatsHandler.test.ts +0 -30
- package/front_end/models/trace/handlers/ExtensionTraceDataHandler.test.ts +0 -987
- package/front_end/models/trace/handlers/FlowsHandler.test.ts +0 -185
- package/front_end/models/trace/handlers/FramesHandler.test.ts +0 -243
- package/front_end/models/trace/handlers/GPUHandler.test.ts +0 -26
- package/front_end/models/trace/handlers/ImagePaintingHandler.test.ts +0 -87
- package/front_end/models/trace/handlers/InitiatorsHandler.test.ts +0 -309
- package/front_end/models/trace/handlers/InvalidationsHandler.test.ts +0 -185
- package/front_end/models/trace/handlers/LargestImagePaintHandler.test.ts +0 -62
- package/front_end/models/trace/handlers/LargestTextPaintHandler.test.ts +0 -27
- package/front_end/models/trace/handlers/LayerTreeHandler.test.ts +0 -46
- package/front_end/models/trace/handlers/LayoutShiftsHandler.test.ts +0 -252
- package/front_end/models/trace/handlers/MemoryHandler.test.ts +0 -29
- package/front_end/models/trace/handlers/MetaHandler.test.ts +0 -650
- package/front_end/models/trace/handlers/NetworkRequestsHandler.test.ts +0 -514
- package/front_end/models/trace/handlers/PageFramesHandler.test.ts +0 -40
- package/front_end/models/trace/handlers/PageLoadMetricsHandler.test.ts +0 -274
- package/front_end/models/trace/handlers/RendererHandler.test.ts +0 -1007
- package/front_end/models/trace/handlers/SamplesHandler.test.ts +0 -355
- package/front_end/models/trace/handlers/ScreenshotsHandler.test.ts +0 -114
- package/front_end/models/trace/handlers/ScriptsHandler.test.ts +0 -103
- package/front_end/models/trace/handlers/SelectorStatsHandler.test.ts +0 -39
- package/front_end/models/trace/handlers/Threads.test.ts +0 -59
- package/front_end/models/trace/handlers/UserInteractionsHandler.test.ts +0 -439
- package/front_end/models/trace/handlers/UserTimingsHandler.test.ts +0 -525
- package/front_end/models/trace/handlers/WarningsHandler.test.ts +0 -86
- package/front_end/models/trace/handlers/WorkersHandler.test.ts +0 -80
- package/front_end/models/trace/handlers/helpers.test.ts +0 -102
- package/front_end/models/trace/helpers/SamplesIntegrator.test.ts +0 -372
- package/front_end/models/trace/helpers/SyntheticEvents.test.ts +0 -62
- package/front_end/models/trace/helpers/Timing.test.ts +0 -371
- package/front_end/models/trace/helpers/Trace.test.ts +0 -760
- package/front_end/models/trace/helpers/TreeHelpers.test.ts +0 -449
- package/front_end/models/trace/insights/CLSCulprits.test.ts +0 -254
- package/front_end/models/trace/insights/Cache.test.ts +0 -221
- package/front_end/models/trace/insights/Common.test.ts +0 -125
- package/front_end/models/trace/insights/DOMSize.test.ts +0 -66
- package/front_end/models/trace/insights/DocumentLatency.test.ts +0 -110
- package/front_end/models/trace/insights/DuplicatedJavaScript.test.ts +0 -128
- package/front_end/models/trace/insights/FontDisplay.test.ts +0 -64
- package/front_end/models/trace/insights/ForcedReflow.test.ts +0 -34
- package/front_end/models/trace/insights/INPBreakdown.test.ts +0 -32
- package/front_end/models/trace/insights/ImageDelivery.test.ts +0 -128
- package/front_end/models/trace/insights/LCPBreakdown.test.ts +0 -100
- package/front_end/models/trace/insights/LCPDiscovery.test.ts +0 -67
- package/front_end/models/trace/insights/LegacyJavaScript.test.ts +0 -81
- package/front_end/models/trace/insights/ModernHTTP.test.ts +0 -348
- package/front_end/models/trace/insights/NetworkDependencyTree.test.ts +0 -563
- package/front_end/models/trace/insights/RenderBlocking.test.ts +0 -133
- package/front_end/models/trace/insights/SlowCSSSelector.test.ts +0 -48
- package/front_end/models/trace/insights/Statistics.test.ts +0 -145
- package/front_end/models/trace/insights/ThirdParties.test.ts +0 -56
- package/front_end/models/trace/insights/Viewport.test.ts +0 -52
- package/front_end/models/trace/lantern/core/NetworkAnalyzer.test.ts +0 -530
- package/front_end/models/trace/lantern/graph/BaseNode.test.ts +0 -391
- package/front_end/models/trace/lantern/graph/PageDependencyGraph.test.ts +0 -670
- package/front_end/models/trace/lantern/metrics/FirstContentfulPaint.test.ts +0 -65
- package/front_end/models/trace/lantern/metrics/Interactive.test.ts +0 -70
- package/front_end/models/trace/lantern/metrics/LargestContentfulPaint.test.ts +0 -42
- package/front_end/models/trace/lantern/metrics/SpeedIndex.test.ts +0 -87
- package/front_end/models/trace/lantern/metrics/TBTUtils.test.ts +0 -138
- package/front_end/models/trace/lantern/simulation/ConnectionPool.test.ts +0 -199
- package/front_end/models/trace/lantern/simulation/DNSCache.test.ts +0 -76
- package/front_end/models/trace/lantern/simulation/Simulator.test.ts +0 -454
- package/front_end/models/trace/lantern/simulation/TCPConnection.test.ts +0 -368
- package/front_end/models/trace/types/File.test.ts +0 -42
- package/front_end/models/trace/types/TraceEvents.test.ts +0 -92
- package/front_end/models/workspace/IgnoreListManager.test.ts +0 -616
- package/front_end/models/workspace/SearchConfig.test.ts +0 -114
- package/front_end/models/workspace/UISourceCode.test.ts +0 -415
- package/front_end/models/workspace/WorkspaceImpl.test.ts +0 -187
- package/front_end/models/workspace_diff/WorkspaceDiff.test.ts +0 -84
- package/front_end/panels/accessibility/ARIAAttributesView.test.ts +0 -101
- package/front_end/panels/accessibility/AccessibilitySidebarView.test.ts +0 -67
- package/front_end/panels/ai_assistance/AiAssistancePanel.test.ts +0 -1891
- package/front_end/panels/ai_assistance/PatchWidget.test.ts +0 -445
- package/front_end/panels/ai_assistance/SelectWorkspaceDialog.test.ts +0 -201
- package/front_end/panels/ai_assistance/components/ChatView.test.ts +0 -103
- package/front_end/panels/ai_assistance/components/ExploreWidget.test.ts +0 -118
- package/front_end/panels/ai_assistance/components/MarkdownRendererWithCodeBlock.test.ts +0 -80
- package/front_end/panels/ai_assistance/components/UserActionRow.test.ts +0 -123
- package/front_end/panels/animation/AnimationTimeline.test.ts +0 -752
- package/front_end/panels/application/AppManifestView.test.ts +0 -342
- package/front_end/panels/application/ApplicationPanelSidebar.test.ts +0 -484
- package/front_end/panels/application/BackgroundServiceView.test.ts +0 -160
- package/front_end/panels/application/DOMStorageModel.test.ts +0 -45
- package/front_end/panels/application/ExtensionStorageItemsView.test.ts +0 -152
- package/front_end/panels/application/ExtensionStorageModel.test.ts +0 -249
- package/front_end/panels/application/IndexedDBModel.test.ts +0 -252
- package/front_end/panels/application/IndexedDBViews.test.ts +0 -182
- package/front_end/panels/application/InterestGroupStorageView.test.ts +0 -155
- package/front_end/panels/application/InterestGroupTreeElement.test.ts +0 -37
- package/front_end/panels/application/KeyValueStorageItemsView.test.ts +0 -120
- package/front_end/panels/application/PreloadingTreeElement.test.ts +0 -30
- package/front_end/panels/application/ReportingApiView.test.ts +0 -233
- package/front_end/panels/application/ServiceWorkerUpdateCycleView.test.ts +0 -130
- package/front_end/panels/application/ServiceWorkersView.test.ts +0 -179
- package/front_end/panels/application/SharedStorageEventsView.test.ts +0 -231
- package/front_end/panels/application/SharedStorageItemsView.test.ts +0 -913
- package/front_end/panels/application/SharedStorageListTreeElement.test.ts +0 -161
- package/front_end/panels/application/SharedStorageModel.test.ts +0 -434
- package/front_end/panels/application/SharedStorageTreeElement.test.ts +0 -140
- package/front_end/panels/application/StorageBucketsTreeElement.test.ts +0 -149
- package/front_end/panels/application/StorageView.test.ts +0 -156
- package/front_end/panels/application/components/BackForwardCacheView.test.ts +0 -303
- package/front_end/panels/application/components/BounceTrackingMitigationsView.test.ts +0 -138
- package/front_end/panels/application/components/EndpointsGrid.test.ts +0 -83
- package/front_end/panels/application/components/FrameDetailsView.test.ts +0 -263
- package/front_end/panels/application/components/InterestGroupAccessGrid.test.ts +0 -70
- package/front_end/panels/application/components/OriginTrialTreeView.test.ts +0 -442
- package/front_end/panels/application/components/ProtocolHandlersView.test.ts +0 -73
- package/front_end/panels/application/components/ReportsGrid.test.ts +0 -131
- package/front_end/panels/application/components/ServiceWorkerRouterView.test.ts +0 -57
- package/front_end/panels/application/components/SharedStorageAccessGrid.test.ts +0 -84
- package/front_end/panels/application/components/SharedStorageMetadataView.test.ts +0 -122
- package/front_end/panels/application/components/StackTrace.test.ts +0 -222
- package/front_end/panels/application/components/StorageMetadataView.test.ts +0 -208
- package/front_end/panels/application/components/TrustTokensView.test.ts +0 -127
- package/front_end/panels/application/preloading/PreloadingView.test.ts +0 -1180
- package/front_end/panels/application/preloading/components/MismatchedPreloadingGrid.test.ts +0 -194
- package/front_end/panels/application/preloading/components/PreloadingDetailsReportView.test.ts +0 -532
- package/front_end/panels/application/preloading/components/PreloadingGrid.test.ts +0 -503
- package/front_end/panels/application/preloading/components/PreloadingMismatchedHeadersGrid.test.ts +0 -150
- package/front_end/panels/application/preloading/components/RuleSetDetailsView.test.ts +0 -185
- package/front_end/panels/application/preloading/components/RuleSetGrid.test.ts +0 -190
- package/front_end/panels/application/preloading/components/UsedPreloadingView.test.ts +0 -751
- package/front_end/panels/autofill/AutofillView.test.ts +0 -224
- package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.test.ts +0 -179
- package/front_end/panels/browser_debugger/DOMBreakpointsSidebarPane.test.ts +0 -52
- package/front_end/panels/browser_debugger/browser_debugger.test.ts +0 -11
- package/front_end/panels/changes/CombinedDiffView.test.ts +0 -154
- package/front_end/panels/changes/changes.test.ts +0 -11
- package/front_end/panels/common/AiCodeCompletionDisclaimer.test.ts +0 -57
- package/front_end/panels/common/AiCodeCompletionSummaryToolbar.test.ts +0 -85
- package/front_end/panels/common/AiCodeCompletionTeaser.test.ts +0 -98
- package/front_end/panels/console/ConsoleContextSelector.test.ts +0 -96
- package/front_end/panels/console/ConsoleFormat.test.ts +0 -462
- package/front_end/panels/console/ConsolePrompt.test.ts +0 -188
- package/front_end/panels/console/ConsoleSidebar.test.ts +0 -130
- package/front_end/panels/console/ConsoleView.test.ts +0 -276
- package/front_end/panels/console/ConsoleViewMessage.test.ts +0 -433
- package/front_end/panels/console/ConsoleViewport.test.ts +0 -399
- package/front_end/panels/console/ErrorStackParser.test.ts +0 -343
- package/front_end/panels/console_counters/console_counters.test.ts +0 -11
- package/front_end/panels/coverage/CoverageDecorationManager.test.ts +0 -211
- package/front_end/panels/coverage/CoverageModel.test.ts +0 -91
- package/front_end/panels/coverage/CoverageView.test.ts +0 -202
- package/front_end/panels/css_overview/CSSOverviewPanel.test.ts +0 -40
- package/front_end/panels/developer_resources/DeveloperResourcesView.test.ts +0 -43
- package/front_end/panels/developer_resources/developer_resources.test.ts +0 -11
- package/front_end/panels/elements/AccessibilityTreeView.test.ts +0 -50
- package/front_end/panels/elements/CSSRuleValidator.test.ts +0 -482
- package/front_end/panels/elements/CSSValueTraceView.test.ts +0 -215
- package/front_end/panels/elements/ClassesPaneWidget.test.ts +0 -48
- package/front_end/panels/elements/ColorSwatchPopoverIcon.test.ts +0 -63
- package/front_end/panels/elements/ComputedStyleModel.test.ts +0 -155
- package/front_end/panels/elements/ComputedStyleWidget.test.ts +0 -153
- package/front_end/panels/elements/DOMLinkifier.test.ts +0 -60
- package/front_end/panels/elements/DOMTreeWidget.test.ts +0 -58
- package/front_end/panels/elements/ElementStatePaneWidget.test.ts +0 -363
- package/front_end/panels/elements/ElementsPanel.test.ts +0 -211
- package/front_end/panels/elements/ElementsTreeElement.test.ts +0 -443
- package/front_end/panels/elements/ElementsTreeOutline.test.ts +0 -218
- package/front_end/panels/elements/EventListenersWidget.test.ts +0 -129
- package/front_end/panels/elements/InspectElementModeController.test.ts +0 -163
- package/front_end/panels/elements/LayoutPane.test.ts +0 -219
- package/front_end/panels/elements/PlatformFontsWidget.test.ts +0 -46
- package/front_end/panels/elements/PropertiesWidget.test.ts +0 -76
- package/front_end/panels/elements/PropertyRenderer.test.ts +0 -340
- package/front_end/panels/elements/StylePropertiesSection.test.ts +0 -324
- package/front_end/panels/elements/StylePropertyHighlighter.test.ts +0 -160
- package/front_end/panels/elements/StylePropertyTreeElement.test.ts +0 -2250
- package/front_end/panels/elements/StylePropertyUtils.test.ts +0 -41
- package/front_end/panels/elements/StylesSidebarPane.test.ts +0 -716
- package/front_end/panels/elements/TopLayerContainer.test.ts +0 -55
- package/front_end/panels/elements/WebCustomData.test.ts +0 -77
- package/front_end/panels/elements/components/AccessibilityTreeNode.test.ts +0 -44
- package/front_end/panels/elements/components/AdornerManager.test.ts +0 -82
- package/front_end/panels/elements/components/CSSHintDetailsView.test.ts +0 -40
- package/front_end/panels/elements/components/CSSPropertyDocsView.test.ts +0 -131
- package/front_end/panels/elements/components/CSSPropertyIconResolver.test.ts +0 -931
- package/front_end/panels/elements/components/CSSQuery.test.ts +0 -58
- package/front_end/panels/elements/components/CSSVariableValueView.test.ts +0 -20
- package/front_end/panels/elements/components/ComputedStyleProperty.test.ts +0 -38
- package/front_end/panels/elements/components/ComputedStyleTrace.test.ts +0 -58
- package/front_end/panels/elements/components/ElementsBreadcrumbs.test.ts +0 -435
- package/front_end/panels/elements/components/ElementsTreeExpandButton.test.ts +0 -50
- package/front_end/panels/elements/components/QueryContainer.test.ts +0 -151
- package/front_end/panels/elements/components/StylePropertyEditor.test.ts +0 -188
- package/front_end/panels/emulation/AdvancedApp.test.ts +0 -80
- package/front_end/panels/emulation/MediaQueryInspector.test.ts +0 -55
- package/front_end/panels/event_listeners/EventListenersView.test.ts +0 -50
- package/front_end/panels/explain/PromptBuilder.test.ts +0 -587
- package/front_end/panels/explain/components/ConsoleInsight.test.ts +0 -926
- package/front_end/panels/issues/IssueAggregator.test.ts +0 -427
- package/front_end/panels/issues/IssueView.test.ts +0 -75
- package/front_end/panels/issues/IssuesPane.test.ts +0 -32
- package/front_end/panels/layer_viewer/layer_viewer.test.ts +0 -11
- package/front_end/panels/layers/LayersPanel.test.ts +0 -55
- package/front_end/panels/lighthouse/LighthouseController.test.ts +0 -36
- package/front_end/panels/lighthouse/LighthousePanel.test.ts +0 -89
- package/front_end/panels/lighthouse/LighthouseProtocolService.test.ts +0 -70
- package/front_end/panels/lighthouse/LighthouseReportRenderer.test.ts +0 -123
- package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorController.test.ts +0 -201
- package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorPane.test.ts +0 -54
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryHighlightChipList.test.ts +0 -124
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.test.ts +0 -421
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryNavigator.test.ts +0 -194
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryValueInterpreter.test.ts +0 -118
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryViewer.test.ts +0 -397
- package/front_end/panels/linear_memory_inspector/components/ValueInterpreterDisplay.test.ts +0 -450
- package/front_end/panels/linear_memory_inspector/components/ValueInterpreterSettings.test.ts +0 -91
- package/front_end/panels/media/MainView.test.ts +0 -127
- package/front_end/panels/media/TickingFlameChartHelpers.test.ts +0 -90
- package/front_end/panels/mobile_throttling/ThrottlingManager.test.ts +0 -119
- package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.test.ts +0 -115
- package/front_end/panels/network/BlockedURLsPane.test.ts +0 -80
- package/front_end/panels/network/NetworkConfigView.test.ts +0 -50
- package/front_end/panels/network/NetworkDataGridNode.test.ts +0 -474
- package/front_end/panels/network/NetworkItemView.test.ts +0 -169
- package/front_end/panels/network/NetworkLogView.test.ts +0 -1101
- package/front_end/panels/network/NetworkOverview.test.ts +0 -60
- package/front_end/panels/network/NetworkPanel.test.ts +0 -103
- package/front_end/panels/network/NetworkSearchScope.test.ts +0 -182
- package/front_end/panels/network/RequestCookiesView.test.ts +0 -49
- package/front_end/panels/network/RequestHTMLView.test.ts +0 -28
- package/front_end/panels/network/RequestPayloadView.test.ts +0 -13
- package/front_end/panels/network/RequestPreviewView.test.ts +0 -105
- package/front_end/panels/network/RequestResponseView.test.ts +0 -130
- package/front_end/panels/network/RequestTimingView.test.ts +0 -172
- package/front_end/panels/network/ResourceDirectSocketChunkView.test.ts +0 -335
- package/front_end/panels/network/components/DirectSocketConnectionView.test.ts +0 -253
- package/front_end/panels/network/components/HeaderSectionRow.test.ts +0 -659
- package/front_end/panels/network/components/RequestHeaderSection.test.ts +0 -101
- package/front_end/panels/network/components/RequestHeadersView.test.ts +0 -537
- package/front_end/panels/network/components/RequestTrustTokensView.test.ts +0 -80
- package/front_end/panels/network/components/ResponseHeaderSection.test.ts +0 -1359
- package/front_end/panels/performance_monitor/PerformanceMonitor.test.ts +0 -152
- package/front_end/panels/profiler/HeapDetachedElementsView.test.ts +0 -34
- package/front_end/panels/profiler/HeapProfileView.test.ts +0 -34
- package/front_end/panels/profiler/HeapSnapshotView.test.ts +0 -35
- package/front_end/panels/protocol_monitor/JSONEditor.test.ts +0 -1321
- package/front_end/panels/protocol_monitor/ProtocolMonitor.test.ts +0 -548
- package/front_end/panels/recorder/RecorderController.test.ts +0 -483
- package/front_end/panels/recorder/components/CreateRecordingView.test.ts +0 -141
- package/front_end/panels/recorder/components/RecordingListView.test.ts +0 -64
- package/front_end/panels/recorder/components/RecordingView.test.ts +0 -186
- package/front_end/panels/recorder/components/ReplaySection.test.ts +0 -113
- package/front_end/panels/recorder/components/SelectButton.test.ts +0 -56
- package/front_end/panels/recorder/components/StepEditor.test.ts +0 -711
- package/front_end/panels/recorder/components/StepView.test.ts +0 -208
- package/front_end/panels/recorder/converters/LighthouseConverter.test.ts +0 -79
- package/front_end/panels/recorder/converters/PuppeteerConverter.test.ts +0 -88
- package/front_end/panels/recorder/converters/PuppeteerReplayConverter.test.ts +0 -59
- package/front_end/panels/recorder/injected/selectors/CSSSelector.test.ts +0 -39
- package/front_end/panels/recorder/injected.test.ts +0 -364
- package/front_end/panels/recorder/models/RecorderSettings.test.ts +0 -65
- package/front_end/panels/recorder/models/RecorderShortcutHelper.test.ts +0 -59
- package/front_end/panels/recorder/models/RecordingPlayer.test.ts +0 -235
- package/front_end/panels/recorder/models/SchemaUtils.test.ts +0 -35
- package/front_end/panels/recorder/models/ScreenshotUtils.test.ts +0 -74
- package/front_end/panels/recorder/models/Section.test.ts +0 -98
- package/front_end/panels/recorder/models/recording-storage.test.ts +0 -66
- package/front_end/panels/recorder/models/screenshot-storage.test.ts +0 -159
- package/front_end/panels/recorder/util/SharedObject.test.ts +0 -88
- package/front_end/panels/screencast/ScreencastApp.test.ts +0 -24
- package/front_end/panels/search/SearchResultsPane.test.ts +0 -228
- package/front_end/panels/search/SearchView.test.ts +0 -197
- package/front_end/panels/security/CookieControlsView.test.ts +0 -65
- package/front_end/panels/security/CookieReportView.test.ts +0 -161
- package/front_end/panels/security/SecurityModel.test.ts +0 -45
- package/front_end/panels/security/SecurityPanel.test.ts +0 -264
- package/front_end/panels/settings/AISettingsTab.test.ts +0 -293
- package/front_end/panels/settings/components/SyncSection.test.ts +0 -110
- package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.test.ts +0 -146
- package/front_end/panels/settings/emulation/utils/StructuredHeaders.test.ts +0 -462
- package/front_end/panels/settings/emulation/utils/UserAgentMetadata.test.ts +0 -94
- package/front_end/panels/snippets/ScriptSnippetFileSystem.test.ts +0 -29
- package/front_end/panels/sources/AiCodeCompletionPlugin.test.ts +0 -119
- package/front_end/panels/sources/BreakpointEditDialog.test.ts +0 -127
- package/front_end/panels/sources/BreakpointsView.test.ts +0 -1878
- package/front_end/panels/sources/BreakpointsViewUtils.test.ts +0 -209
- package/front_end/panels/sources/CSSPlugin.test.ts +0 -90
- package/front_end/panels/sources/CoveragePlugin.test.ts +0 -82
- package/front_end/panels/sources/DebuggerPausedMessage.test.ts +0 -138
- package/front_end/panels/sources/DebuggerPlugin.test.ts +0 -725
- package/front_end/panels/sources/FilePathScoreFunction.test.ts +0 -171
- package/front_end/panels/sources/FilteredUISourceCodeListProvider.test.ts +0 -150
- package/front_end/panels/sources/NavigatorView.test.ts +0 -277
- package/front_end/panels/sources/OutlineQuickOpen.test.ts +0 -1064
- package/front_end/panels/sources/ResourceOriginPlugin.test.ts +0 -38
- package/front_end/panels/sources/SourcesNavigator.test.ts +0 -615
- package/front_end/panels/sources/SourcesPanel.test.ts +0 -90
- package/front_end/panels/sources/SourcesView.test.ts +0 -242
- package/front_end/panels/sources/TabbedEditorContainer.test.ts +0 -122
- package/front_end/panels/sources/UISourceCodeFrame.test.ts +0 -104
- package/front_end/panels/sources/components/HeadersView.test.ts +0 -573
- package/front_end/panels/timeline/AnnotationHelpers.test.ts +0 -190
- package/front_end/panels/timeline/Breadcrumbs.test.ts +0 -281
- package/front_end/panels/timeline/CountersGraph.test.ts +0 -80
- package/front_end/panels/timeline/EntriesFilter.test.ts +0 -710
- package/front_end/panels/timeline/Initiators.test.ts +0 -176
- package/front_end/panels/timeline/ModificationsManager.test.ts +0 -254
- package/front_end/panels/timeline/RecordingMetadata.test.ts +0 -147
- package/front_end/panels/timeline/SaveFileFormatter.test.ts +0 -77
- package/front_end/panels/timeline/ThirdPartyTreeView.test.ts +0 -84
- package/front_end/panels/timeline/TimelineController.test.ts +0 -98
- package/front_end/panels/timeline/TimelineDetailsView.test.ts +0 -188
- package/front_end/panels/timeline/TimelineFilters.test.ts +0 -72
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.test.ts +0 -377
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.test.ts +0 -266
- package/front_end/panels/timeline/TimelineFlameChartView.test.ts +0 -1209
- package/front_end/panels/timeline/TimelineHistoryManager.test.ts +0 -160
- package/front_end/panels/timeline/TimelineLoader.test.ts +0 -167
- package/front_end/panels/timeline/TimelineMiniMap.test.ts +0 -135
- package/front_end/panels/timeline/TimelinePanel.test.ts +0 -550
- package/front_end/panels/timeline/TimelineSelection.test.ts +0 -112
- package/front_end/panels/timeline/TimelineTreeView.test.ts +0 -339
- package/front_end/panels/timeline/TimelineUIUtils.test.ts +0 -1793
- package/front_end/panels/timeline/TrackConfigBanner.test.ts +0 -68
- package/front_end/panels/timeline/TrackConfiguration.test.ts +0 -46
- package/front_end/panels/timeline/components/BreadcrumbsUI.test.ts +0 -101
- package/front_end/panels/timeline/components/CPUThrottlingSelector.test.ts +0 -100
- package/front_end/panels/timeline/components/ExportTraceOptions.test.ts +0 -281
- package/front_end/panels/timeline/components/FieldSettingsDialog.test.ts +0 -295
- package/front_end/panels/timeline/components/IgnoreListSetting.test.ts +0 -325
- package/front_end/panels/timeline/components/InteractionBreakdown.test.ts +0 -37
- package/front_end/panels/timeline/components/Invalidations.test.ts +0 -38
- package/front_end/panels/timeline/components/LayoutShiftDetails.test.ts +0 -72
- package/front_end/panels/timeline/components/LiveMetricsView.test.ts +0 -1006
- package/front_end/panels/timeline/components/MetricCard.test.ts +0 -637
- package/front_end/panels/timeline/components/NetworkRequestDetails.test.ts +0 -178
- package/front_end/panels/timeline/components/NetworkThrottlingSelector.test.ts +0 -188
- package/front_end/panels/timeline/components/OriginMap.test.ts +0 -359
- package/front_end/panels/timeline/components/RelatedInsightChips.test.ts +0 -91
- package/front_end/panels/timeline/components/Sidebar.test.ts +0 -185
- package/front_end/panels/timeline/components/SidebarAnnotationsTab.test.ts +0 -261
- package/front_end/panels/timeline/components/SidebarInsightsTab.test.ts +0 -44
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.test.ts +0 -165
- package/front_end/panels/timeline/components/TimelineSummary.test.ts +0 -77
- package/front_end/panels/timeline/components/Utils.test.ts +0 -112
- package/front_end/panels/timeline/components/insights/BaseInsightComponent.test.ts +0 -382
- package/front_end/panels/timeline/components/insights/CLSCulprits.test.ts +0 -44
- package/front_end/panels/timeline/components/insights/INPBreakdown.test.ts +0 -74
- package/front_end/panels/timeline/components/insights/NetworkDependencyTree.test.ts +0 -76
- package/front_end/panels/timeline/components/insights/NodeLink.test.ts +0 -113
- package/front_end/panels/timeline/components/insights/Table.test.ts +0 -60
- package/front_end/panels/timeline/overlays/OverlaysImpl.test.ts +0 -1424
- package/front_end/panels/timeline/overlays/components/TimespanBreakdownOverlay.test.ts +0 -41
- package/front_end/panels/timeline/track_appenders/AnimationsTrackAppender.test.ts +0 -101
- package/front_end/panels/timeline/track_appenders/AppenderUtils.test.ts +0 -197
- package/front_end/panels/timeline/track_appenders/CompatibilityTracksAppender.test.ts +0 -229
- package/front_end/panels/timeline/track_appenders/ExtensionTrackAppender.test.ts +0 -249
- package/front_end/panels/timeline/track_appenders/GPUTrackAppender.test.ts +0 -116
- package/front_end/panels/timeline/track_appenders/InteractionsTrackAppender.test.ts +0 -124
- package/front_end/panels/timeline/track_appenders/LayoutShiftsTrackAppender.test.ts +0 -104
- package/front_end/panels/timeline/track_appenders/NetworkTrackAppender.test.ts +0 -65
- package/front_end/panels/timeline/track_appenders/ThreadAppender.test.ts +0 -595
- package/front_end/panels/timeline/track_appenders/TimingsTrackAppender.test.ts +0 -347
- package/front_end/panels/timeline/utils/AICallTree.test.ts +0 -453
- package/front_end/panels/timeline/utils/EntityMapper.test.ts +0 -123
- package/front_end/panels/timeline/utils/EntryName.test.ts +0 -177
- package/front_end/panels/timeline/utils/EntryNodes.test.ts +0 -137
- package/front_end/panels/timeline/utils/EventsSerializer.test.ts +0 -71
- package/front_end/panels/timeline/utils/FreshRecording.test.ts +0 -23
- package/front_end/panels/timeline/utils/Helpers.test.ts +0 -85
- package/front_end/panels/timeline/utils/IgnoreList.test.ts +0 -192
- package/front_end/panels/timeline/utils/ImageCache.test.ts +0 -107
- package/front_end/panels/timeline/utils/InsightAIContext.test.ts +0 -120
- package/front_end/panels/timeline/utils/SourceMapsResolver.test.ts +0 -334
- package/front_end/panels/timeline/utils/Treemap.test.ts +0 -321
- package/front_end/panels/utils/utils.test.ts +0 -232
- package/front_end/panels/web_audio/WebAudioView.test.ts +0 -247
- package/front_end/panels/web_audio/web_audio.test.ts +0 -11
- package/front_end/panels/webauthn/WebauthnPane.test.ts +0 -377
- package/front_end/panels/whats_new/ReleaseNote.test.ts +0 -92
- package/front_end/panels/whats_new/ReleaseNoteView.test.ts +0 -160
- package/front_end/services/trace_bounds/TraceBounds.test.ts +0 -155
- package/front_end/services/tracing/ExternalRequests.test.ts +0 -39
- package/front_end/services/tracing/ExternalRequests.ts +0 -74
- package/front_end/services/tracing/TracingManager.test.ts +0 -102
- package/front_end/testing/AiAssistanceHelpers.ts +0 -349
- package/front_end/testing/ConsoleHelpers.ts +0 -39
- package/front_end/testing/ContextMenuHelpers.ts +0 -46
- package/front_end/testing/Cookies.ts +0 -72
- package/front_end/testing/DOMHelpers.ts +0 -359
- package/front_end/testing/DataGridHelpers.ts +0 -83
- package/front_end/testing/EnvironmentHelpers.ts +0 -565
- package/front_end/testing/ExpectStubCall.ts +0 -46
- package/front_end/testing/ExtensionHelpers.ts +0 -77
- package/front_end/testing/FileManagerHelpers.ts +0 -22
- package/front_end/testing/InsightHelpers.ts +0 -88
- package/front_end/testing/LanguagePluginHelpers.ts +0 -91
- package/front_end/testing/MockConnection.ts +0 -163
- package/front_end/testing/MockExecutionContext.ts +0 -24
- package/front_end/testing/MockIssuesManager.ts +0 -64
- package/front_end/testing/MockIssuesModel.ts +0 -22
- package/front_end/testing/MockNetworkLog.ts +0 -41
- package/front_end/testing/MockScopeChain.test.ts +0 -25
- package/front_end/testing/MockScopeChain.ts +0 -402
- package/front_end/testing/MockSettingStorage.ts +0 -23
- package/front_end/testing/MutationHelpers.test.ts +0 -271
- package/front_end/testing/MutationHelpers.ts +0 -250
- package/front_end/testing/NetworkHelpers.ts +0 -36
- package/front_end/testing/OverridesHelpers.ts +0 -85
- package/front_end/testing/PersistenceHelpers.ts +0 -64
- package/front_end/testing/PropertyParser.ts +0 -34
- package/front_end/testing/README.md +0 -123
- package/front_end/testing/ResourceTreeHelpers.ts +0 -126
- package/front_end/testing/SnapshotTester.snapshot.txt +0 -9
- package/front_end/testing/SnapshotTester.test.ts +0 -32
- package/front_end/testing/SnapshotTester.ts +0 -150
- package/front_end/testing/SourceMapEncoder.test.ts +0 -169
- package/front_end/testing/SourceMapEncoder.ts +0 -130
- package/front_end/testing/SourceMapHelpers.ts +0 -113
- package/front_end/testing/StackTraceHelpers.ts +0 -47
- package/front_end/testing/StorageItemsViewHelpers.ts +0 -24
- package/front_end/testing/StubIssue.ts +0 -123
- package/front_end/testing/StyleHelpers.ts +0 -160
- package/front_end/testing/TraceHelpers.ts +0 -1003
- package/front_end/testing/TraceLoader.ts +0 -344
- package/front_end/testing/TrackAsyncOperations.ts +0 -276
- package/front_end/testing/UISourceCodeHelpers.ts +0 -157
- package/front_end/testing/UserMetricsHelpers.ts +0 -17
- package/front_end/testing/ViewFunctionHelpers.ts +0 -62
- package/front_end/testing/VisualLoggingHelpers.ts +0 -11
- package/front_end/testing/test_setup.ts +0 -117
- package/front_end/ui/components/adorners/Adorner.test.ts +0 -134
- package/front_end/ui/components/buttons/Button.test.ts +0 -268
- package/front_end/ui/components/cards/Card.test.ts +0 -101
- package/front_end/ui/components/chrome_link/ChromeLink.test.ts +0 -57
- package/front_end/ui/components/code_highlighter/CodeHighlighter.test.ts +0 -318
- package/front_end/ui/components/dialogs/ButtonDialog.test.ts +0 -170
- package/front_end/ui/components/dialogs/Dialog.test.ts +0 -903
- package/front_end/ui/components/dialogs/ShortcutDialog.test.ts +0 -79
- package/front_end/ui/components/diff_view/DiffView.test.ts +0 -94
- package/front_end/ui/components/expandable_list/ExpandableList.test.ts +0 -77
- package/front_end/ui/components/helpers/helpers.test.ts +0 -118
- package/front_end/ui/components/highlighting/HighlightManager.test.ts +0 -89
- package/front_end/ui/components/highlighting/highlighting.css +0 -9
- package/front_end/ui/components/icon_button/FileSourceIcon.test.ts +0 -32
- package/front_end/ui/components/icon_button/Icon.test.ts +0 -126
- package/front_end/ui/components/icon_button/IconButton.test.ts +0 -277
- package/front_end/ui/components/issue_counter/IssueCounter.test.ts +0 -234
- package/front_end/ui/components/issue_counter/IssueLinkIcon.test.ts +0 -187
- package/front_end/ui/components/linkifier/LinkifierImpl.test.ts +0 -84
- package/front_end/ui/components/markdown_view/CodeBlock.test.ts +0 -92
- package/front_end/ui/components/markdown_view/MarkdownImage.test.ts +0 -56
- package/front_end/ui/components/markdown_view/MarkdownLink.test.ts +0 -30
- package/front_end/ui/components/markdown_view/MarkdownView.test.ts +0 -445
- package/front_end/ui/components/menus/SelectMenu.test.ts +0 -106
- package/front_end/ui/components/node_text/NodeText.test.ts +0 -80
- package/front_end/ui/components/panel_feedback/FeedbackButton.test.ts +0 -36
- package/front_end/ui/components/panel_feedback/PanelFeedback.test.ts +0 -47
- package/front_end/ui/components/panel_feedback/PreviewToggle.test.ts +0 -75
- package/front_end/ui/components/render_coordinator/render_coordinator.test.ts +0 -243
- package/front_end/ui/components/report_view/ReportView.test.ts +0 -44
- package/front_end/ui/components/request_link_icon/RequestLinkIcon.test.ts +0 -298
- package/front_end/ui/components/settings/SettingCheckbox.test.ts +0 -205
- package/front_end/ui/components/settings/SettingDeprecationWarning.test.ts +0 -68
- package/front_end/ui/components/snackbars/Snackbar.test.ts +0 -141
- package/front_end/ui/components/survey_link/SurveyLink.test.ts +0 -118
- package/front_end/ui/components/switch/SwitchImpl.test.ts +0 -54
- package/front_end/ui/components/text_editor/AiCodeCompletionTeaserPlaceholder.test.ts +0 -84
- package/front_end/ui/components/text_editor/AutocompleteHistory.test.ts +0 -126
- package/front_end/ui/components/text_editor/ExecutionPositionHighlighter.test.ts +0 -140
- package/front_end/ui/components/text_editor/TextEditor.test.ts +0 -340
- package/front_end/ui/components/text_editor/TextEditorHistory.test.ts +0 -170
- package/front_end/ui/components/text_editor/javascript.test.ts +0 -121
- package/front_end/ui/components/text_prompt/TextPrompt.test.ts +0 -81
- package/front_end/ui/components/tooltips/Tooltip.test.ts +0 -307
- package/front_end/ui/components/tree_outline/TreeOutline.test.ts +0 -1472
- package/front_end/ui/legacy/ARIAUtils.test.ts +0 -140
- package/front_end/ui/legacy/ActionRegistration.test.ts +0 -173
- package/front_end/ui/legacy/Context.test.ts +0 -14
- package/front_end/ui/legacy/ContextMenu.test.ts +0 -261
- package/front_end/ui/legacy/DockController.test.ts +0 -88
- package/front_end/ui/legacy/FilterBar.test.ts +0 -52
- package/front_end/ui/legacy/Fragment.test.ts +0 -60
- package/front_end/ui/legacy/Geometry.test.ts +0 -658
- package/front_end/ui/legacy/Infobar.test.ts +0 -53
- package/front_end/ui/legacy/InspectorView.test.ts +0 -99
- package/front_end/ui/legacy/KeyboardShortcut.test.ts +0 -28
- package/front_end/ui/legacy/ListModel.test.ts +0 -78
- package/front_end/ui/legacy/ListWidget.test.ts +0 -78
- package/front_end/ui/legacy/SettingsUI.test.ts +0 -157
- package/front_end/ui/legacy/ShortcutRegistry.test.ts +0 -35
- package/front_end/ui/legacy/SplitWidget.test.ts +0 -62
- package/front_end/ui/legacy/SuggestBox.test.ts +0 -126
- package/front_end/ui/legacy/Toolbar.test.ts +0 -244
- package/front_end/ui/legacy/Treeoutline.test.ts +0 -252
- package/front_end/ui/legacy/UIUtils.test.ts +0 -255
- package/front_end/ui/legacy/View.test.ts +0 -76
- package/front_end/ui/legacy/ViewManager.test.ts +0 -235
- package/front_end/ui/legacy/ViewRegistration.test.ts +0 -76
- package/front_end/ui/legacy/Widget.test.ts +0 -206
- package/front_end/ui/legacy/XLink.test.ts +0 -68
- package/front_end/ui/legacy/components/color_picker/ColorFormatSpec.test.ts +0 -217
- package/front_end/ui/legacy/components/color_picker/Spectrum.test.ts +0 -101
- package/front_end/ui/legacy/components/data_grid/DataGridElement.test.ts +0 -272
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingModel.test.ts +0 -23
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingUI.test.ts +0 -58
- package/front_end/ui/legacy/components/inline_editor/BezierUI.test.ts +0 -124
- package/front_end/ui/legacy/components/inline_editor/CSSAngle.test.ts +0 -399
- package/front_end/ui/legacy/components/inline_editor/CSSLinearEasingModel.test.ts +0 -64
- package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.test.ts +0 -36
- package/front_end/ui/legacy/components/inline_editor/ColorMixSwatch.test.ts +0 -40
- package/front_end/ui/legacy/components/inline_editor/ColorSwatch.test.ts +0 -259
- package/front_end/ui/legacy/components/inline_editor/FontEditorUnitConverter.test.ts +0 -47
- package/front_end/ui/legacy/components/inline_editor/FontEditorUtils.test.ts +0 -27
- package/front_end/ui/legacy/components/inline_editor/LinkSwatch.test.ts +0 -86
- package/front_end/ui/legacy/components/object_ui/JavaScriptREPL.test.ts +0 -45
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.test.ts +0 -72
- package/front_end/ui/legacy/components/perf_ui/ChartViewport.test.ts +0 -63
- package/front_end/ui/legacy/components/perf_ui/FilmStripView.test.ts +0 -218
- package/front_end/ui/legacy/components/perf_ui/FlameChart.test.ts +0 -1630
- package/front_end/ui/legacy/components/perf_ui/PieChart.test.ts +0 -220
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.test.ts +0 -152
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.test.ts +0 -70
- package/front_end/ui/legacy/components/quick_open/CommandMenu.test.ts +0 -74
- package/front_end/ui/legacy/components/quick_open/FilteredListWidget.test.ts +0 -111
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.test.ts +0 -81
- package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.test.ts +0 -77
- package/front_end/ui/legacy/components/source_frame/SourceFrame.test.ts +0 -146
- package/front_end/ui/legacy/components/source_frame/StreamingContentHexView.test.ts +0 -67
- package/front_end/ui/legacy/components/utils/JSPresentationUtils.test.ts +0 -52
- package/front_end/ui/legacy/components/utils/Linkifier.test.ts +0 -547
- package/front_end/ui/legacy/theme_support/ThemeSupport.test.ts +0 -129
- package/front_end/ui/lit/i18n-template.test.ts +0 -51
- package/front_end/ui/lit/strip-whitespace.test.ts +0 -110
- package/front_end/ui/visual_logging/Debugging.test.ts +0 -21
- package/front_end/ui/visual_logging/DomState.test.ts +0 -241
- package/front_end/ui/visual_logging/LoggingConfig.test.ts +0 -118
- package/front_end/ui/visual_logging/LoggingDriver.test.ts +0 -1069
- package/front_end/ui/visual_logging/LoggingEvents.test.ts +0 -271
- package/front_end/ui/visual_logging/LoggingState.test.ts +0 -122
- package/front_end/ui/visual_logging/NonDomState.test.ts +0 -44
- package/inspector_overlay/common.test.ts +0 -38
- package/inspector_overlay/css_grid_label_helpers.test.ts +0 -962
- package/inspector_overlay/highlight_common.test.ts +0 -42
- package/inspector_overlay/highlight_flex_common.test.ts +0 -511
- package/inspector_overlay/tool_highlight.test.ts +0 -105
- package/inspector_overlay/tool_source_order.test.ts +0 -130
- package/inspector_overlay/tool_window_controls.test.ts +0 -81
- package/scripts/DIR_METADATA +0 -3
- package/scripts/README.md +0 -26
- package/scripts/__init__.py +0 -0
- package/scripts/add_icon_paths.py +0 -71
- package/scripts/ai_assistance/README.md +0 -60
- package/scripts/ai_assistance/auto-run/auto-run.ts +0 -429
- package/scripts/ai_assistance/auto-run/shared/comment-parsers.test.ts +0 -168
- package/scripts/ai_assistance/auto-run/shared/comment-parsers.ts +0 -97
- package/scripts/ai_assistance/auto-run/shared/puppeteer-helpers.ts +0 -307
- package/scripts/ai_assistance/auto-run/targets/elements-executor.ts +0 -62
- package/scripts/ai_assistance/auto-run/targets/elements-multimodal-executor.ts +0 -62
- package/scripts/ai_assistance/auto-run/targets/factory.ts +0 -33
- package/scripts/ai_assistance/auto-run/targets/interface.ts +0 -29
- package/scripts/ai_assistance/auto-run/targets/patching-executor.ts +0 -69
- package/scripts/ai_assistance/auto-run/targets/performance-insights-executor.ts +0 -99
- package/scripts/ai_assistance/auto-run/targets/performance-main-thread-executor.ts +0 -99
- package/scripts/ai_assistance/auto-run/trace-downloader.ts +0 -91
- package/scripts/ai_assistance/eval/index.html +0 -32
- package/scripts/ai_assistance/eval/index.js +0 -568
- package/scripts/ai_assistance/package.json +0 -8
- package/scripts/ai_assistance/suite/README.md +0 -57
- package/scripts/ai_assistance/suite/helpers/evaluators.ts +0 -183
- package/scripts/ai_assistance/suite/helpers/gemini.ts +0 -122
- package/scripts/ai_assistance/suite/helpers/outputs.ts +0 -112
- package/scripts/ai_assistance/suite/instructions/lcp-breakdown.md +0 -12
- package/scripts/ai_assistance/suite/instructions/load.ts +0 -13
- package/scripts/ai_assistance/suite/instructions/scoring.md +0 -27
- package/scripts/ai_assistance/suite/performance.eval.ts +0 -18
- package/scripts/ai_assistance/suite/to_eval_output.ts +0 -166
- package/scripts/ai_assistance/suite/types.d.ts +0 -40
- package/scripts/ai_assistance/suite/upload_to_gcp.ts +0 -104
- package/scripts/ai_assistance/to_tsv.mjs +0 -39
- package/scripts/ai_assistance/tsconfig.json +0 -14
- package/scripts/ai_assistance/types.d.ts +0 -81
- package/scripts/build/README.md +0 -2
- package/scripts/build/__init__.py +0 -3
- package/scripts/build/assert_grd.py +0 -57
- package/scripts/build/assert_third_party_readmes.py +0 -70
- package/scripts/build/build_inspector_overlay.py +0 -106
- package/scripts/build/code_generator_frontend.py +0 -413
- package/scripts/build/compress_files.js +0 -89
- package/scripts/build/cross_reference_ninja_and_tsc.js +0 -180
- package/scripts/build/devtools_plugin.js +0 -164
- package/scripts/build/efficiently_recompile.py +0 -29
- package/scripts/build/esbuild.js +0 -56
- package/scripts/build/generate_aria.py +0 -36
- package/scripts/build/generate_css_js_files.js +0 -83
- package/scripts/build/generate_deprecations.py +0 -99
- package/scripts/build/generate_devtools_grd.py +0 -123
- package/scripts/build/generate_devtools_json.js +0 -27
- package/scripts/build/generate_html_entrypoint.js +0 -49
- package/scripts/build/generate_supported_css.py +0 -135
- package/scripts/build/ninja/README.md +0 -190
- package/scripts/build/ninja/bundle.gni +0 -85
- package/scripts/build/ninja/copy-file.js +0 -38
- package/scripts/build/ninja/copy-files.js +0 -39
- package/scripts/build/ninja/copy.gni +0 -59
- package/scripts/build/ninja/devtools_entrypoint.gni +0 -221
- package/scripts/build/ninja/devtools_module.gni +0 -33
- package/scripts/build/ninja/devtools_pre_built.gni +0 -55
- package/scripts/build/ninja/generate-declaration.js +0 -18
- package/scripts/build/ninja/generate-tsconfig.js +0 -46
- package/scripts/build/ninja/generate_css.gni +0 -45
- package/scripts/build/ninja/minify-json-files.js +0 -20
- package/scripts/build/ninja/minify_json.gni +0 -32
- package/scripts/build/ninja/node.gni +0 -36
- package/scripts/build/ninja/vars.gni +0 -19
- package/scripts/build/ninja/wasm.gni +0 -25
- package/scripts/build/ninja/write-if-changed.js +0 -27
- package/scripts/build/rollup.config.mjs +0 -31
- package/scripts/build/tests/generate_css_js_files_test.js +0 -40
- package/scripts/build/tests/plugins_test.js +0 -149
- package/scripts/build/typescript/README.md +0 -94
- package/scripts/build/typescript/tests/README.md +0 -10
- package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/BUILDCONFIG.gn +0 -10
- package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/build_output.txt.expected +0 -14
- package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/front_end/module/exporting.ts +0 -1
- package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/front_end/module/index.ts +0 -3
- package/scripts/build/typescript/tests/fixtures/recompile/BUILDCONFIG.gn +0 -10
- package/scripts/build/typescript/tests/fixtures/recompile/build_output.txt.expected +0 -8
- package/scripts/build/typescript/tests/fixtures/recompile/build_output.txt.expected.regen +0 -4
- package/scripts/build/typescript/tests/fixtures/recompile/front_end/module/exporting.ts +0 -1
- package/scripts/build/typescript/tests/fixtures/recompile/front_end/module/module.ts +0 -5
- package/scripts/build/typescript/tests/fixtures/recompile_dep/BUILDCONFIG.gn +0 -10
- package/scripts/build/typescript/tests/fixtures/recompile_dep/build_output.txt.expected +0 -8
- package/scripts/build/typescript/tests/fixtures/recompile_dep/build_output.txt.expected.regen +0 -6
- package/scripts/build/typescript/tests/fixtures/recompile_dep/expected.tsbuildinfo +0 -2084
- package/scripts/build/typescript/tests/fixtures/recompile_dep/front_end/module/exporting.ts +0 -1
- package/scripts/build/typescript/tests/fixtures/recompile_dep/front_end/module/module.ts +0 -7
- package/scripts/build/typescript/tests/fixtures/simple_dep/BUILDCONFIG.gn +0 -10
- package/scripts/build/typescript/tests/fixtures/simple_dep/build_output.txt.expected +0 -6
- package/scripts/build/typescript/tests/fixtures/simple_dep/build_output.txt.expected.regen +0 -2
- package/scripts/build/typescript/tests/fixtures/simple_dep/front_end/module/exporting.ts +0 -1
- package/scripts/build/typescript/tests/fixtures/simple_dep/front_end/module/index.ts +0 -3
- package/scripts/build/typescript/tests/fixtures/test_dep/BUILDCONFIG.gn +0 -10
- package/scripts/build/typescript/tests/fixtures/test_dep/build_output.txt.expected +0 -8
- package/scripts/build/typescript/tests/fixtures/test_dep/front_end/module/exporting.ts +0 -1
- package/scripts/build/typescript/tests/fixtures/test_dep/front_end/module/module.ts +0 -5
- package/scripts/build/typescript/tests/verify_ts_libary.sh +0 -88
- package/scripts/build/typescript/ts_library.py +0 -336
- package/scripts/build/typescript/typescript.gni +0 -290
- package/scripts/build/wasm-as.py +0 -87
- package/scripts/build/wasm_sourcemap.mjs +0 -22
- package/scripts/check_esbuild_versions.js +0 -51
- package/scripts/check_experiments.js +0 -292
- package/scripts/check_external_links.js +0 -150
- package/scripts/component_server/README.md +0 -43
- package/scripts/component_server/server.js +0 -597
- package/scripts/devtools_build.mjs +0 -396
- package/scripts/devtools_build.test.mjs +0 -243
- package/scripts/devtools_paths.js +0 -193
- package/scripts/devtools_paths.py +0 -127
- package/scripts/eslint_rules/README.md +0 -29
- package/scripts/eslint_rules/lib/canvas-context-tracking.ts +0 -154
- package/scripts/eslint_rules/lib/check-css-import.ts +0 -52
- package/scripts/eslint_rules/lib/check-enumerated-histograms.ts +0 -42
- package/scripts/eslint_rules/lib/check-license-header.ts +0 -222
- package/scripts/eslint_rules/lib/check-test-definitions.ts +0 -91
- package/scripts/eslint_rules/lib/check-was-shown-methods.ts +0 -57
- package/scripts/eslint_rules/lib/enforce-custom-element-definitions-location.ts +0 -95
- package/scripts/eslint_rules/lib/enforce-custom-event-names.ts +0 -174
- package/scripts/eslint_rules/lib/enforce-default-import-name.ts +0 -86
- package/scripts/eslint_rules/lib/enforce-optional-properties-last.ts +0 -87
- package/scripts/eslint_rules/lib/enforce-ui-strings-as-const.ts +0 -69
- package/scripts/eslint_rules/lib/es-modules-import.ts +0 -405
- package/scripts/eslint_rules/lib/html-tagged-template.ts +0 -85
- package/scripts/eslint_rules/lib/inject-checkbox-styles.ts +0 -187
- package/scripts/eslint_rules/lib/inline-type-imports.ts +0 -217
- package/scripts/eslint_rules/lib/jslog-context-list.ts +0 -192
- package/scripts/eslint_rules/lib/l10n-filename-matches.ts +0 -136
- package/scripts/eslint_rules/lib/l10n-i18nString-call-only-with-uistrings.ts +0 -62
- package/scripts/eslint_rules/lib/l10n-no-i18nString-calls-module-instantiation.ts +0 -61
- package/scripts/eslint_rules/lib/l10n-no-locked-or-placeholder-only-phrase.ts +0 -72
- package/scripts/eslint_rules/lib/l10n-no-uistrings-export.ts +0 -89
- package/scripts/eslint_rules/lib/l10n-no-unused-message.ts +0 -159
- package/scripts/eslint_rules/lib/lit-no-attribute-quotes.ts +0 -111
- package/scripts/eslint_rules/lib/lit-template-result-or-nothing.ts +0 -158
- package/scripts/eslint_rules/lib/no-a-tags-in-lit.ts +0 -43
- package/scripts/eslint_rules/lib/no-adopted-style-sheets.ts +0 -37
- package/scripts/eslint_rules/lib/no-assert-deep-strict-equal.ts +0 -61
- package/scripts/eslint_rules/lib/no-assert-equal-boolean-null-undefined.ts +0 -178
- package/scripts/eslint_rules/lib/no-assert-equal.ts +0 -88
- package/scripts/eslint_rules/lib/no-assert-strict-equal-for-arrays-and-objects.ts +0 -86
- package/scripts/eslint_rules/lib/no-bound-component-methods.ts +0 -161
- package/scripts/eslint_rules/lib/no-commented-out-console.ts +0 -49
- package/scripts/eslint_rules/lib/no-commented-out-import.ts +0 -46
- package/scripts/eslint_rules/lib/no-customized-builtin-elements.ts +0 -140
- package/scripts/eslint_rules/lib/no-deprecated-component-usages.ts +0 -46
- package/scripts/eslint_rules/lib/no-document-body-mutation.ts +0 -102
- package/scripts/eslint_rules/lib/no-imperative-dom-api/adorner.ts +0 -48
- package/scripts/eslint_rules/lib/no-imperative-dom-api/aria-utils.ts +0 -109
- package/scripts/eslint_rules/lib/no-imperative-dom-api/ast.ts +0 -86
- package/scripts/eslint_rules/lib/no-imperative-dom-api/button.ts +0 -81
- package/scripts/eslint_rules/lib/no-imperative-dom-api/class-member.ts +0 -54
- package/scripts/eslint_rules/lib/no-imperative-dom-api/data-grid.ts +0 -151
- package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-api-devtools-extensions.ts +0 -32
- package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-api.ts +0 -141
- package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-fragment.ts +0 -307
- package/scripts/eslint_rules/lib/no-imperative-dom-api/split-widget.ts +0 -125
- package/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts +0 -193
- package/scripts/eslint_rules/lib/no-imperative-dom-api/ui-fragment.ts +0 -55
- package/scripts/eslint_rules/lib/no-imperative-dom-api/ui-utils.ts +0 -213
- package/scripts/eslint_rules/lib/no-imperative-dom-api/widget.ts +0 -96
- package/scripts/eslint_rules/lib/no-imperative-dom-api.ts +0 -270
- package/scripts/eslint_rules/lib/no-importing-images-from-src.ts +0 -83
- package/scripts/eslint_rules/lib/no-imports-in-directory.ts +0 -84
- package/scripts/eslint_rules/lib/no-lit-render-outside-of-view.ts +0 -105
- package/scripts/eslint_rules/lib/no-new-lit-element-components.ts +0 -48
- package/scripts/eslint_rules/lib/no-self-closing-custom-element-tagnames.ts +0 -42
- package/scripts/eslint_rules/lib/no-underscored-properties.ts +0 -78
- package/scripts/eslint_rules/lib/prefer-assert-instance-of.ts +0 -80
- package/scripts/eslint_rules/lib/prefer-assert-is-ok.ts +0 -103
- package/scripts/eslint_rules/lib/prefer-assert-length-of.ts +0 -76
- package/scripts/eslint_rules/lib/prefer-assert-strict-equal.ts +0 -92
- package/scripts/eslint_rules/lib/prefer-private-class-members.ts +0 -45
- package/scripts/eslint_rules/lib/prefer-sinon-assert.ts +0 -151
- package/scripts/eslint_rules/lib/prefer-url-string.ts +0 -109
- package/scripts/eslint_rules/lib/set-data-type-reference.ts +0 -69
- package/scripts/eslint_rules/lib/static-custom-event-names.ts +0 -215
- package/scripts/eslint_rules/lib/trace-engine-test-timeouts.ts +0 -125
- package/scripts/eslint_rules/lib/utils/l10n-helper.ts +0 -48
- package/scripts/eslint_rules/lib/utils/lit.ts +0 -73
- package/scripts/eslint_rules/lib/utils/ruleCreator.ts +0 -16
- package/scripts/eslint_rules/lib/utils/treeHelpers.ts +0 -13
- package/scripts/eslint_rules/lib/validate-timing-types.ts +0 -330
- package/scripts/eslint_rules/rules-dir.mjs +0 -78
- package/scripts/eslint_rules/tests/canvas-context-tracking.test.ts +0 -124
- package/scripts/eslint_rules/tests/check-css-import.test.ts +0 -43
- package/scripts/eslint_rules/tests/check-enumerated-histograms.test.ts +0 -31
- package/scripts/eslint_rules/tests/check-license-header.test.ts +0 -293
- package/scripts/eslint_rules/tests/check-test-definitions.test.ts +0 -155
- package/scripts/eslint_rules/tests/check-was-shown-methods.test.ts +0 -103
- package/scripts/eslint_rules/tests/check_css_import_test_file.css +0 -5
- package/scripts/eslint_rules/tests/enforce-custom-element-definitions-location.test.ts +0 -56
- package/scripts/eslint_rules/tests/enforce-custom-event-names.test.ts +0 -124
- package/scripts/eslint_rules/tests/enforce-default-import-name.test.ts +0 -53
- package/scripts/eslint_rules/tests/enforce-optional-properties-last.test.ts +0 -137
- package/scripts/eslint_rules/tests/enforce-ui-strings-as-const.test.ts +0 -35
- package/scripts/eslint_rules/tests/es-modules-import.test.ts +0 -332
- package/scripts/eslint_rules/tests/html-tagged-template.test.ts +0 -103
- package/scripts/eslint_rules/tests/inject-checkbox-styles.test.ts +0 -219
- package/scripts/eslint_rules/tests/inline-type-imports.test.ts +0 -82
- package/scripts/eslint_rules/tests/jslog-context-list.test.ts +0 -218
- package/scripts/eslint_rules/tests/l10n-filename-matches.test.ts +0 -90
- package/scripts/eslint_rules/tests/l10n-i18nString-call-only-with-uistrings.test.ts +0 -44
- package/scripts/eslint_rules/tests/l10n-no-i18nString-calls-module-instantiation.test.ts +0 -77
- package/scripts/eslint_rules/tests/l10n-no-locked-or-placeholder-only-phrase.test.ts +0 -45
- package/scripts/eslint_rules/tests/l10n-no-uistrings-export.test.ts +0 -50
- package/scripts/eslint_rules/tests/l10n-no-unused-message.test.ts +0 -119
- package/scripts/eslint_rules/tests/lit-no-attribute-quotes.test.ts +0 -43
- package/scripts/eslint_rules/tests/lit-template-result-or-nothing.test.ts +0 -142
- package/scripts/eslint_rules/tests/no-a-tags-in-lit.test.ts +0 -67
- package/scripts/eslint_rules/tests/no-adopted-style-sheets.test.ts +0 -52
- package/scripts/eslint_rules/tests/no-assert-deep-strict-equal.test.ts +0 -51
- package/scripts/eslint_rules/tests/no-assert-equal-boolean-null-undefined.test.ts +0 -207
- package/scripts/eslint_rules/tests/no-assert-equal.test.ts +0 -101
- package/scripts/eslint_rules/tests/no-assert-strict-equal-for-arrays-and-objects.test.ts +0 -87
- package/scripts/eslint_rules/tests/no-bound-component-methods.test.ts +0 -105
- package/scripts/eslint_rules/tests/no-commented-out-console.test.ts +0 -35
- package/scripts/eslint_rules/tests/no-commented-out-import.test.ts +0 -45
- package/scripts/eslint_rules/tests/no-customized-builtin-elements.test.ts +0 -150
- package/scripts/eslint_rules/tests/no-deprecated-component-usages.test.ts +0 -46
- package/scripts/eslint_rules/tests/no-document-body-mutation.test.ts +0 -45
- package/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts +0 -1237
- package/scripts/eslint_rules/tests/no-importing-images-from-src.test.ts +0 -40
- package/scripts/eslint_rules/tests/no-imports-in-directory.test.ts +0 -104
- package/scripts/eslint_rules/tests/no-lit-render-outside-of-view.test.ts +0 -130
- package/scripts/eslint_rules/tests/no-new-lit-element-components.test.ts +0 -31
- package/scripts/eslint_rules/tests/no-self-closing-custom-element-tagnames.test.ts +0 -59
- package/scripts/eslint_rules/tests/no-underscored-properties.test.ts +0 -99
- package/scripts/eslint_rules/tests/prefer-assert-instance-of.test.ts +0 -195
- package/scripts/eslint_rules/tests/prefer-assert-is-ok.test.ts +0 -182
- package/scripts/eslint_rules/tests/prefer-assert-length-of.test.ts +0 -143
- package/scripts/eslint_rules/tests/prefer-assert-strict-equal.test.ts +0 -367
- package/scripts/eslint_rules/tests/prefer-private-class-members.test.ts +0 -59
- package/scripts/eslint_rules/tests/prefer-sinon-assert.test.ts +0 -333
- package/scripts/eslint_rules/tests/prefer-url-string.test.ts +0 -87
- package/scripts/eslint_rules/tests/set-data-type-reference.test.ts +0 -60
- package/scripts/eslint_rules/tests/static-custom-event-names.test.ts +0 -179
- package/scripts/eslint_rules/tests/trace-engine-test-timeouts.test.ts +0 -59
- package/scripts/eslint_rules/tests/utils/RuleTester.ts +0 -28
- package/scripts/eslint_rules/tests/utils.test.ts +0 -79
- package/scripts/eslint_rules/tests/validate-timing-types.test.ts +0 -289
- package/scripts/eslint_rules/tsconfig.json +0 -14
- package/scripts/extract_bugs.ts +0 -126
- package/scripts/generate_metric_compare_strings.js +0 -130
- package/scripts/hosted_mode/cert.pem +0 -21
- package/scripts/hosted_mode/key.pem +0 -28
- package/scripts/hosted_mode/server.js +0 -258
- package/scripts/javascript_natives/helpers.js +0 -232
- package/scripts/javascript_natives/index.js +0 -105
- package/scripts/javascript_natives/package.json +0 -9
- package/scripts/javascript_natives/test.d.ts +0 -13
- package/scripts/javascript_natives/tests.js +0 -195
- package/scripts/migration/class-fields/migrate.js +0 -77
- package/scripts/migration/class-fields/migrate.sh +0 -8
- package/scripts/migration/class-fields/package.json +0 -5
- package/scripts/migration/e2e_non_hosted_gemini.mjs +0 -102
- package/scripts/migration/web-tests-esm/rename-legacy-global.mjs +0 -129
- package/scripts/npm_test.js +0 -141
- package/scripts/protocol_typescript/protocol_dts_generator.ts +0 -470
- package/scripts/protocol_typescript/protocol_schema.d.ts +0 -97
- package/scripts/reformat-clang-js-ts.js +0 -71
- package/scripts/run_build.mjs +0 -128
- package/scripts/run_on_target.mjs +0 -88
- package/scripts/run_start.mjs +0 -236
- package/scripts/scaffold/README.md +0 -4
- package/scripts/scaffold/scaffold-widget.js +0 -167
- package/scripts/scaffold/templates/WidgetTemplate.css.txt +0 -9
- package/scripts/scaffold/templates/WidgetTemplate.ts.txt +0 -60
- package/scripts/search-trace-files.js +0 -66
- package/scripts/stylelint_rules/lib/use_theme_colors.mjs +0 -322
- package/scripts/stylelint_rules/tests/use_theme_colors.test.js +0 -515
- package/scripts/tools/update_goldens.py +0 -432
- package/scripts/tsconfig.json +0 -11
- package/scripts/utils.js +0 -160
- package/scripts/whitespaces.txt +0 -12
@@ -1,1878 +0,0 @@
|
|
1
|
-
// Copyright 2022 The Chromium Authors. All rights reserved.
|
2
|
-
// Use of this source code is governed by a BSD-style license that can be
|
3
|
-
// found in the LICENSE file.
|
4
|
-
|
5
|
-
import * as Common from '../../core/common/common.js';
|
6
|
-
import * as Platform from '../../core/platform/platform.js';
|
7
|
-
import * as SDK from '../../core/sdk/sdk.js';
|
8
|
-
import type * as Protocol from '../../generated/protocol.js';
|
9
|
-
import * as Bindings from '../../models/bindings/bindings.js';
|
10
|
-
import * as Breakpoints from '../../models/breakpoints/breakpoints.js';
|
11
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
12
|
-
import * as Workspace from '../../models/workspace/workspace.js';
|
13
|
-
import {
|
14
|
-
assertElements,
|
15
|
-
dispatchClickEvent,
|
16
|
-
dispatchKeyDownEvent,
|
17
|
-
renderElementIntoDOM,
|
18
|
-
} from '../../testing/DOMHelpers.js';
|
19
|
-
import {
|
20
|
-
createTarget,
|
21
|
-
describeWithEnvironment,
|
22
|
-
} from '../../testing/EnvironmentHelpers.js';
|
23
|
-
import {describeWithMockConnection} from '../../testing/MockConnection.js';
|
24
|
-
import {MockProtocolBackend} from '../../testing/MockScopeChain.js';
|
25
|
-
import {
|
26
|
-
createContentProviderUISourceCode,
|
27
|
-
setupMockedUISourceCode,
|
28
|
-
} from '../../testing/UISourceCodeHelpers.js';
|
29
|
-
import * as RenderCoordinator from '../../ui/components/render_coordinator/render_coordinator.js';
|
30
|
-
import * as UI from '../../ui/legacy/legacy.js';
|
31
|
-
|
32
|
-
import * as Sources from './sources.js';
|
33
|
-
|
34
|
-
const {urlString} = Platform.DevToolsPath;
|
35
|
-
const DETAILS_SELECTOR = 'details';
|
36
|
-
const EXPANDED_GROUPS_SELECTOR = 'details[open]';
|
37
|
-
const COLLAPSED_GROUPS_SELECTOR = 'details:not([open])';
|
38
|
-
const CODE_SNIPPET_SELECTOR = '.code-snippet';
|
39
|
-
const GROUP_NAME_SELECTOR = '.group-header-title';
|
40
|
-
const BREAKPOINT_ITEM_SELECTOR = '.breakpoint-item';
|
41
|
-
const HIT_BREAKPOINT_SELECTOR = BREAKPOINT_ITEM_SELECTOR + '.hit';
|
42
|
-
const BREAKPOINT_LOCATION_SELECTOR = '.location';
|
43
|
-
const REMOVE_FILE_BREAKPOINTS_SELECTOR = '.group-hover-actions > button[data-remove-breakpoint]';
|
44
|
-
const REMOVE_SINGLE_BREAKPOINT_SELECTOR = '.breakpoint-item-location-or-actions > button[data-remove-breakpoint]';
|
45
|
-
const EDIT_SINGLE_BREAKPOINT_SELECTOR = 'button[data-edit-breakpoint]';
|
46
|
-
const PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR = '.pause-on-uncaught-exceptions';
|
47
|
-
const PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR = '.pause-on-caught-exceptions';
|
48
|
-
const TABBABLE_SELECTOR = '[tabindex="0"]';
|
49
|
-
const SUMMARY_SELECTOR = 'summary';
|
50
|
-
const GROUP_DIFFERENTIATOR_SELECTOR = '.group-header-differentiator';
|
51
|
-
|
52
|
-
const HELLO_JS_FILE = 'hello.js';
|
53
|
-
const TEST_JS_FILE = 'test.js';
|
54
|
-
interface LocationTestData {
|
55
|
-
url: Platform.DevToolsPath.UrlString;
|
56
|
-
lineNumber: number;
|
57
|
-
columnNumber: number;
|
58
|
-
enabled: boolean;
|
59
|
-
content: string;
|
60
|
-
condition: Breakpoints.BreakpointManager.UserCondition;
|
61
|
-
isLogpoint: boolean;
|
62
|
-
hoverText?: string;
|
63
|
-
}
|
64
|
-
|
65
|
-
function createBreakpointLocations(testData: LocationTestData[]): Breakpoints.BreakpointManager.BreakpointLocation[] {
|
66
|
-
const breakpointLocations = testData.map(data => {
|
67
|
-
const mocked = setupMockedUISourceCode(data.url);
|
68
|
-
const mockedContent =
|
69
|
-
Promise.resolve(new TextUtils.ContentData.ContentData(data.content, /* isBase64 */ false, 'text/plain'));
|
70
|
-
sinon.stub(mocked.sut, 'requestContentData').returns(mockedContent);
|
71
|
-
const uiLocation = new Workspace.UISourceCode.UILocation(mocked.sut, data.lineNumber, data.columnNumber);
|
72
|
-
const breakpoint = sinon.createStubInstance(Breakpoints.BreakpointManager.Breakpoint);
|
73
|
-
breakpoint.enabled.returns(data.enabled);
|
74
|
-
breakpoint.condition.returns(data.condition);
|
75
|
-
breakpoint.isLogpoint.returns(data.isLogpoint);
|
76
|
-
breakpoint.breakpointStorageId.returns(`${data.url}:${data.lineNumber}:${data.columnNumber}`);
|
77
|
-
return new Breakpoints.BreakpointManager.BreakpointLocation(breakpoint, uiLocation);
|
78
|
-
});
|
79
|
-
return breakpointLocations;
|
80
|
-
}
|
81
|
-
|
82
|
-
function createStubBreakpointManagerAndSettings() {
|
83
|
-
const breakpointManager = sinon.createStubInstance(Breakpoints.BreakpointManager.BreakpointManager);
|
84
|
-
breakpointManager.supportsConditionalBreakpoints.returns(true);
|
85
|
-
const dummyStorage = new Common.Settings.SettingsStorage({});
|
86
|
-
const settings = Common.Settings.Settings.instance({
|
87
|
-
forceNew: true,
|
88
|
-
syncedStorage: dummyStorage,
|
89
|
-
globalStorage: dummyStorage,
|
90
|
-
localStorage: dummyStorage,
|
91
|
-
});
|
92
|
-
return {breakpointManager, settings};
|
93
|
-
}
|
94
|
-
|
95
|
-
function createStubBreakpointManagerAndSettingsWithMockdata(testData: LocationTestData[]): {
|
96
|
-
breakpointManager: sinon.SinonStubbedInstance<Breakpoints.BreakpointManager.BreakpointManager>,
|
97
|
-
settings: Common.Settings.Settings,
|
98
|
-
} {
|
99
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettings();
|
100
|
-
sinon.stub(Breakpoints.BreakpointManager.BreakpointManager, 'instance').returns(breakpointManager);
|
101
|
-
const breakpointLocations = createBreakpointLocations(testData);
|
102
|
-
breakpointManager.allBreakpointLocations.returns(breakpointLocations);
|
103
|
-
return {breakpointManager, settings};
|
104
|
-
}
|
105
|
-
|
106
|
-
function createLocationTestData(
|
107
|
-
url: string, lineNumber: number, columnNumber: number, enabled = true, content = '',
|
108
|
-
condition: Breakpoints.BreakpointManager.UserCondition = Breakpoints.BreakpointManager.EMPTY_BREAKPOINT_CONDITION,
|
109
|
-
isLogpoint = false, hoverText?: string): LocationTestData {
|
110
|
-
return {
|
111
|
-
url: urlString`${url}`,
|
112
|
-
lineNumber,
|
113
|
-
columnNumber,
|
114
|
-
enabled,
|
115
|
-
content,
|
116
|
-
condition,
|
117
|
-
isLogpoint,
|
118
|
-
hoverText,
|
119
|
-
};
|
120
|
-
}
|
121
|
-
|
122
|
-
async function setUpTestWithOneBreakpointLocation(
|
123
|
-
params: {file: string, lineNumber: number, columnNumber: number, enabled?: boolean, snippet?: string} = {
|
124
|
-
file: HELLO_JS_FILE,
|
125
|
-
lineNumber: 10,
|
126
|
-
columnNumber: 3,
|
127
|
-
enabled: true,
|
128
|
-
snippet: 'const a;',
|
129
|
-
}) {
|
130
|
-
const testData = [
|
131
|
-
createLocationTestData(params.file, params.lineNumber, params.columnNumber, params.enabled, params.snippet),
|
132
|
-
];
|
133
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
134
|
-
|
135
|
-
const controller =
|
136
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
137
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
138
|
-
|
139
|
-
assert.lengthOf(data.groups, 1);
|
140
|
-
assert.lengthOf(data.groups[0].breakpointItems, 1);
|
141
|
-
const locations = Breakpoints.BreakpointManager.BreakpointManager.instance().allBreakpointLocations();
|
142
|
-
assert.lengthOf(locations, 1);
|
143
|
-
return {controller, groups: data.groups, location: locations[0]};
|
144
|
-
}
|
145
|
-
|
146
|
-
class MockRevealer<T> implements Common.Revealer.Revealer<T> {
|
147
|
-
async reveal(_revealable: T, _omitFocus?: boolean): Promise<void> {
|
148
|
-
}
|
149
|
-
}
|
150
|
-
|
151
|
-
async function createAndInitializeBreakpointsView(): Promise<Sources.BreakpointsView.BreakpointsView> {
|
152
|
-
// Force creation of a new BreakpointsView singleton so that it gets correctly re-wired with
|
153
|
-
// the current controller singleton (to pick up the latest breakpoint state).
|
154
|
-
const component = Sources.BreakpointsView.BreakpointsView.instance({forceNew: true});
|
155
|
-
await RenderCoordinator.done(); // Wait until the initial rendering finishes.
|
156
|
-
renderElementIntoDOM(component);
|
157
|
-
await component.updateComplete;
|
158
|
-
return component;
|
159
|
-
}
|
160
|
-
|
161
|
-
async function renderNoBreakpoints({pauseOnUncaughtExceptions, pauseOnCaughtExceptions}:
|
162
|
-
{pauseOnUncaughtExceptions: boolean, pauseOnCaughtExceptions: boolean}):
|
163
|
-
Promise<Sources.BreakpointsView.BreakpointsView> {
|
164
|
-
const component = await createAndInitializeBreakpointsView();
|
165
|
-
|
166
|
-
component.data = {
|
167
|
-
breakpointsActive: true,
|
168
|
-
pauseOnUncaughtExceptions,
|
169
|
-
pauseOnCaughtExceptions,
|
170
|
-
groups: [],
|
171
|
-
};
|
172
|
-
await RenderCoordinator.done();
|
173
|
-
await component.updateComplete;
|
174
|
-
return component;
|
175
|
-
}
|
176
|
-
|
177
|
-
async function renderSingleBreakpoint(
|
178
|
-
type: SDK.DebuggerModel.BreakpointType = SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
179
|
-
hoverText?: string): Promise<{
|
180
|
-
component: Sources.BreakpointsView.BreakpointsView,
|
181
|
-
data: Sources.BreakpointsView.BreakpointsViewData,
|
182
|
-
}> {
|
183
|
-
// Only provide a hover text if it's not a regular breakpoint.
|
184
|
-
assert.isTrue(!hoverText || type !== SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT);
|
185
|
-
const component = await createAndInitializeBreakpointsView();
|
186
|
-
|
187
|
-
const data: Sources.BreakpointsView.BreakpointsViewData = {
|
188
|
-
breakpointsActive: true,
|
189
|
-
pauseOnUncaughtExceptions: false,
|
190
|
-
pauseOnCaughtExceptions: false,
|
191
|
-
groups: [
|
192
|
-
{
|
193
|
-
name: 'test1.js',
|
194
|
-
url: urlString`https://google.com/test1.js`,
|
195
|
-
editable: true,
|
196
|
-
expanded: true,
|
197
|
-
breakpointItems: [
|
198
|
-
{
|
199
|
-
id: '1',
|
200
|
-
location: '1',
|
201
|
-
codeSnippet: 'const a = 0;',
|
202
|
-
isHit: true,
|
203
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
204
|
-
type,
|
205
|
-
hoverText,
|
206
|
-
},
|
207
|
-
],
|
208
|
-
},
|
209
|
-
],
|
210
|
-
};
|
211
|
-
|
212
|
-
component.data = data;
|
213
|
-
await RenderCoordinator.done();
|
214
|
-
await component.updateComplete;
|
215
|
-
return {component, data};
|
216
|
-
}
|
217
|
-
|
218
|
-
async function renderMultipleBreakpoints(): Promise<{
|
219
|
-
component: Sources.BreakpointsView.BreakpointsView,
|
220
|
-
data: Sources.BreakpointsView.BreakpointsViewData,
|
221
|
-
}> {
|
222
|
-
const component = await createAndInitializeBreakpointsView();
|
223
|
-
|
224
|
-
const data: Sources.BreakpointsView.BreakpointsViewData = {
|
225
|
-
breakpointsActive: true,
|
226
|
-
pauseOnUncaughtExceptions: false,
|
227
|
-
pauseOnCaughtExceptions: false,
|
228
|
-
groups: [
|
229
|
-
{
|
230
|
-
name: 'test1.js',
|
231
|
-
url: urlString`https://google.com/test1.js`,
|
232
|
-
editable: true,
|
233
|
-
expanded: true,
|
234
|
-
breakpointItems: [
|
235
|
-
{
|
236
|
-
id: '1',
|
237
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
238
|
-
location: '234',
|
239
|
-
codeSnippet: 'const a = x;',
|
240
|
-
isHit: false,
|
241
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
242
|
-
},
|
243
|
-
{
|
244
|
-
id: '2',
|
245
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
246
|
-
location: '3:3',
|
247
|
-
codeSnippet: 'if (x > a) {',
|
248
|
-
isHit: true,
|
249
|
-
status: Sources.BreakpointsView.BreakpointStatus.DISABLED,
|
250
|
-
},
|
251
|
-
],
|
252
|
-
},
|
253
|
-
{
|
254
|
-
name: 'test2.js',
|
255
|
-
url: urlString`https://google.com/test2.js`,
|
256
|
-
editable: false,
|
257
|
-
expanded: true,
|
258
|
-
breakpointItems: [
|
259
|
-
{
|
260
|
-
id: '3',
|
261
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
262
|
-
location: '11',
|
263
|
-
codeSnippet: 'const y;',
|
264
|
-
isHit: false,
|
265
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
266
|
-
},
|
267
|
-
],
|
268
|
-
},
|
269
|
-
{
|
270
|
-
name: 'main.js',
|
271
|
-
url: urlString`https://test.com/main.js`,
|
272
|
-
editable: true,
|
273
|
-
expanded: false,
|
274
|
-
breakpointItems: [
|
275
|
-
{
|
276
|
-
id: '4',
|
277
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
278
|
-
location: '3',
|
279
|
-
codeSnippet: 'if (a == 0) {',
|
280
|
-
isHit: false,
|
281
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
282
|
-
},
|
283
|
-
],
|
284
|
-
},
|
285
|
-
],
|
286
|
-
};
|
287
|
-
component.data = data;
|
288
|
-
await RenderCoordinator.done();
|
289
|
-
await component.updateComplete;
|
290
|
-
return {component, data};
|
291
|
-
}
|
292
|
-
|
293
|
-
function extractBreakpointItems(data: Sources.BreakpointsView.BreakpointsViewData):
|
294
|
-
Sources.BreakpointsView.BreakpointItem[] {
|
295
|
-
const breakpointItems = data.groups.flatMap(group => group.breakpointItems);
|
296
|
-
assert.isAbove(breakpointItems.length, 0);
|
297
|
-
return breakpointItems;
|
298
|
-
}
|
299
|
-
|
300
|
-
function checkCodeSnippet(
|
301
|
-
renderedBreakpointItem: HTMLDivElement, breakpointItem: Sources.BreakpointsView.BreakpointItem): void {
|
302
|
-
const snippetElement = renderedBreakpointItem.querySelector(CODE_SNIPPET_SELECTOR);
|
303
|
-
assert.instanceOf(snippetElement, HTMLSpanElement);
|
304
|
-
assert.strictEqual(snippetElement.textContent, breakpointItem.codeSnippet);
|
305
|
-
}
|
306
|
-
|
307
|
-
function checkCheckboxState(checkbox: HTMLInputElement, breakpointItem: Sources.BreakpointsView.BreakpointItem): void {
|
308
|
-
const checked = checkbox.checked;
|
309
|
-
const indeterminate = checkbox.indeterminate;
|
310
|
-
if (breakpointItem.status === Sources.BreakpointsView.BreakpointStatus.INDETERMINATE) {
|
311
|
-
assert.isTrue(indeterminate);
|
312
|
-
} else {
|
313
|
-
assert.isFalse(indeterminate);
|
314
|
-
assert.strictEqual((breakpointItem.status === Sources.BreakpointsView.BreakpointStatus.ENABLED), checked);
|
315
|
-
}
|
316
|
-
}
|
317
|
-
|
318
|
-
function checkGroupNames(
|
319
|
-
renderedGroupElements: Element[], breakpointGroups: Sources.BreakpointsView.BreakpointGroup[]): void {
|
320
|
-
assert.lengthOf(renderedGroupElements, breakpointGroups.length);
|
321
|
-
for (let i = 0; i < renderedGroupElements.length; ++i) {
|
322
|
-
const renderedGroup = renderedGroupElements[i];
|
323
|
-
assert.instanceOf(renderedGroup, HTMLDetailsElement);
|
324
|
-
const titleElement = renderedGroup.querySelector(GROUP_NAME_SELECTOR);
|
325
|
-
assert.instanceOf(titleElement, HTMLSpanElement);
|
326
|
-
assert.strictEqual(titleElement.textContent, breakpointGroups[i].name);
|
327
|
-
}
|
328
|
-
}
|
329
|
-
|
330
|
-
function hover(component: Sources.BreakpointsView.BreakpointsView, selector: string): Promise<void> {
|
331
|
-
assert.isNotNull(component.contentElement);
|
332
|
-
// Dispatch a mouse over.
|
333
|
-
component.contentElement.querySelector(selector)?.dispatchEvent(new Event('mouseover'));
|
334
|
-
// Wait until the re-rendering has happened.
|
335
|
-
return RenderCoordinator.done();
|
336
|
-
}
|
337
|
-
|
338
|
-
describeWithEnvironment('BreakpointsSidebarController', () => {
|
339
|
-
after(() => {
|
340
|
-
Sources.BreakpointsView.BreakpointsSidebarController.removeInstance();
|
341
|
-
});
|
342
|
-
|
343
|
-
it('can remove a breakpoint', async () => {
|
344
|
-
const {groups, location} = await setUpTestWithOneBreakpointLocation();
|
345
|
-
const breakpoint = location.breakpoint as sinon.SinonStubbedInstance<Breakpoints.BreakpointManager.Breakpoint>;
|
346
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
347
|
-
|
348
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance().breakpointsRemoved([breakpointItem]);
|
349
|
-
assert.isTrue(breakpoint.remove.calledOnceWith(false));
|
350
|
-
});
|
351
|
-
|
352
|
-
it('changes breakpoint state', async () => {
|
353
|
-
const {groups, location} = await setUpTestWithOneBreakpointLocation();
|
354
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
355
|
-
assert.strictEqual(breakpointItem.status, Sources.BreakpointsView.BreakpointStatus.ENABLED);
|
356
|
-
|
357
|
-
const breakpoint = location.breakpoint as sinon.SinonStubbedInstance<Breakpoints.BreakpointManager.Breakpoint>;
|
358
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance().breakpointStateChanged(breakpointItem, false);
|
359
|
-
sinon.assert.calledWith(breakpoint.setEnabled, false);
|
360
|
-
});
|
361
|
-
|
362
|
-
it('correctly reveals source location', async () => {
|
363
|
-
const {groups, location: {uiLocation}} = await setUpTestWithOneBreakpointLocation();
|
364
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
365
|
-
const revealer = sinon.createStubInstance(MockRevealer<Workspace.UISourceCode.UILocation>);
|
366
|
-
|
367
|
-
Common.Revealer.registerRevealer({
|
368
|
-
contextTypes() {
|
369
|
-
return [Workspace.UISourceCode.UILocation];
|
370
|
-
},
|
371
|
-
destination: Common.Revealer.RevealerDestination.SOURCES_PANEL,
|
372
|
-
async loadRevealer() {
|
373
|
-
return revealer;
|
374
|
-
},
|
375
|
-
});
|
376
|
-
|
377
|
-
await Sources.BreakpointsView.BreakpointsSidebarController.instance().jumpToSource(breakpointItem);
|
378
|
-
assert.isTrue(revealer.reveal.calledOnceWith(uiLocation));
|
379
|
-
});
|
380
|
-
|
381
|
-
it('correctly reveals breakpoint editor', async () => {
|
382
|
-
const {groups, location} = await setUpTestWithOneBreakpointLocation();
|
383
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
384
|
-
const revealer = sinon.createStubInstance(MockRevealer<Breakpoints.BreakpointManager.BreakpointLocation>);
|
385
|
-
|
386
|
-
Common.Revealer.registerRevealer({
|
387
|
-
contextTypes() {
|
388
|
-
return [Breakpoints.BreakpointManager.BreakpointLocation];
|
389
|
-
},
|
390
|
-
destination: Common.Revealer.RevealerDestination.SOURCES_PANEL,
|
391
|
-
async loadRevealer() {
|
392
|
-
return revealer;
|
393
|
-
},
|
394
|
-
});
|
395
|
-
|
396
|
-
await Sources.BreakpointsView.BreakpointsSidebarController.instance().breakpointEdited(
|
397
|
-
breakpointItem, false /* editButtonClicked */);
|
398
|
-
assert.isTrue(revealer.reveal.calledOnceWith(location));
|
399
|
-
});
|
400
|
-
|
401
|
-
describe('getUpdatedBreakpointViewData', () => {
|
402
|
-
it('extracts breakpoint data', async () => {
|
403
|
-
const testData = [
|
404
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
405
|
-
createLocationTestData(TEST_JS_FILE, 1, 1),
|
406
|
-
];
|
407
|
-
|
408
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
409
|
-
const controller =
|
410
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
411
|
-
const actual = await controller.getUpdatedBreakpointViewData();
|
412
|
-
const createExpectedBreakpointGroups = (testData: LocationTestData) => {
|
413
|
-
const status = testData.enabled ? Sources.BreakpointsView.BreakpointStatus.ENABLED :
|
414
|
-
Sources.BreakpointsView.BreakpointStatus.DISABLED;
|
415
|
-
let type = SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT;
|
416
|
-
|
417
|
-
if (testData.condition) {
|
418
|
-
if (testData.isLogpoint) {
|
419
|
-
type = SDK.DebuggerModel.BreakpointType.LOGPOINT;
|
420
|
-
} else {
|
421
|
-
type = SDK.DebuggerModel.BreakpointType.CONDITIONAL_BREAKPOINT;
|
422
|
-
}
|
423
|
-
}
|
424
|
-
|
425
|
-
return {
|
426
|
-
name: testData.url as string,
|
427
|
-
url: testData.url,
|
428
|
-
editable: true,
|
429
|
-
expanded: true,
|
430
|
-
breakpointItems: [
|
431
|
-
{
|
432
|
-
id: `${testData.url}:${testData.lineNumber}:${testData.columnNumber}`,
|
433
|
-
location: `${testData.lineNumber + 1}`,
|
434
|
-
codeSnippet: '',
|
435
|
-
isHit: false,
|
436
|
-
status,
|
437
|
-
type,
|
438
|
-
hoverText: testData.hoverText,
|
439
|
-
},
|
440
|
-
],
|
441
|
-
};
|
442
|
-
};
|
443
|
-
const expected: Sources.BreakpointsView.BreakpointsViewData = {
|
444
|
-
breakpointsActive: true,
|
445
|
-
pauseOnUncaughtExceptions: false,
|
446
|
-
pauseOnCaughtExceptions: false,
|
447
|
-
groups: testData.map(createExpectedBreakpointGroups),
|
448
|
-
};
|
449
|
-
assert.deepEqual(actual, expected);
|
450
|
-
});
|
451
|
-
|
452
|
-
it('respects the breakpointsActive setting', async () => {
|
453
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata([]);
|
454
|
-
const controller =
|
455
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
456
|
-
settings.moduleSetting('breakpoints-active').set(true);
|
457
|
-
let data = await controller.getUpdatedBreakpointViewData();
|
458
|
-
assert.isTrue(data.breakpointsActive);
|
459
|
-
settings.moduleSetting('breakpoints-active').set(false);
|
460
|
-
data = await controller.getUpdatedBreakpointViewData();
|
461
|
-
assert.isFalse(data.breakpointsActive);
|
462
|
-
});
|
463
|
-
|
464
|
-
it('marks groups as editable based on conditional breakpoint support', async () => {
|
465
|
-
const testData = [
|
466
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
467
|
-
createLocationTestData(TEST_JS_FILE, 1, 1),
|
468
|
-
];
|
469
|
-
|
470
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
471
|
-
const controller =
|
472
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
473
|
-
breakpointManager.supportsConditionalBreakpoints.returns(false);
|
474
|
-
for (const group of (await controller.getUpdatedBreakpointViewData()).groups) {
|
475
|
-
assert.isFalse(group.editable);
|
476
|
-
}
|
477
|
-
breakpointManager.supportsConditionalBreakpoints.returns(true);
|
478
|
-
for (const group of (await controller.getUpdatedBreakpointViewData()).groups) {
|
479
|
-
assert.isTrue(group.editable);
|
480
|
-
}
|
481
|
-
});
|
482
|
-
|
483
|
-
it('groups breakpoints that are in the same file', async () => {
|
484
|
-
const testData = [
|
485
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
486
|
-
createLocationTestData(TEST_JS_FILE, 1, 1),
|
487
|
-
];
|
488
|
-
|
489
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
490
|
-
const controller =
|
491
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
492
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
493
|
-
assert.lengthOf(actualViewData.groups, 2);
|
494
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
495
|
-
assert.lengthOf(actualViewData.groups[1].breakpointItems, 1);
|
496
|
-
});
|
497
|
-
|
498
|
-
it('correctly sets the name of the group', async () => {
|
499
|
-
const {groups} = await setUpTestWithOneBreakpointLocation(
|
500
|
-
{file: HELLO_JS_FILE, lineNumber: 0, columnNumber: 0, enabled: false});
|
501
|
-
assert.strictEqual(groups[0].name, HELLO_JS_FILE);
|
502
|
-
});
|
503
|
-
|
504
|
-
it('only extracts the line number as location if one breakpoint is on that line', async () => {
|
505
|
-
const {groups} = await setUpTestWithOneBreakpointLocation(
|
506
|
-
{file: HELLO_JS_FILE, lineNumber: 4, columnNumber: 0, enabled: false});
|
507
|
-
assert.strictEqual(groups[0].breakpointItems[0].location, '5');
|
508
|
-
});
|
509
|
-
|
510
|
-
it('extracts the line number and column number as location if more than one breakpoint is on that line',
|
511
|
-
async () => {
|
512
|
-
const testData = [
|
513
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
514
|
-
createLocationTestData(HELLO_JS_FILE, 3, 15),
|
515
|
-
];
|
516
|
-
|
517
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
518
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance(
|
519
|
-
{forceNew: true, breakpointManager, settings});
|
520
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
521
|
-
assert.lengthOf(actualViewData.groups, 1);
|
522
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 2);
|
523
|
-
assert.strictEqual(actualViewData.groups[0].breakpointItems[0].location, '4:11');
|
524
|
-
assert.strictEqual(actualViewData.groups[0].breakpointItems[1].location, '4:16');
|
525
|
-
});
|
526
|
-
|
527
|
-
it('orders breakpoints within a file by location', async () => {
|
528
|
-
const testData = [
|
529
|
-
createLocationTestData(HELLO_JS_FILE, 3, 15),
|
530
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
531
|
-
];
|
532
|
-
|
533
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
534
|
-
const controller =
|
535
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
536
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
537
|
-
assert.lengthOf(actualViewData.groups, 1);
|
538
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 2);
|
539
|
-
assert.strictEqual(actualViewData.groups[0].breakpointItems[0].location, '4:11');
|
540
|
-
assert.strictEqual(actualViewData.groups[0].breakpointItems[1].location, '4:16');
|
541
|
-
});
|
542
|
-
|
543
|
-
it('orders breakpoints within groups by location', async () => {
|
544
|
-
const testData = [
|
545
|
-
createLocationTestData(TEST_JS_FILE, 3, 15),
|
546
|
-
createLocationTestData(HELLO_JS_FILE, 3, 10),
|
547
|
-
];
|
548
|
-
|
549
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
550
|
-
const controller =
|
551
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
552
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
553
|
-
assert.lengthOf(actualViewData.groups, 2);
|
554
|
-
const names = actualViewData.groups.map(group => group.name);
|
555
|
-
assert.deepEqual(names, [HELLO_JS_FILE, TEST_JS_FILE]);
|
556
|
-
});
|
557
|
-
|
558
|
-
it('merges breakpoints mapping to the same location into one', async () => {
|
559
|
-
const testData = [
|
560
|
-
createLocationTestData(TEST_JS_FILE, 3, 15),
|
561
|
-
createLocationTestData(TEST_JS_FILE, 3, 15),
|
562
|
-
];
|
563
|
-
|
564
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
565
|
-
const controller =
|
566
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
567
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
568
|
-
assert.lengthOf(actualViewData.groups, 1);
|
569
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
570
|
-
});
|
571
|
-
|
572
|
-
it('correctly extracts the enabled state', async () => {
|
573
|
-
const {groups} =
|
574
|
-
await setUpTestWithOneBreakpointLocation({file: '', lineNumber: 0, columnNumber: 0, enabled: true});
|
575
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
576
|
-
assert.strictEqual(breakpointItem.status, Sources.BreakpointsView.BreakpointStatus.ENABLED);
|
577
|
-
});
|
578
|
-
|
579
|
-
it('correctly extracts the enabled state', async () => {
|
580
|
-
const {groups} =
|
581
|
-
await setUpTestWithOneBreakpointLocation({file: '', lineNumber: 0, columnNumber: 0, enabled: false});
|
582
|
-
const breakpointItem = groups[0].breakpointItems[0];
|
583
|
-
assert.strictEqual(breakpointItem.status, Sources.BreakpointsView.BreakpointStatus.DISABLED);
|
584
|
-
});
|
585
|
-
|
586
|
-
it('correctly extracts the enabled state', async () => {
|
587
|
-
const testData = [
|
588
|
-
createLocationTestData(TEST_JS_FILE, 3, 15, true /* enabled */),
|
589
|
-
createLocationTestData(TEST_JS_FILE, 3, 15, false /* enabled */),
|
590
|
-
];
|
591
|
-
|
592
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
593
|
-
const controller =
|
594
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
595
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
596
|
-
assert.lengthOf(actualViewData.groups, 1);
|
597
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
598
|
-
assert.strictEqual(
|
599
|
-
actualViewData.groups[0].breakpointItems[0].status, Sources.BreakpointsView.BreakpointStatus.INDETERMINATE);
|
600
|
-
});
|
601
|
-
|
602
|
-
it('correctly extracts the disabled state', async () => {
|
603
|
-
const snippet = 'const a = x;';
|
604
|
-
const {groups} =
|
605
|
-
await setUpTestWithOneBreakpointLocation({file: '', lineNumber: 0, columnNumber: 0, enabled: false, snippet});
|
606
|
-
assert.strictEqual(groups[0].breakpointItems[0].codeSnippet, snippet);
|
607
|
-
});
|
608
|
-
|
609
|
-
it('correctly extracts the indeterminate state', async () => {
|
610
|
-
const testData = [
|
611
|
-
createLocationTestData(TEST_JS_FILE, 3, 15, true /* enabled */),
|
612
|
-
createLocationTestData(TEST_JS_FILE, 3, 15, false /* enabled */),
|
613
|
-
];
|
614
|
-
|
615
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
616
|
-
const controller =
|
617
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
618
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
619
|
-
assert.lengthOf(actualViewData.groups, 1);
|
620
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
621
|
-
assert.strictEqual(
|
622
|
-
actualViewData.groups[0].breakpointItems[0].status, Sources.BreakpointsView.BreakpointStatus.INDETERMINATE);
|
623
|
-
});
|
624
|
-
|
625
|
-
it('correctly extracts conditional breakpoints', async () => {
|
626
|
-
const condition = 'x < a' as Breakpoints.BreakpointManager.UserCondition;
|
627
|
-
const testData = [
|
628
|
-
createLocationTestData(
|
629
|
-
TEST_JS_FILE, 3, 15, true /* enabled */, '', condition, false /* isLogpoint */, condition),
|
630
|
-
];
|
631
|
-
|
632
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
633
|
-
const controller =
|
634
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
635
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
636
|
-
assert.lengthOf(actualViewData.groups, 1);
|
637
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
638
|
-
const breakpointItem = actualViewData.groups[0].breakpointItems[0];
|
639
|
-
assert.strictEqual(breakpointItem.type, SDK.DebuggerModel.BreakpointType.CONDITIONAL_BREAKPOINT);
|
640
|
-
assert.strictEqual(breakpointItem.hoverText, condition);
|
641
|
-
});
|
642
|
-
|
643
|
-
it('correctly extracts logpoints', async () => {
|
644
|
-
const logExpression = 'x' as Breakpoints.BreakpointManager.UserCondition;
|
645
|
-
const testData = [
|
646
|
-
createLocationTestData(
|
647
|
-
TEST_JS_FILE, 3, 15, true /* enabled */, '', logExpression, true /* isLogpoint */, logExpression),
|
648
|
-
];
|
649
|
-
|
650
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettingsWithMockdata(testData);
|
651
|
-
const controller =
|
652
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
653
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
654
|
-
assert.lengthOf(actualViewData.groups, 1);
|
655
|
-
assert.lengthOf(actualViewData.groups[0].breakpointItems, 1);
|
656
|
-
const breakpointItem = actualViewData.groups[0].breakpointItems[0];
|
657
|
-
assert.strictEqual(breakpointItem.type, SDK.DebuggerModel.BreakpointType.LOGPOINT);
|
658
|
-
assert.strictEqual(breakpointItem.hoverText, logExpression);
|
659
|
-
});
|
660
|
-
|
661
|
-
describe('breakpoint groups', () => {
|
662
|
-
it('are expanded by default', async () => {
|
663
|
-
const {controller} = await setUpTestWithOneBreakpointLocation();
|
664
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
665
|
-
assert.isTrue(actualViewData.groups[0].expanded);
|
666
|
-
});
|
667
|
-
|
668
|
-
it('are collapsed if user collapses it', async () => {
|
669
|
-
const {controller, groups} = await setUpTestWithOneBreakpointLocation();
|
670
|
-
controller.expandedStateChanged(groups[0].url, false /* expanded */);
|
671
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
672
|
-
assert.isFalse(actualViewData.groups[0].expanded);
|
673
|
-
});
|
674
|
-
|
675
|
-
it('are expanded if user expands it', async () => {
|
676
|
-
const {controller, groups} = await setUpTestWithOneBreakpointLocation();
|
677
|
-
controller.expandedStateChanged(groups[0].url, true /* expanded */);
|
678
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
679
|
-
assert.isTrue(actualViewData.groups[0].expanded);
|
680
|
-
});
|
681
|
-
|
682
|
-
it('remember the collapsed state', async () => {
|
683
|
-
{
|
684
|
-
const {controller, groups} = await setUpTestWithOneBreakpointLocation();
|
685
|
-
controller.expandedStateChanged(groups[0].url, false /* expanded */);
|
686
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
687
|
-
assert.isFalse(actualViewData.groups[0].expanded);
|
688
|
-
}
|
689
|
-
|
690
|
-
// A new controller is created and initialized with the expanded settings.
|
691
|
-
{const breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance();
|
692
|
-
const settings = Common.Settings.Settings.instance();
|
693
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance({
|
694
|
-
forceNew: true,
|
695
|
-
breakpointManager,
|
696
|
-
settings,
|
697
|
-
});
|
698
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
699
|
-
assert.isFalse(actualViewData.groups[0].expanded);}
|
700
|
-
});
|
701
|
-
|
702
|
-
it('remember the expanded state', async () => {
|
703
|
-
{
|
704
|
-
const {controller, groups} = await setUpTestWithOneBreakpointLocation();
|
705
|
-
controller.expandedStateChanged(groups[0].url, true /* expanded */);
|
706
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
707
|
-
assert.isTrue(actualViewData.groups[0].expanded);
|
708
|
-
}
|
709
|
-
// A new controller is created and initialized with the expanded settings.
|
710
|
-
{
|
711
|
-
|
712
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance({
|
713
|
-
forceNew: true,
|
714
|
-
breakpointManager: Breakpoints.BreakpointManager.BreakpointManager.instance(),
|
715
|
-
settings: Common.Settings.Settings.instance(),
|
716
|
-
});
|
717
|
-
const actualViewData = await controller.getUpdatedBreakpointViewData();
|
718
|
-
assert.isTrue(actualViewData.groups[0].expanded);
|
719
|
-
|
720
|
-
}
|
721
|
-
});
|
722
|
-
});
|
723
|
-
});
|
724
|
-
});
|
725
|
-
|
726
|
-
describeWithMockConnection('BreakpointsSidebarController', () => {
|
727
|
-
beforeEach(() => {
|
728
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
729
|
-
const targetManager = SDK.TargetManager.TargetManager.instance();
|
730
|
-
const resourceMapping = new Bindings.ResourceMapping.ResourceMapping(targetManager, workspace);
|
731
|
-
const ignoreListManager = Workspace.IgnoreListManager.IgnoreListManager.instance({forceNew: true});
|
732
|
-
const debuggerWorkspaceBinding = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance({
|
733
|
-
forceNew: true,
|
734
|
-
resourceMapping,
|
735
|
-
targetManager,
|
736
|
-
ignoreListManager,
|
737
|
-
});
|
738
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance(
|
739
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
740
|
-
});
|
741
|
-
|
742
|
-
const DEFAULT_BREAKPOINT:
|
743
|
-
[Breakpoints.BreakpointManager.UserCondition, boolean, boolean, Breakpoints.BreakpointManager.BreakpointOrigin] =
|
744
|
-
[
|
745
|
-
Breakpoints.BreakpointManager.EMPTY_BREAKPOINT_CONDITION,
|
746
|
-
true, // enabled
|
747
|
-
false, // isLogpoint
|
748
|
-
Breakpoints.BreakpointManager.BreakpointOrigin.USER_ACTION,
|
749
|
-
];
|
750
|
-
|
751
|
-
it('auto-expands if a user adds a new breakpoint', async () => {
|
752
|
-
const breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance();
|
753
|
-
const settings = Common.Settings.Settings.instance();
|
754
|
-
const {uiSourceCode, project} =
|
755
|
-
createContentProviderUISourceCode({url: urlString`test.js`, mimeType: 'text/javascript'});
|
756
|
-
const controller =
|
757
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
758
|
-
|
759
|
-
// Add one breakpoint and collapse the tree.
|
760
|
-
const b1 = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
761
|
-
assert.exists(b1);
|
762
|
-
{
|
763
|
-
controller.expandedStateChanged(uiSourceCode.url(), false /* expanded */);
|
764
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
765
|
-
assert.lengthOf(data.groups, 1);
|
766
|
-
assert.lengthOf(data.groups[0].breakpointItems, 1);
|
767
|
-
assert.isFalse(data.groups[0].expanded);
|
768
|
-
}
|
769
|
-
|
770
|
-
// Add a new breakpoint and check if it's expanded as expected.
|
771
|
-
const b2 = await breakpointManager.setBreakpoint(uiSourceCode, 0, 3, ...DEFAULT_BREAKPOINT);
|
772
|
-
assert.exists(b2);
|
773
|
-
{
|
774
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
775
|
-
assert.lengthOf(data.groups, 1);
|
776
|
-
assert.lengthOf(data.groups[0].breakpointItems, 2);
|
777
|
-
assert.isTrue(data.groups[0].expanded);
|
778
|
-
}
|
779
|
-
|
780
|
-
// Clean up.
|
781
|
-
await b1.remove(false /* keepInStorage */);
|
782
|
-
await b2.remove(false /* keepInStorage */);
|
783
|
-
Workspace.Workspace.WorkspaceImpl.instance().removeProject(project);
|
784
|
-
});
|
785
|
-
|
786
|
-
it('does not auto-expand if a breakpoint was not triggered by user action', async () => {
|
787
|
-
const breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance();
|
788
|
-
const settings = Common.Settings.Settings.instance();
|
789
|
-
const {uiSourceCode, project} =
|
790
|
-
createContentProviderUISourceCode({url: urlString`test.js`, mimeType: 'text/javascript'});
|
791
|
-
const controller =
|
792
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
793
|
-
|
794
|
-
// Add one breakpoint and collapse the tree.
|
795
|
-
const b1 = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
796
|
-
assert.exists(b1);
|
797
|
-
{
|
798
|
-
controller.expandedStateChanged(uiSourceCode.url(), false /* expanded */);
|
799
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
800
|
-
assert.lengthOf(data.groups, 1);
|
801
|
-
assert.lengthOf(data.groups[0].breakpointItems, 1);
|
802
|
-
assert.isFalse(data.groups[0].expanded);
|
803
|
-
}
|
804
|
-
|
805
|
-
// Add a new non-user triggered breakpoint and check if it's still collapsed.
|
806
|
-
const b2 = await breakpointManager.setBreakpoint(
|
807
|
-
uiSourceCode, 0, 3, Breakpoints.BreakpointManager.EMPTY_BREAKPOINT_CONDITION, true, false,
|
808
|
-
Breakpoints.BreakpointManager.BreakpointOrigin.OTHER);
|
809
|
-
assert.exists(b2);
|
810
|
-
{
|
811
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
812
|
-
assert.lengthOf(data.groups, 1);
|
813
|
-
assert.lengthOf(data.groups[0].breakpointItems, 2);
|
814
|
-
assert.isFalse(data.groups[0].expanded);
|
815
|
-
}
|
816
|
-
|
817
|
-
// Clean up.
|
818
|
-
await b1.remove(false /* keepInStorage */);
|
819
|
-
await b2.remove(false /* keepInStorage */);
|
820
|
-
Workspace.Workspace.WorkspaceImpl.instance().removeProject(project);
|
821
|
-
});
|
822
|
-
|
823
|
-
it('auto-expands if a breakpoint was hit', async () => {
|
824
|
-
sinon.stub(
|
825
|
-
Common.Revealer.RevealerRegistry.instance(),
|
826
|
-
'reveal'); // Prevent pending reveal promises after tests are done.
|
827
|
-
|
828
|
-
const backend = new MockProtocolBackend();
|
829
|
-
const target = createTarget();
|
830
|
-
target.targetManager().setScopeTarget(target);
|
831
|
-
const breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance();
|
832
|
-
|
833
|
-
const sourceRoot = 'http://example.com';
|
834
|
-
const scriptInfo = {
|
835
|
-
url: `${sourceRoot}/foo.js`,
|
836
|
-
content: 'foo();\n',
|
837
|
-
};
|
838
|
-
|
839
|
-
const debuggerWorkspaceBinding = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance();
|
840
|
-
const uiSourceCodePromise =
|
841
|
-
debuggerWorkspaceBinding.waitForUISourceCodeAdded(urlString`${`${sourceRoot}/foo.js`}`, target);
|
842
|
-
|
843
|
-
const script = await backend.addScript(target, scriptInfo, null);
|
844
|
-
await uiSourceCodePromise;
|
845
|
-
const uiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(script);
|
846
|
-
assert.exists(uiSourceCode);
|
847
|
-
|
848
|
-
// Set up sdk and ui location, and a mapping between them, such that we can identify that
|
849
|
-
// the hit breakpoint is the one we are adding.
|
850
|
-
const responderPromise = backend.responderToBreakpointByUrlRequest(uiSourceCode.url(), 0)({
|
851
|
-
breakpointId: 'DUMMY_BREAKPOINT' as Protocol.Debugger.BreakpointId,
|
852
|
-
locations: [{
|
853
|
-
scriptId: script.scriptId,
|
854
|
-
lineNumber: 0,
|
855
|
-
columnNumber: 0,
|
856
|
-
}]
|
857
|
-
});
|
858
|
-
const b1 = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
859
|
-
assert.exists(b1);
|
860
|
-
await responderPromise;
|
861
|
-
|
862
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance(
|
863
|
-
{forceNew: true, breakpointManager, settings: Common.Settings.Settings.instance()});
|
864
|
-
controller.expandedStateChanged(uiSourceCode.url(), false /* expanded */);
|
865
|
-
|
866
|
-
// Double check that the group is collapsed.
|
867
|
-
{
|
868
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
869
|
-
assert.isFalse(data.groups[0].expanded);
|
870
|
-
}
|
871
|
-
|
872
|
-
// Simulating a breakpoint hit. Update the DebuggerPausedDetails to contain the info on the hit breakpoint.
|
873
|
-
const callFrame = sinon.createStubInstance(SDK.DebuggerModel.CallFrame);
|
874
|
-
callFrame.location.returns(new SDK.DebuggerModel.Location(script.debuggerModel, script.scriptId, 0, 0));
|
875
|
-
const pausedDetails = sinon.createStubInstance(SDK.DebuggerModel.DebuggerPausedDetails);
|
876
|
-
pausedDetails.callFrames = [callFrame];
|
877
|
-
|
878
|
-
// Instead of setting the flavor, directly call `flavorChanged` on the controller and mock what it's set to.
|
879
|
-
// Setting the flavor would have other listeners listening to it, and would cause undesirable side effects.
|
880
|
-
sinon.stub(UI.Context.Context.instance(), 'flavor')
|
881
|
-
.callsFake(flavorType => flavorType === SDK.DebuggerModel.DebuggerPausedDetails ? pausedDetails : null);
|
882
|
-
{
|
883
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
884
|
-
// Assert that the breakpoint is hit and the group is expanded.
|
885
|
-
assert.isTrue(data.groups[0].breakpointItems[0].isHit);
|
886
|
-
assert.isTrue(data.groups[0].expanded);
|
887
|
-
}
|
888
|
-
|
889
|
-
// Clean up.
|
890
|
-
await b1.remove(false /* keepInStorage */);
|
891
|
-
});
|
892
|
-
|
893
|
-
it('changes pause on exception state', async () => {
|
894
|
-
const {breakpointManager, settings} = createStubBreakpointManagerAndSettings();
|
895
|
-
breakpointManager.allBreakpointLocations.returns([]);
|
896
|
-
const controller =
|
897
|
-
Sources.BreakpointsView.BreakpointsSidebarController.instance({forceNew: true, breakpointManager, settings});
|
898
|
-
for (const pauseOnUncaughtExceptions of [true, false]) {
|
899
|
-
for (const pauseOnCaughtExceptions of [true, false]) {
|
900
|
-
controller.setPauseOnUncaughtExceptions(pauseOnUncaughtExceptions);
|
901
|
-
controller.setPauseOnCaughtExceptions(pauseOnCaughtExceptions);
|
902
|
-
|
903
|
-
const data = await controller.getUpdatedBreakpointViewData();
|
904
|
-
assert.strictEqual(data.pauseOnUncaughtExceptions, pauseOnUncaughtExceptions);
|
905
|
-
assert.strictEqual(data.pauseOnCaughtExceptions, pauseOnCaughtExceptions);
|
906
|
-
assert.strictEqual(settings.moduleSetting('pause-on-uncaught-exception').get(), pauseOnUncaughtExceptions);
|
907
|
-
assert.strictEqual(settings.moduleSetting('pause-on-caught-exception').get(), pauseOnCaughtExceptions);
|
908
|
-
}
|
909
|
-
}
|
910
|
-
});
|
911
|
-
});
|
912
|
-
|
913
|
-
describeWithMockConnection('BreakpointsView', () => {
|
914
|
-
beforeEach(() => {
|
915
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
916
|
-
const targetManager = SDK.TargetManager.TargetManager.instance();
|
917
|
-
const resourceMapping = new Bindings.ResourceMapping.ResourceMapping(targetManager, workspace);
|
918
|
-
const ignoreListManager = Workspace.IgnoreListManager.IgnoreListManager.instance({forceNew: true});
|
919
|
-
const debuggerWorkspaceBinding = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance({
|
920
|
-
forceNew: true,
|
921
|
-
resourceMapping,
|
922
|
-
targetManager,
|
923
|
-
ignoreListManager,
|
924
|
-
});
|
925
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance(
|
926
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
927
|
-
});
|
928
|
-
|
929
|
-
it('correctly expands breakpoint groups', async () => {
|
930
|
-
const {component, data} = await renderMultipleBreakpoints();
|
931
|
-
assert.isNotNull(component.contentElement);
|
932
|
-
|
933
|
-
const expandedGroups = data.groups.filter(group => group.expanded);
|
934
|
-
assert.isAbove(expandedGroups.length, 0);
|
935
|
-
|
936
|
-
const renderedExpandedGroups = Array.from(component.contentElement.querySelectorAll(EXPANDED_GROUPS_SELECTOR));
|
937
|
-
assert.lengthOf(renderedExpandedGroups, expandedGroups.length);
|
938
|
-
|
939
|
-
checkGroupNames(renderedExpandedGroups, expandedGroups);
|
940
|
-
});
|
941
|
-
|
942
|
-
it('correctly collapses breakpoint groups', async () => {
|
943
|
-
const {component, data} = await renderMultipleBreakpoints();
|
944
|
-
assert.isNotNull(component.contentElement);
|
945
|
-
|
946
|
-
const collapsedGroups = data.groups.filter(group => !group.expanded);
|
947
|
-
assert.isAbove(collapsedGroups.length, 0);
|
948
|
-
|
949
|
-
const renderedCollapsedGroups = Array.from(component.contentElement.querySelectorAll(COLLAPSED_GROUPS_SELECTOR));
|
950
|
-
|
951
|
-
checkGroupNames(renderedCollapsedGroups, collapsedGroups);
|
952
|
-
});
|
953
|
-
|
954
|
-
it('renders the group names', async () => {
|
955
|
-
const {component, data} = await renderMultipleBreakpoints();
|
956
|
-
assert.isNotNull(component.contentElement);
|
957
|
-
|
958
|
-
const renderedGroupNames = component.contentElement.querySelectorAll(GROUP_NAME_SELECTOR);
|
959
|
-
assertElements(renderedGroupNames, HTMLSpanElement);
|
960
|
-
|
961
|
-
const expectedNames = data.groups.flatMap(group => group.name);
|
962
|
-
const actualNames = [];
|
963
|
-
for (const renderedGroupName of renderedGroupNames.values()) {
|
964
|
-
actualNames.push(renderedGroupName.textContent);
|
965
|
-
}
|
966
|
-
assert.deepEqual(actualNames, expectedNames);
|
967
|
-
});
|
968
|
-
|
969
|
-
it('renders the breakpoints with their checkboxes', async () => {
|
970
|
-
const {component, data} = await renderMultipleBreakpoints();
|
971
|
-
assert.isNotNull(component.contentElement);
|
972
|
-
|
973
|
-
const renderedBreakpointItems = Array.from(component.contentElement.querySelectorAll(BREAKPOINT_ITEM_SELECTOR));
|
974
|
-
|
975
|
-
const breakpointItems = extractBreakpointItems(data);
|
976
|
-
assert.lengthOf(renderedBreakpointItems, breakpointItems.length);
|
977
|
-
|
978
|
-
for (let i = 0; i < renderedBreakpointItems.length; ++i) {
|
979
|
-
const renderedItem = renderedBreakpointItems[i];
|
980
|
-
assert.instanceOf(renderedItem, HTMLDivElement);
|
981
|
-
|
982
|
-
const inputElement = renderedItem.querySelector('input');
|
983
|
-
assert.instanceOf(inputElement, HTMLInputElement);
|
984
|
-
checkCheckboxState(inputElement, breakpointItems[i]);
|
985
|
-
}
|
986
|
-
});
|
987
|
-
|
988
|
-
it('renders breakpoints with their code snippet', async () => {
|
989
|
-
const {component, data} = await renderMultipleBreakpoints();
|
990
|
-
assert.isNotNull(component.contentElement);
|
991
|
-
|
992
|
-
const renderedBreakpointItems = Array.from(component.contentElement.querySelectorAll(BREAKPOINT_ITEM_SELECTOR));
|
993
|
-
|
994
|
-
const breakpointItems = extractBreakpointItems(data);
|
995
|
-
assert.lengthOf(renderedBreakpointItems, breakpointItems.length);
|
996
|
-
|
997
|
-
for (let i = 0; i < renderedBreakpointItems.length; ++i) {
|
998
|
-
const renderedBreakpointItem = renderedBreakpointItems[i];
|
999
|
-
assert.instanceOf(renderedBreakpointItem, HTMLDivElement);
|
1000
|
-
checkCodeSnippet(renderedBreakpointItem, breakpointItems[i]);
|
1001
|
-
}
|
1002
|
-
});
|
1003
|
-
|
1004
|
-
it('renders breakpoint groups with a differentiator if the file names are not unique', async () => {
|
1005
|
-
const component = await createAndInitializeBreakpointsView();
|
1006
|
-
|
1007
|
-
const groupTemplate = {
|
1008
|
-
name: 'index.js',
|
1009
|
-
url: urlString``,
|
1010
|
-
editable: true,
|
1011
|
-
expanded: true,
|
1012
|
-
breakpointItems: [
|
1013
|
-
{
|
1014
|
-
id: '1',
|
1015
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1016
|
-
location: '234',
|
1017
|
-
codeSnippet: 'const a = x;',
|
1018
|
-
isHit: false,
|
1019
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
1020
|
-
},
|
1021
|
-
],
|
1022
|
-
};
|
1023
|
-
|
1024
|
-
// Create two groups with the same file name, but different url.
|
1025
|
-
const group1 = {...groupTemplate};
|
1026
|
-
group1.url = urlString`https://google.com/lib/index.js`;
|
1027
|
-
|
1028
|
-
const group2 = {...groupTemplate};
|
1029
|
-
group2.url = urlString`https://google.com/src/index.js`;
|
1030
|
-
|
1031
|
-
const data: Sources.BreakpointsView.BreakpointsViewData = {
|
1032
|
-
breakpointsActive: true,
|
1033
|
-
pauseOnUncaughtExceptions: false,
|
1034
|
-
pauseOnCaughtExceptions: false,
|
1035
|
-
groups: [
|
1036
|
-
group1,
|
1037
|
-
group2,
|
1038
|
-
],
|
1039
|
-
};
|
1040
|
-
component.data = data;
|
1041
|
-
await RenderCoordinator.done();
|
1042
|
-
await component.updateComplete;
|
1043
|
-
|
1044
|
-
assert.isNotNull(component.contentElement);
|
1045
|
-
const groupSummaries = Array.from(component.contentElement.querySelectorAll(SUMMARY_SELECTOR));
|
1046
|
-
const differentiatingPath = groupSummaries.map(group => {
|
1047
|
-
const differentiatorElement = group.querySelector(GROUP_DIFFERENTIATOR_SELECTOR);
|
1048
|
-
assert.instanceOf(differentiatorElement, HTMLSpanElement);
|
1049
|
-
return differentiatorElement.textContent;
|
1050
|
-
});
|
1051
|
-
assert.deepEqual(differentiatingPath, ['lib/', 'src/']);
|
1052
|
-
});
|
1053
|
-
|
1054
|
-
it('renders breakpoints with a differentiating path', async () => {
|
1055
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1056
|
-
assert.isNotNull(component.contentElement);
|
1057
|
-
|
1058
|
-
const renderedBreakpointItems = Array.from(component.contentElement.querySelectorAll(BREAKPOINT_ITEM_SELECTOR));
|
1059
|
-
|
1060
|
-
const breakpointItems = extractBreakpointItems(data);
|
1061
|
-
assert.lengthOf(renderedBreakpointItems, breakpointItems.length);
|
1062
|
-
|
1063
|
-
for (let i = 0; i < renderedBreakpointItems.length; ++i) {
|
1064
|
-
const renderedBreakpointItem = renderedBreakpointItems[i];
|
1065
|
-
assert.instanceOf(renderedBreakpointItem, HTMLDivElement);
|
1066
|
-
|
1067
|
-
const locationElement = renderedBreakpointItem.querySelector(BREAKPOINT_LOCATION_SELECTOR);
|
1068
|
-
assert.instanceOf(locationElement, HTMLSpanElement);
|
1069
|
-
|
1070
|
-
const actualLocation = locationElement.textContent;
|
1071
|
-
const expectedLocation = breakpointItems[i].location;
|
1072
|
-
|
1073
|
-
assert.strictEqual(actualLocation, expectedLocation);
|
1074
|
-
}
|
1075
|
-
});
|
1076
|
-
|
1077
|
-
it('triggers an event on clicking the checkbox of a breakpoint', async () => {
|
1078
|
-
const {component, data} = await renderSingleBreakpoint();
|
1079
|
-
assert.isNotNull(component.contentElement);
|
1080
|
-
|
1081
|
-
const renderedItem = component.contentElement.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1082
|
-
assert.instanceOf(renderedItem, HTMLDivElement);
|
1083
|
-
|
1084
|
-
const checkbox = renderedItem.querySelector('input');
|
1085
|
-
assert.instanceOf(checkbox, HTMLInputElement);
|
1086
|
-
const checked = checkbox.checked;
|
1087
|
-
|
1088
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1089
|
-
const breakpointStateChanged = sinon.stub(controller, 'breakpointStateChanged');
|
1090
|
-
checkbox.click();
|
1091
|
-
|
1092
|
-
assert.isTrue(breakpointStateChanged.calledOnceWith(data.groups[0].breakpointItems[0], !checked));
|
1093
|
-
});
|
1094
|
-
|
1095
|
-
it('triggers an event on clicking on the snippet text', async () => {
|
1096
|
-
const {component, data} = await renderSingleBreakpoint();
|
1097
|
-
assert.isNotNull(component.contentElement);
|
1098
|
-
|
1099
|
-
const snippet = component.contentElement.querySelector(CODE_SNIPPET_SELECTOR);
|
1100
|
-
assert.instanceOf(snippet, HTMLSpanElement);
|
1101
|
-
|
1102
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1103
|
-
const jumpToSource = sinon.stub(controller, 'jumpToSource');
|
1104
|
-
snippet.click();
|
1105
|
-
|
1106
|
-
assert.isTrue(jumpToSource.calledOnceWith(data.groups[0].breakpointItems[0]));
|
1107
|
-
});
|
1108
|
-
|
1109
|
-
it('triggers an event on expanding/unexpanding', async () => {
|
1110
|
-
const {component, data} = await renderSingleBreakpoint();
|
1111
|
-
assert.isNotNull(component.contentElement);
|
1112
|
-
|
1113
|
-
const renderedGroupName = component.contentElement.querySelector(GROUP_NAME_SELECTOR);
|
1114
|
-
assert.instanceOf(renderedGroupName, HTMLSpanElement);
|
1115
|
-
|
1116
|
-
const expandedInitialValue = data.groups[0].expanded;
|
1117
|
-
|
1118
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1119
|
-
const expandedStateChanged = sinon.stub(controller, 'expandedStateChanged');
|
1120
|
-
renderedGroupName.click();
|
1121
|
-
|
1122
|
-
await new Promise(resolve => setTimeout(resolve, 0));
|
1123
|
-
const group = data.groups[0];
|
1124
|
-
assert.isTrue(expandedStateChanged.calledOnceWith(group.url, group.expanded));
|
1125
|
-
assert.notStrictEqual(group.expanded, expandedInitialValue);
|
1126
|
-
});
|
1127
|
-
|
1128
|
-
it('highlights breakpoint if it is set to be hit', async () => {
|
1129
|
-
const {component} = await renderSingleBreakpoint();
|
1130
|
-
assert.isNotNull(component.contentElement);
|
1131
|
-
|
1132
|
-
const renderedBreakpointItem = component.contentElement.querySelector(HIT_BREAKPOINT_SELECTOR);
|
1133
|
-
assert.instanceOf(renderedBreakpointItem, HTMLDivElement);
|
1134
|
-
});
|
1135
|
-
|
1136
|
-
it('triggers an event on removing file breakpoints', async () => {
|
1137
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1138
|
-
assert.isNotNull(component.contentElement);
|
1139
|
-
|
1140
|
-
await hover(component, SUMMARY_SELECTOR);
|
1141
|
-
|
1142
|
-
const removeFileBreakpointsButton = component.contentElement.querySelector(REMOVE_FILE_BREAKPOINTS_SELECTOR);
|
1143
|
-
assert.instanceOf(removeFileBreakpointsButton, HTMLButtonElement);
|
1144
|
-
|
1145
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1146
|
-
const breakpointsRemoved = sinon.stub(controller, 'breakpointsRemoved');
|
1147
|
-
removeFileBreakpointsButton.click();
|
1148
|
-
// await new Promise(resolve => setTimeout(resolve, 0));
|
1149
|
-
assert.isTrue(breakpointsRemoved.calledOnceWith(data.groups[0].breakpointItems));
|
1150
|
-
});
|
1151
|
-
|
1152
|
-
it('triggers an event on removing one breakpoint', async () => {
|
1153
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1154
|
-
assert.isNotNull(component.contentElement);
|
1155
|
-
|
1156
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1157
|
-
|
1158
|
-
const removeFileBreakpointsButton = component.contentElement.querySelector(REMOVE_SINGLE_BREAKPOINT_SELECTOR);
|
1159
|
-
assert.instanceOf(removeFileBreakpointsButton, HTMLButtonElement);
|
1160
|
-
|
1161
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1162
|
-
const breakpointsRemoved = sinon.stub(controller, 'breakpointsRemoved');
|
1163
|
-
removeFileBreakpointsButton.click();
|
1164
|
-
// await new Promise(resolve => setTimeout(resolve, 0));
|
1165
|
-
sinon.assert.calledOnce(breakpointsRemoved);
|
1166
|
-
assert.deepEqual(breakpointsRemoved.firstCall.firstArg, [data.groups[0].breakpointItems[0]]);
|
1167
|
-
});
|
1168
|
-
|
1169
|
-
it('triggers an event on editing one breakpoint', async () => {
|
1170
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1171
|
-
assert.isNotNull(component.contentElement);
|
1172
|
-
|
1173
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1174
|
-
|
1175
|
-
const editBreakpointButton = component.contentElement.querySelector(EDIT_SINGLE_BREAKPOINT_SELECTOR);
|
1176
|
-
assert.instanceOf(editBreakpointButton, HTMLButtonElement);
|
1177
|
-
|
1178
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1179
|
-
const breakpointEdited = sinon.stub(controller, 'breakpointEdited');
|
1180
|
-
editBreakpointButton.click();
|
1181
|
-
// await new Promise(resolve => setTimeout(resolve, 0));
|
1182
|
-
assert.isTrue(breakpointEdited.calledOnceWith(data.groups[0].breakpointItems[0], true));
|
1183
|
-
});
|
1184
|
-
|
1185
|
-
it('shows a tooltip with edit condition on regular breakpoints', async () => {
|
1186
|
-
const {component} = await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT);
|
1187
|
-
assert.isNotNull(component.contentElement);
|
1188
|
-
|
1189
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1190
|
-
|
1191
|
-
const editBreakpointButton = component.contentElement.querySelector(EDIT_SINGLE_BREAKPOINT_SELECTOR);
|
1192
|
-
assert.instanceOf(editBreakpointButton, HTMLButtonElement);
|
1193
|
-
|
1194
|
-
assert.strictEqual(editBreakpointButton.title, 'Edit condition');
|
1195
|
-
});
|
1196
|
-
|
1197
|
-
describe('group checkboxes', () => {
|
1198
|
-
async function waitForCheckboxToggledEventsWithCheckedUpdate(numBreakpointItems: number, checked: boolean) {
|
1199
|
-
return await new Promise<void>(resolve => {
|
1200
|
-
let numCheckboxToggledEvents = 0;
|
1201
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1202
|
-
sinon.stub(controller, 'breakpointStateChanged').callsFake((_, checkedArg) => {
|
1203
|
-
assert.strictEqual(checkedArg, checked);
|
1204
|
-
++numCheckboxToggledEvents;
|
1205
|
-
if (numCheckboxToggledEvents === numBreakpointItems) {
|
1206
|
-
resolve();
|
1207
|
-
}
|
1208
|
-
});
|
1209
|
-
});
|
1210
|
-
}
|
1211
|
-
it('show a checked group checkbox if at least one breakpoint in that group is enabled', async () => {
|
1212
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1213
|
-
|
1214
|
-
// Make sure that at least one breakpoint is enabled.
|
1215
|
-
data.groups[0].breakpointItems[0].status = Sources.BreakpointsView.BreakpointStatus.ENABLED;
|
1216
|
-
component.data = data;
|
1217
|
-
await RenderCoordinator.done();
|
1218
|
-
await component.updateComplete;
|
1219
|
-
|
1220
|
-
await hover(component, SUMMARY_SELECTOR);
|
1221
|
-
|
1222
|
-
assert.isNotNull(component.contentElement);
|
1223
|
-
const firstGroupSummary = component.contentElement.querySelector(SUMMARY_SELECTOR);
|
1224
|
-
assert.exists(firstGroupSummary);
|
1225
|
-
const groupCheckbox = firstGroupSummary.querySelector('input');
|
1226
|
-
assert.instanceOf(groupCheckbox, HTMLInputElement);
|
1227
|
-
|
1228
|
-
assert.isTrue(groupCheckbox.checked);
|
1229
|
-
});
|
1230
|
-
|
1231
|
-
it('show an unchecked group checkbox if no breakpoint in that group is enabled', async () => {
|
1232
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1233
|
-
|
1234
|
-
// Make sure that all breakpoints are disabled.
|
1235
|
-
const breakpointItems = data.groups[0].breakpointItems;
|
1236
|
-
for (let i = 0; i < breakpointItems.length; ++i) {
|
1237
|
-
breakpointItems[i].status = Sources.BreakpointsView.BreakpointStatus.DISABLED;
|
1238
|
-
}
|
1239
|
-
|
1240
|
-
component.data = data;
|
1241
|
-
await RenderCoordinator.done();
|
1242
|
-
await component.updateComplete;
|
1243
|
-
|
1244
|
-
await hover(component, SUMMARY_SELECTOR);
|
1245
|
-
|
1246
|
-
assert.isNotNull(component.contentElement);
|
1247
|
-
const firstGroupSummary = component.contentElement.querySelector(SUMMARY_SELECTOR);
|
1248
|
-
assert.exists(firstGroupSummary);
|
1249
|
-
const groupCheckbox = firstGroupSummary.querySelector('input');
|
1250
|
-
assert.instanceOf(groupCheckbox, HTMLInputElement);
|
1251
|
-
|
1252
|
-
assert.isFalse(groupCheckbox.checked);
|
1253
|
-
});
|
1254
|
-
|
1255
|
-
it('disable all breakpoints on unchecking', async () => {
|
1256
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1257
|
-
|
1258
|
-
const numBreakpointItems = data.groups[0].breakpointItems.length;
|
1259
|
-
assert.isTrue(numBreakpointItems > 1);
|
1260
|
-
|
1261
|
-
// Make sure that all breakpoints are enabled.
|
1262
|
-
for (let i = 0; i < numBreakpointItems; ++i) {
|
1263
|
-
data.groups[0].breakpointItems[i].status = Sources.BreakpointsView.BreakpointStatus.ENABLED;
|
1264
|
-
}
|
1265
|
-
component.data = data;
|
1266
|
-
await RenderCoordinator.done();
|
1267
|
-
await component.updateComplete;
|
1268
|
-
|
1269
|
-
await hover(component, SUMMARY_SELECTOR);
|
1270
|
-
|
1271
|
-
// Uncheck the group checkbox.
|
1272
|
-
assert.isNotNull(component.contentElement);
|
1273
|
-
const firstGroupSummary = component.contentElement.querySelector(SUMMARY_SELECTOR);
|
1274
|
-
assert.exists(firstGroupSummary);
|
1275
|
-
const groupCheckbox = firstGroupSummary.querySelector('input');
|
1276
|
-
assert.instanceOf(groupCheckbox, HTMLInputElement);
|
1277
|
-
|
1278
|
-
// Wait until we receive all events fired that notify us of disabled breakpoints.
|
1279
|
-
const waitForEventPromise = waitForCheckboxToggledEventsWithCheckedUpdate(numBreakpointItems, false);
|
1280
|
-
|
1281
|
-
groupCheckbox.click();
|
1282
|
-
await waitForEventPromise;
|
1283
|
-
});
|
1284
|
-
|
1285
|
-
it('enable all breakpoints on unchecking', async () => {
|
1286
|
-
const {component, data} = await renderMultipleBreakpoints();
|
1287
|
-
|
1288
|
-
const numBreakpointItems = data.groups[0].breakpointItems.length;
|
1289
|
-
assert.isTrue(numBreakpointItems > 1);
|
1290
|
-
|
1291
|
-
// Make sure that all breakpoints are disabled.
|
1292
|
-
for (let i = 0; i < numBreakpointItems; ++i) {
|
1293
|
-
data.groups[0].breakpointItems[i].status = Sources.BreakpointsView.BreakpointStatus.DISABLED;
|
1294
|
-
}
|
1295
|
-
component.data = data;
|
1296
|
-
await RenderCoordinator.done();
|
1297
|
-
await component.updateComplete;
|
1298
|
-
|
1299
|
-
await hover(component, SUMMARY_SELECTOR);
|
1300
|
-
|
1301
|
-
// Uncheck the group checkbox.
|
1302
|
-
assert.isNotNull(component.contentElement);
|
1303
|
-
const firstGroupSummary = component.contentElement.querySelector(SUMMARY_SELECTOR);
|
1304
|
-
assert.exists(firstGroupSummary);
|
1305
|
-
const groupCheckbox = firstGroupSummary.querySelector('input');
|
1306
|
-
assert.instanceOf(groupCheckbox, HTMLInputElement);
|
1307
|
-
|
1308
|
-
// Wait until we receive all events fired that notify us of enabled breakpoints.
|
1309
|
-
const waitForEventPromise = waitForCheckboxToggledEventsWithCheckedUpdate(numBreakpointItems, true);
|
1310
|
-
|
1311
|
-
groupCheckbox.click();
|
1312
|
-
await waitForEventPromise;
|
1313
|
-
});
|
1314
|
-
});
|
1315
|
-
|
1316
|
-
it('only renders edit button for breakpoints in editable groups', async () => {
|
1317
|
-
const component = await createAndInitializeBreakpointsView();
|
1318
|
-
|
1319
|
-
const data: Sources.BreakpointsView.BreakpointsViewData = {
|
1320
|
-
breakpointsActive: true,
|
1321
|
-
pauseOnUncaughtExceptions: false,
|
1322
|
-
pauseOnCaughtExceptions: false,
|
1323
|
-
groups: [
|
1324
|
-
{
|
1325
|
-
name: 'test1.js',
|
1326
|
-
url: urlString`https://google.com/test1.js`,
|
1327
|
-
editable: false,
|
1328
|
-
expanded: true,
|
1329
|
-
breakpointItems: [
|
1330
|
-
{
|
1331
|
-
id: '1',
|
1332
|
-
location: '1',
|
1333
|
-
codeSnippet: 'const a = 0;',
|
1334
|
-
isHit: true,
|
1335
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
1336
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1337
|
-
},
|
1338
|
-
],
|
1339
|
-
},
|
1340
|
-
],
|
1341
|
-
};
|
1342
|
-
|
1343
|
-
component.data = data;
|
1344
|
-
await RenderCoordinator.done();
|
1345
|
-
assert.isNotNull(component.contentElement);
|
1346
|
-
|
1347
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1348
|
-
|
1349
|
-
const editBreakpointButton = component.contentElement.querySelector(EDIT_SINGLE_BREAKPOINT_SELECTOR);
|
1350
|
-
assert.isNull(editBreakpointButton);
|
1351
|
-
});
|
1352
|
-
|
1353
|
-
it('initializes data from the controller on construction', async () => {
|
1354
|
-
await setUpTestWithOneBreakpointLocation();
|
1355
|
-
const component = await createAndInitializeBreakpointsView();
|
1356
|
-
const renderedGroupName = component.contentElement?.querySelector(GROUP_NAME_SELECTOR);
|
1357
|
-
assert.strictEqual(renderedGroupName?.textContent, HELLO_JS_FILE);
|
1358
|
-
});
|
1359
|
-
|
1360
|
-
describe('conditional breakpoints', () => {
|
1361
|
-
const breakpointDetails = 'x < a';
|
1362
|
-
|
1363
|
-
it('are rendered', async () => {
|
1364
|
-
const {component} =
|
1365
|
-
await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.CONDITIONAL_BREAKPOINT, breakpointDetails);
|
1366
|
-
const breakpointItem = component.contentElement?.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1367
|
-
assert.exists(breakpointItem);
|
1368
|
-
assert.instanceOf(breakpointItem, HTMLDivElement);
|
1369
|
-
assert.isTrue(breakpointItem.classList.contains('conditional-breakpoint'));
|
1370
|
-
});
|
1371
|
-
|
1372
|
-
it('show a tooltip', async () => {
|
1373
|
-
const {component} =
|
1374
|
-
await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.CONDITIONAL_BREAKPOINT, breakpointDetails);
|
1375
|
-
const codeSnippet = component.contentElement?.querySelector(CODE_SNIPPET_SELECTOR);
|
1376
|
-
assert.exists(codeSnippet);
|
1377
|
-
assert.instanceOf(codeSnippet, HTMLSpanElement);
|
1378
|
-
assert.strictEqual(codeSnippet.title, `Condition: ${breakpointDetails}`);
|
1379
|
-
});
|
1380
|
-
|
1381
|
-
it('show a tooltip on editing the condition', async () => {
|
1382
|
-
const {component} =
|
1383
|
-
await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.CONDITIONAL_BREAKPOINT, breakpointDetails);
|
1384
|
-
assert.isNotNull(component.contentElement);
|
1385
|
-
|
1386
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1387
|
-
|
1388
|
-
const editBreakpointButton = component.contentElement.querySelector(EDIT_SINGLE_BREAKPOINT_SELECTOR);
|
1389
|
-
assert.instanceOf(editBreakpointButton, HTMLButtonElement);
|
1390
|
-
|
1391
|
-
assert.strictEqual(editBreakpointButton.title, 'Edit condition');
|
1392
|
-
});
|
1393
|
-
});
|
1394
|
-
|
1395
|
-
describe('logpoints', () => {
|
1396
|
-
const breakpointDetails = 'x, a';
|
1397
|
-
|
1398
|
-
it('are rendered', async () => {
|
1399
|
-
const {component} = await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.LOGPOINT, breakpointDetails);
|
1400
|
-
const breakpointItem = component.contentElement?.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1401
|
-
assert.exists(breakpointItem);
|
1402
|
-
assert.instanceOf(breakpointItem, HTMLDivElement);
|
1403
|
-
assert.isTrue(breakpointItem.classList.contains('logpoint'));
|
1404
|
-
});
|
1405
|
-
|
1406
|
-
it('show a tooltip', async () => {
|
1407
|
-
const {component} = await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.LOGPOINT, breakpointDetails);
|
1408
|
-
const codeSnippet = component.contentElement?.querySelector(CODE_SNIPPET_SELECTOR);
|
1409
|
-
assert.exists(codeSnippet);
|
1410
|
-
assert.instanceOf(codeSnippet, HTMLSpanElement);
|
1411
|
-
assert.strictEqual(codeSnippet.title, `Logpoint: ${breakpointDetails}`);
|
1412
|
-
});
|
1413
|
-
|
1414
|
-
it('show a tooltip on editing the logpoint', async () => {
|
1415
|
-
const {component} = await renderSingleBreakpoint(SDK.DebuggerModel.BreakpointType.LOGPOINT, breakpointDetails);
|
1416
|
-
assert.isNotNull(component.contentElement);
|
1417
|
-
|
1418
|
-
await hover(component, BREAKPOINT_ITEM_SELECTOR);
|
1419
|
-
|
1420
|
-
const editBreakpointButton = component.contentElement.querySelector(EDIT_SINGLE_BREAKPOINT_SELECTOR);
|
1421
|
-
assert.instanceOf(editBreakpointButton, HTMLButtonElement);
|
1422
|
-
|
1423
|
-
assert.strictEqual(editBreakpointButton.title, 'Edit logpoint');
|
1424
|
-
});
|
1425
|
-
});
|
1426
|
-
|
1427
|
-
describe('pause on exceptions', () => {
|
1428
|
-
it('state is rendered correctly when disabled', async () => {
|
1429
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: false, pauseOnCaughtExceptions: false});
|
1430
|
-
assert.isNotNull(component.contentElement);
|
1431
|
-
|
1432
|
-
const pauseOnUncaughtExceptionsItem =
|
1433
|
-
component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1434
|
-
assert.exists(pauseOnUncaughtExceptionsItem);
|
1435
|
-
|
1436
|
-
const pauseOnUncaughtExceptionsCheckbox = pauseOnUncaughtExceptionsItem.querySelector('input');
|
1437
|
-
assert.instanceOf(pauseOnUncaughtExceptionsCheckbox, HTMLInputElement);
|
1438
|
-
assert.isFalse(pauseOnUncaughtExceptionsCheckbox.checked);
|
1439
|
-
|
1440
|
-
const pauseOnCaughtExceptionsItem = component.contentElement?.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1441
|
-
assert.exists(pauseOnCaughtExceptionsItem);
|
1442
|
-
|
1443
|
-
const pauseOnCaughtExceptionsCheckbox = pauseOnUncaughtExceptionsItem.querySelector('input');
|
1444
|
-
assert.instanceOf(pauseOnCaughtExceptionsCheckbox, HTMLInputElement);
|
1445
|
-
assert.isFalse(pauseOnCaughtExceptionsCheckbox.checked);
|
1446
|
-
});
|
1447
|
-
|
1448
|
-
it('state is rendered correctly when pausing on uncaught exceptions', async () => {
|
1449
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: true, pauseOnCaughtExceptions: false});
|
1450
|
-
assert.isNotNull(component.contentElement);
|
1451
|
-
|
1452
|
-
const pauseOnUncaughtExceptionsItem =
|
1453
|
-
component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1454
|
-
assert.exists(pauseOnUncaughtExceptionsItem);
|
1455
|
-
|
1456
|
-
const pauseOnUncaughtExceptionsCheckbox = pauseOnUncaughtExceptionsItem.querySelector('input');
|
1457
|
-
assert.exists(pauseOnUncaughtExceptionsCheckbox);
|
1458
|
-
assert.instanceOf(pauseOnUncaughtExceptionsCheckbox, HTMLInputElement);
|
1459
|
-
assert.isTrue(pauseOnUncaughtExceptionsCheckbox.checked);
|
1460
|
-
|
1461
|
-
const pauseOnCaughtExceptionsItem = component.contentElement?.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1462
|
-
assert.exists(pauseOnCaughtExceptionsItem);
|
1463
|
-
|
1464
|
-
const pauseOnCaughtExceptionsCheckbox = pauseOnCaughtExceptionsItem.querySelector('input');
|
1465
|
-
assert.exists(pauseOnCaughtExceptionsCheckbox);
|
1466
|
-
assert.instanceOf(pauseOnCaughtExceptionsCheckbox, HTMLInputElement);
|
1467
|
-
assert.isFalse(pauseOnCaughtExceptionsCheckbox.checked);
|
1468
|
-
});
|
1469
|
-
|
1470
|
-
it('state is rendered correctly when pausing on all exceptions', async () => {
|
1471
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: true, pauseOnCaughtExceptions: true});
|
1472
|
-
assert.isNotNull(component.contentElement);
|
1473
|
-
|
1474
|
-
const pauseOnUncaughtExceptionsItem =
|
1475
|
-
component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1476
|
-
assert.exists(pauseOnUncaughtExceptionsItem);
|
1477
|
-
|
1478
|
-
const pauseOnUncaughtExceptionsCheckbox = pauseOnUncaughtExceptionsItem.querySelector('input');
|
1479
|
-
assert.exists(pauseOnUncaughtExceptionsCheckbox);
|
1480
|
-
assert.instanceOf(pauseOnUncaughtExceptionsCheckbox, HTMLInputElement);
|
1481
|
-
assert.isTrue(pauseOnUncaughtExceptionsCheckbox.checked);
|
1482
|
-
|
1483
|
-
const pauseOnCaughtExceptionsItem = component.contentElement?.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1484
|
-
assert.exists(pauseOnCaughtExceptionsItem);
|
1485
|
-
|
1486
|
-
const pauseOnCaughtExceptionsCheckbox = pauseOnCaughtExceptionsItem.querySelector('input');
|
1487
|
-
assert.exists(pauseOnCaughtExceptionsCheckbox);
|
1488
|
-
assert.instanceOf(pauseOnCaughtExceptionsCheckbox, HTMLInputElement);
|
1489
|
-
assert.isTrue(pauseOnCaughtExceptionsCheckbox.checked);
|
1490
|
-
});
|
1491
|
-
|
1492
|
-
it('triggers an event when disabling pausing on all exceptions', async () => {
|
1493
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: true, pauseOnCaughtExceptions: false});
|
1494
|
-
assert.isNotNull(component.contentElement);
|
1495
|
-
|
1496
|
-
const item = component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1497
|
-
assert.exists(item);
|
1498
|
-
|
1499
|
-
const checkbox = item.querySelector('input');
|
1500
|
-
assert.instanceOf(checkbox, HTMLInputElement);
|
1501
|
-
const {checked} = checkbox;
|
1502
|
-
|
1503
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1504
|
-
const setPauseOnUncaughtExceptions = sinon.stub(controller, 'setPauseOnUncaughtExceptions');
|
1505
|
-
|
1506
|
-
checkbox.click();
|
1507
|
-
|
1508
|
-
assert.isTrue(setPauseOnUncaughtExceptions.calledOnceWith(!checked));
|
1509
|
-
});
|
1510
|
-
|
1511
|
-
it('triggers an event when enabling pausing on caught exceptions', async () => {
|
1512
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: true, pauseOnCaughtExceptions: false});
|
1513
|
-
assert.isNotNull(component.contentElement);
|
1514
|
-
|
1515
|
-
const item = component.contentElement.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1516
|
-
assert.exists(item);
|
1517
|
-
|
1518
|
-
const checkbox = item.querySelector('input');
|
1519
|
-
assert.instanceOf(checkbox, HTMLInputElement);
|
1520
|
-
const {checked} = checkbox;
|
1521
|
-
|
1522
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1523
|
-
const setPauseOnCaughtExceptions = sinon.stub(controller, 'setPauseOnCaughtExceptions');
|
1524
|
-
|
1525
|
-
checkbox.click();
|
1526
|
-
|
1527
|
-
assert.isTrue(setPauseOnCaughtExceptions.calledOnceWith(!checked));
|
1528
|
-
});
|
1529
|
-
|
1530
|
-
it('triggers an event when enabling pausing on uncaught exceptions', async () => {
|
1531
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: false, pauseOnCaughtExceptions: true});
|
1532
|
-
assert.isNotNull(component.contentElement);
|
1533
|
-
|
1534
|
-
const item = component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1535
|
-
assert.exists(item);
|
1536
|
-
|
1537
|
-
const checkbox = item.querySelector('input');
|
1538
|
-
assert.instanceOf(checkbox, HTMLInputElement);
|
1539
|
-
const {checked} = checkbox;
|
1540
|
-
|
1541
|
-
const controller = Sources.BreakpointsView.BreakpointsSidebarController.instance();
|
1542
|
-
const setPauseOnUncaughtExceptions = sinon.stub(controller, 'setPauseOnUncaughtExceptions');
|
1543
|
-
|
1544
|
-
checkbox.click();
|
1545
|
-
|
1546
|
-
assert.isTrue(setPauseOnUncaughtExceptions.calledOnceWith(!checked));
|
1547
|
-
});
|
1548
|
-
});
|
1549
|
-
|
1550
|
-
describe('navigating with keyboard', () => {
|
1551
|
-
// One expanded group with 2 breakpoints, and one collapsed with 2 breakpoints.
|
1552
|
-
async function renderBreakpointsForKeyboardNavigation(): Promise<{
|
1553
|
-
component: Sources.BreakpointsView.BreakpointsView,
|
1554
|
-
data: Sources.BreakpointsView.BreakpointsViewData,
|
1555
|
-
}> {
|
1556
|
-
const component = await createAndInitializeBreakpointsView();
|
1557
|
-
|
1558
|
-
const data: Sources.BreakpointsView.BreakpointsViewData = {
|
1559
|
-
breakpointsActive: true,
|
1560
|
-
pauseOnUncaughtExceptions: false,
|
1561
|
-
pauseOnCaughtExceptions: false,
|
1562
|
-
groups: [
|
1563
|
-
{
|
1564
|
-
name: 'test1.js',
|
1565
|
-
url: urlString`https://google.com/test1.js`,
|
1566
|
-
editable: false,
|
1567
|
-
expanded: true,
|
1568
|
-
breakpointItems: [
|
1569
|
-
{
|
1570
|
-
id: '1',
|
1571
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1572
|
-
location: '234',
|
1573
|
-
codeSnippet: 'const a = x;',
|
1574
|
-
isHit: false,
|
1575
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
1576
|
-
},
|
1577
|
-
{
|
1578
|
-
id: '2',
|
1579
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1580
|
-
location: '3:3',
|
1581
|
-
codeSnippet: 'if (x > a) {',
|
1582
|
-
isHit: true,
|
1583
|
-
status: Sources.BreakpointsView.BreakpointStatus.DISABLED,
|
1584
|
-
},
|
1585
|
-
],
|
1586
|
-
},
|
1587
|
-
{
|
1588
|
-
name: 'test2.js',
|
1589
|
-
url: urlString`https://google.com/test2.js`,
|
1590
|
-
editable: false,
|
1591
|
-
expanded: false,
|
1592
|
-
breakpointItems: [
|
1593
|
-
{
|
1594
|
-
id: '3',
|
1595
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1596
|
-
location: '11',
|
1597
|
-
codeSnippet: 'const y;',
|
1598
|
-
isHit: false,
|
1599
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
1600
|
-
},
|
1601
|
-
{
|
1602
|
-
id: '4',
|
1603
|
-
type: SDK.DebuggerModel.BreakpointType.REGULAR_BREAKPOINT,
|
1604
|
-
location: '12',
|
1605
|
-
codeSnippet: 'const y;',
|
1606
|
-
isHit: false,
|
1607
|
-
status: Sources.BreakpointsView.BreakpointStatus.ENABLED,
|
1608
|
-
},
|
1609
|
-
],
|
1610
|
-
},
|
1611
|
-
],
|
1612
|
-
};
|
1613
|
-
component.data = data;
|
1614
|
-
await RenderCoordinator.done();
|
1615
|
-
await component.updateComplete;
|
1616
|
-
return {component, data};
|
1617
|
-
}
|
1618
|
-
|
1619
|
-
it('pause on exceptions is tabbable', async () => {
|
1620
|
-
const component = await renderNoBreakpoints({pauseOnUncaughtExceptions: true, pauseOnCaughtExceptions: false});
|
1621
|
-
assert.isNotNull(component.contentElement);
|
1622
|
-
|
1623
|
-
const focusableElements = component.contentElement.querySelectorAll(TABBABLE_SELECTOR);
|
1624
|
-
assert.lengthOf(focusableElements, 1);
|
1625
|
-
|
1626
|
-
const pauseOnUncaughtExceptions = component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1627
|
-
assert.deepEqual(focusableElements[0], pauseOnUncaughtExceptions);
|
1628
|
-
});
|
1629
|
-
|
1630
|
-
describe('pressing the HOME key', () => {
|
1631
|
-
it('takes the user to the pause-on-exceptions line', async () => {
|
1632
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1633
|
-
assert.isNotNull(component.contentElement);
|
1634
|
-
const secondGroupsSummary =
|
1635
|
-
component.contentElement.querySelector(`${DETAILS_SELECTOR}:nth-of-type(2) > ${SUMMARY_SELECTOR}`);
|
1636
|
-
assert.instanceOf(secondGroupsSummary, HTMLElement);
|
1637
|
-
|
1638
|
-
// Focus on second group by clicking on it, then press Home button.
|
1639
|
-
dispatchClickEvent(secondGroupsSummary);
|
1640
|
-
dispatchKeyDownEvent(secondGroupsSummary, {key: 'Home', bubbles: true});
|
1641
|
-
await RenderCoordinator.done();
|
1642
|
-
|
1643
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1644
|
-
assert.instanceOf(selected, HTMLElement);
|
1645
|
-
const pauseOnUncaughtExceptions = component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1646
|
-
assert.instanceOf(pauseOnUncaughtExceptions, HTMLElement);
|
1647
|
-
assert.strictEqual(selected, pauseOnUncaughtExceptions);
|
1648
|
-
});
|
1649
|
-
});
|
1650
|
-
|
1651
|
-
describe('pressing the END key', () => {
|
1652
|
-
it('takes the user to the summary node of the last group (if last group is collapsed)', async () => {
|
1653
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1654
|
-
assert.isNotNull(component.contentElement);
|
1655
|
-
const pauseOnUncaughtExceptions = component.contentElement.querySelector(PAUSE_ON_UNCAUGHT_EXCEPTIONS_SELECTOR);
|
1656
|
-
assert.instanceOf(pauseOnUncaughtExceptions, HTMLElement);
|
1657
|
-
|
1658
|
-
// Focus on the pause-on-exceptions line by clicking on it, then press End key.
|
1659
|
-
dispatchClickEvent(pauseOnUncaughtExceptions);
|
1660
|
-
dispatchKeyDownEvent(pauseOnUncaughtExceptions, {key: 'End', bubbles: true});
|
1661
|
-
await RenderCoordinator.done();
|
1662
|
-
|
1663
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1664
|
-
assert.instanceOf(selected, HTMLElement);
|
1665
|
-
|
1666
|
-
const lastGroupSummary =
|
1667
|
-
component.contentElement.querySelector(`${DETAILS_SELECTOR}:nth-of-type(2) > ${SUMMARY_SELECTOR}`);
|
1668
|
-
assert.instanceOf(lastGroupSummary, HTMLElement);
|
1669
|
-
assert.strictEqual(selected, lastGroupSummary);
|
1670
|
-
});
|
1671
|
-
|
1672
|
-
it('takes the user to the last breakpoint item (if last group is expanded))', async () => {
|
1673
|
-
const {component, data} = await renderBreakpointsForKeyboardNavigation();
|
1674
|
-
// Expand the last group.
|
1675
|
-
data.groups[1].expanded = true;
|
1676
|
-
component.data = data;
|
1677
|
-
await RenderCoordinator.done();
|
1678
|
-
|
1679
|
-
assert.isNotNull(component.contentElement);
|
1680
|
-
const firstGroupSummary = component.contentElement.querySelector(SUMMARY_SELECTOR);
|
1681
|
-
assert.instanceOf(firstGroupSummary, HTMLElement);
|
1682
|
-
|
1683
|
-
// First focus on the first group by clicking on it, then press the End button.
|
1684
|
-
dispatchClickEvent(firstGroupSummary);
|
1685
|
-
dispatchKeyDownEvent(firstGroupSummary, {key: 'End', bubbles: true});
|
1686
|
-
await RenderCoordinator.done();
|
1687
|
-
|
1688
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1689
|
-
assert.instanceOf(selected, HTMLElement);
|
1690
|
-
|
1691
|
-
const breakpointItems = component.contentElement.querySelectorAll(BREAKPOINT_ITEM_SELECTOR);
|
1692
|
-
assertElements(breakpointItems, HTMLDivElement);
|
1693
|
-
|
1694
|
-
const lastBreakpointItem = breakpointItems.item(breakpointItems.length - 1);
|
1695
|
-
assert.strictEqual(selected, lastBreakpointItem);
|
1696
|
-
});
|
1697
|
-
});
|
1698
|
-
|
1699
|
-
describe('pressing the ArrowDown key', () => {
|
1700
|
-
it('on the pause-on-uncaught-exception takes the user to the summary node of the top most details element',
|
1701
|
-
async () => {
|
1702
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1703
|
-
assert.isNotNull(component.contentElement);
|
1704
|
-
|
1705
|
-
const pauseOnCaughtException = component.contentElement.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1706
|
-
assert.instanceOf(pauseOnCaughtException, HTMLElement);
|
1707
|
-
|
1708
|
-
// Focus on the pause on exception, and navigate one down.
|
1709
|
-
dispatchClickEvent(pauseOnCaughtException);
|
1710
|
-
dispatchKeyDownEvent(pauseOnCaughtException, {key: 'ArrowDown', bubbles: true});
|
1711
|
-
await RenderCoordinator.done();
|
1712
|
-
|
1713
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1714
|
-
const firstSummary = component.contentElement.querySelector(`${DETAILS_SELECTOR} > ${SUMMARY_SELECTOR}`);
|
1715
|
-
assert.instanceOf(firstSummary, HTMLElement);
|
1716
|
-
assert.strictEqual(selected, firstSummary);
|
1717
|
-
});
|
1718
|
-
|
1719
|
-
it('on the summary node of an expanded group takes the user to the top most breakpoint item of that group',
|
1720
|
-
async () => {
|
1721
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1722
|
-
assert.isNotNull(component.contentElement);
|
1723
|
-
const collapsedDetailsElement = component.contentElement.querySelector(COLLAPSED_GROUPS_SELECTOR);
|
1724
|
-
assert.instanceOf(collapsedDetailsElement, HTMLDetailsElement);
|
1725
|
-
|
1726
|
-
const collapsedGroupSummary = collapsedDetailsElement.querySelector(SUMMARY_SELECTOR);
|
1727
|
-
assert.instanceOf(collapsedGroupSummary, HTMLElement);
|
1728
|
-
|
1729
|
-
// Focus on the collapsed group and collapse it by clicking on it. Then navigate down.
|
1730
|
-
dispatchClickEvent(collapsedGroupSummary);
|
1731
|
-
dispatchKeyDownEvent(collapsedGroupSummary, {key: 'ArrowDown', bubbles: true});
|
1732
|
-
await RenderCoordinator.done();
|
1733
|
-
|
1734
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1735
|
-
assert.instanceOf(selected, HTMLElement);
|
1736
|
-
|
1737
|
-
const firstBreakpointItem = collapsedDetailsElement.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1738
|
-
assert.instanceOf(firstBreakpointItem, HTMLDivElement);
|
1739
|
-
|
1740
|
-
assert.strictEqual(selected, firstBreakpointItem);
|
1741
|
-
});
|
1742
|
-
|
1743
|
-
it('on the summary node of a collapsed group takes the user to the summary node of the next group', async () => {
|
1744
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1745
|
-
assert.isNotNull(component.contentElement);
|
1746
|
-
|
1747
|
-
const firstGroupSummary =
|
1748
|
-
component.contentElement.querySelector(`${DETAILS_SELECTOR}:nth-of-type(1) > ${SUMMARY_SELECTOR}`);
|
1749
|
-
assert.instanceOf(firstGroupSummary, HTMLElement);
|
1750
|
-
|
1751
|
-
// Focus on the expanded group and collapse it by clicking on it. Then navigate down.
|
1752
|
-
dispatchClickEvent(firstGroupSummary);
|
1753
|
-
dispatchKeyDownEvent(firstGroupSummary, {key: 'ArrowDown', bubbles: true});
|
1754
|
-
await RenderCoordinator.done();
|
1755
|
-
|
1756
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1757
|
-
assert.instanceOf(selected, HTMLElement);
|
1758
|
-
|
1759
|
-
const secondGroupSummary =
|
1760
|
-
component.contentElement.querySelector(`${DETAILS_SELECTOR}:nth-of-type(2) > ${SUMMARY_SELECTOR}`);
|
1761
|
-
assert.instanceOf(secondGroupSummary, HTMLElement);
|
1762
|
-
assert.strictEqual(selected, secondGroupSummary);
|
1763
|
-
});
|
1764
|
-
|
1765
|
-
it('on a breakpoint item takes the user to the next breakpoint item', async () => {
|
1766
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1767
|
-
assert.isNotNull(component.contentElement);
|
1768
|
-
|
1769
|
-
const firstDetailsElement = component.contentElement.querySelector('details');
|
1770
|
-
assert.instanceOf(firstDetailsElement, HTMLDetailsElement);
|
1771
|
-
const firstBreakpointItem = firstDetailsElement.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1772
|
-
assert.instanceOf(firstBreakpointItem, HTMLDivElement);
|
1773
|
-
|
1774
|
-
// Focus on the first breakpoint item. Then navigate up.
|
1775
|
-
dispatchClickEvent(firstBreakpointItem);
|
1776
|
-
dispatchKeyDownEvent(firstBreakpointItem, {key: 'ArrowDown', bubbles: true});
|
1777
|
-
await RenderCoordinator.done();
|
1778
|
-
|
1779
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1780
|
-
assert.instanceOf(selected, HTMLElement);
|
1781
|
-
|
1782
|
-
const secondBreakpointItem = firstDetailsElement.querySelector(`${BREAKPOINT_ITEM_SELECTOR}:nth-of-type(2)`);
|
1783
|
-
assert.instanceOf(secondBreakpointItem, HTMLDivElement);
|
1784
|
-
|
1785
|
-
assert.strictEqual(selected, secondBreakpointItem);
|
1786
|
-
});
|
1787
|
-
});
|
1788
|
-
|
1789
|
-
describe('pressing the ArrowUp key', () => {
|
1790
|
-
it('on the first summary takes a user to the pause on exceptions', async () => {
|
1791
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1792
|
-
assert.isNotNull(component.contentElement);
|
1793
|
-
const firstSummary = component.contentElement.querySelector(`${DETAILS_SELECTOR} > ${SUMMARY_SELECTOR}`);
|
1794
|
-
assert.instanceOf(firstSummary, HTMLElement);
|
1795
|
-
|
1796
|
-
// Focus on the summary element.
|
1797
|
-
dispatchClickEvent(firstSummary);
|
1798
|
-
dispatchKeyDownEvent(firstSummary, {key: 'ArrowUp', bubbles: true});
|
1799
|
-
await RenderCoordinator.done();
|
1800
|
-
|
1801
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1802
|
-
const pauseOnUncaughtExceptions = component.contentElement.querySelector(PAUSE_ON_CAUGHT_EXCEPTIONS_SELECTOR);
|
1803
|
-
assert.instanceOf(pauseOnUncaughtExceptions, HTMLDivElement);
|
1804
|
-
|
1805
|
-
assert.strictEqual(selected, pauseOnUncaughtExceptions);
|
1806
|
-
});
|
1807
|
-
|
1808
|
-
it('on the first breakpoint item in an expanded group takes the user to the summary node', async () => {
|
1809
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1810
|
-
assert.isNotNull(component.contentElement);
|
1811
|
-
const expandedDetails = component.contentElement.querySelector(EXPANDED_GROUPS_SELECTOR);
|
1812
|
-
assert.instanceOf(expandedDetails, HTMLDetailsElement);
|
1813
|
-
|
1814
|
-
const firstBreakpointItem = expandedDetails.querySelector(BREAKPOINT_ITEM_SELECTOR);
|
1815
|
-
assert.instanceOf(firstBreakpointItem, HTMLDivElement);
|
1816
|
-
|
1817
|
-
// Focus on first breakpoint item. Then navigate up.
|
1818
|
-
dispatchClickEvent(firstBreakpointItem);
|
1819
|
-
dispatchKeyDownEvent(firstBreakpointItem, {key: 'ArrowUp', bubbles: true});
|
1820
|
-
await RenderCoordinator.done();
|
1821
|
-
|
1822
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1823
|
-
assert.instanceOf(selected, HTMLElement);
|
1824
|
-
|
1825
|
-
const summary = expandedDetails.querySelector(SUMMARY_SELECTOR);
|
1826
|
-
assert.instanceOf(summary, HTMLElement);
|
1827
|
-
|
1828
|
-
assert.strictEqual(selected, summary);
|
1829
|
-
});
|
1830
|
-
|
1831
|
-
it('on a breakpoint item in an expanded group takes the user to the previous breakpoint item', async () => {
|
1832
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1833
|
-
assert.isNotNull(component.contentElement);
|
1834
|
-
const expandedDetails = component.contentElement.querySelector(EXPANDED_GROUPS_SELECTOR);
|
1835
|
-
assert.instanceOf(expandedDetails, HTMLDetailsElement);
|
1836
|
-
|
1837
|
-
const breakpointItems = expandedDetails.querySelectorAll(BREAKPOINT_ITEM_SELECTOR);
|
1838
|
-
assert.isAbove(breakpointItems.length, 1);
|
1839
|
-
|
1840
|
-
const lastBreakpointItem = breakpointItems.item(breakpointItems.length - 1);
|
1841
|
-
// Focus on last breakpoint item. Then navigate up.
|
1842
|
-
dispatchClickEvent(lastBreakpointItem);
|
1843
|
-
dispatchKeyDownEvent(lastBreakpointItem, {key: 'ArrowUp', bubbles: true});
|
1844
|
-
await RenderCoordinator.done();
|
1845
|
-
|
1846
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1847
|
-
assert.instanceOf(selected, HTMLElement);
|
1848
|
-
|
1849
|
-
const nextToLastBreakpointItem = breakpointItems.item(breakpointItems.length - 2);
|
1850
|
-
assert.instanceOf(nextToLastBreakpointItem, HTMLDivElement);
|
1851
|
-
assert.strictEqual(selected, nextToLastBreakpointItem);
|
1852
|
-
});
|
1853
|
-
|
1854
|
-
it('on a summary node takes the user to the last breakpoint item of the previous group', async () => {
|
1855
|
-
const {component} = await renderBreakpointsForKeyboardNavigation();
|
1856
|
-
assert.isNotNull(component.contentElement);
|
1857
|
-
const secondGroupSummary =
|
1858
|
-
component.contentElement.querySelector(`${DETAILS_SELECTOR}:nth-of-type(2) > ${SUMMARY_SELECTOR}`);
|
1859
|
-
assert.instanceOf(secondGroupSummary, HTMLElement);
|
1860
|
-
|
1861
|
-
// Focus on the group. Then navigate up.
|
1862
|
-
dispatchClickEvent(secondGroupSummary);
|
1863
|
-
dispatchKeyDownEvent(secondGroupSummary, {key: 'ArrowUp', bubbles: true});
|
1864
|
-
await RenderCoordinator.done();
|
1865
|
-
|
1866
|
-
const selected = component.contentElement.querySelector(TABBABLE_SELECTOR);
|
1867
|
-
assert.instanceOf(selected, HTMLElement);
|
1868
|
-
|
1869
|
-
const firstDetailsElement = component.contentElement.querySelector(DETAILS_SELECTOR);
|
1870
|
-
assert.exists(firstDetailsElement);
|
1871
|
-
const lastBreakpointItem = firstDetailsElement.querySelector(`${BREAKPOINT_ITEM_SELECTOR}:last-child`);
|
1872
|
-
assert.instanceOf(lastBreakpointItem, HTMLDivElement);
|
1873
|
-
|
1874
|
-
assert.strictEqual(selected, lastBreakpointItem);
|
1875
|
-
});
|
1876
|
-
});
|
1877
|
-
});
|
1878
|
-
});
|