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,1919 +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 type {Chrome} from '../../../extension-api/ExtensionAPI.js';
|
6
|
-
import * as Common from '../../core/common/common.js';
|
7
|
-
import * as Platform from '../../core/platform/platform.js';
|
8
|
-
import * as Root from '../../core/root/root.js';
|
9
|
-
import * as SDK from '../../core/sdk/sdk.js';
|
10
|
-
import * as Protocol from '../../generated/protocol.js';
|
11
|
-
import {createTarget, expectConsoleLogs} from '../../testing/EnvironmentHelpers.js';
|
12
|
-
import {TestPlugin} from '../../testing/LanguagePluginHelpers.js';
|
13
|
-
import {
|
14
|
-
clearMockConnectionResponseHandler,
|
15
|
-
describeWithMockConnection,
|
16
|
-
dispatchEvent,
|
17
|
-
registerListenerOnOutgoingMessage,
|
18
|
-
setMockConnectionResponseHandler,
|
19
|
-
} from '../../testing/MockConnection.js';
|
20
|
-
import {MockProtocolBackend} from '../../testing/MockScopeChain.js';
|
21
|
-
import {createFileSystemFileForPersistenceTests} from '../../testing/PersistenceHelpers.js';
|
22
|
-
import {getInitializedResourceTreeModel} from '../../testing/ResourceTreeHelpers.js';
|
23
|
-
import {encodeSourceMap} from '../../testing/SourceMapEncoder.js';
|
24
|
-
import {setupPageResourceLoaderForSourceMap} from '../../testing/SourceMapHelpers.js';
|
25
|
-
import {
|
26
|
-
createContentProviderUISourceCode,
|
27
|
-
} from '../../testing/UISourceCodeHelpers.js';
|
28
|
-
import * as Bindings from '../bindings/bindings.js';
|
29
|
-
import * as Breakpoints from '../breakpoints/breakpoints.js';
|
30
|
-
import * as Persistence from '../persistence/persistence.js';
|
31
|
-
import * as TextUtils from '../text_utils/text_utils.js';
|
32
|
-
import * as Workspace from '../workspace/workspace.js';
|
33
|
-
|
34
|
-
const {urlString} = Platform.DevToolsPath;
|
35
|
-
|
36
|
-
describeWithMockConnection('BreakpointManager', () => {
|
37
|
-
const URL_HTML = urlString`http://site/index.html`;
|
38
|
-
const INLINE_SCRIPT_START = 41;
|
39
|
-
const BREAKPOINT_SCRIPT_LINE = 1;
|
40
|
-
const INLINE_BREAKPOINT_RAW_LINE = BREAKPOINT_SCRIPT_LINE + INLINE_SCRIPT_START;
|
41
|
-
const BREAKPOINT_RESULT_COLUMN = 5;
|
42
|
-
const inlineScriptDescription = {
|
43
|
-
url: URL_HTML,
|
44
|
-
content: 'console.log(1);\nconsole.log(2);\n',
|
45
|
-
startLine: INLINE_SCRIPT_START,
|
46
|
-
startColumn: 0,
|
47
|
-
hasSourceURL: false,
|
48
|
-
embedderName: URL_HTML,
|
49
|
-
};
|
50
|
-
|
51
|
-
const URL = urlString`http://site/script.js`;
|
52
|
-
const scriptDescription = {
|
53
|
-
url: URL,
|
54
|
-
content: 'console.log(1);\nconsole.log(2);\n',
|
55
|
-
startLine: 0,
|
56
|
-
startColumn: 0,
|
57
|
-
hasSourceURL: false,
|
58
|
-
};
|
59
|
-
|
60
|
-
const DEFAULT_BREAKPOINT:
|
61
|
-
[Breakpoints.BreakpointManager.UserCondition, boolean, boolean, Breakpoints.BreakpointManager.BreakpointOrigin] =
|
62
|
-
[
|
63
|
-
Breakpoints.BreakpointManager.EMPTY_BREAKPOINT_CONDITION,
|
64
|
-
true, // enabled
|
65
|
-
false, // isLogpoint
|
66
|
-
Breakpoints.BreakpointManager.BreakpointOrigin.OTHER,
|
67
|
-
];
|
68
|
-
|
69
|
-
// For tests with source maps.
|
70
|
-
const ORIGINAL_SCRIPT_SOURCES_CONTENT = 'function foo() {\n console.log(\'Hello\');\n}\n';
|
71
|
-
const COMPILED_SCRIPT_SOURCES_CONTENT = 'function foo(){console.log("Hello")}';
|
72
|
-
const SOURCE_MAP_URL = urlString`https://site/script.js.map`;
|
73
|
-
const ORIGINAL_SCRIPT_SOURCE_URL = urlString`https://site/original-script.js`;
|
74
|
-
|
75
|
-
// Created with `terser -m -o script.min.js --source-map "includeSources;url=script.min.js.map" original-script.js`
|
76
|
-
const sourceMapContent = JSON.stringify({
|
77
|
-
version: 3,
|
78
|
-
names: ['foo', 'console', 'log'],
|
79
|
-
sources: ['/original-script.js'],
|
80
|
-
sourcesContent: [ORIGINAL_SCRIPT_SOURCES_CONTENT],
|
81
|
-
mappings: 'AAAA,SAASA,MACPC,QAAQC,IAAI,QACd',
|
82
|
-
});
|
83
|
-
|
84
|
-
let target: SDK.Target.Target;
|
85
|
-
let backend: MockProtocolBackend;
|
86
|
-
let breakpointManager: Breakpoints.BreakpointManager.BreakpointManager;
|
87
|
-
let debuggerWorkspaceBinding: Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding;
|
88
|
-
let targetManager: SDK.TargetManager.TargetManager;
|
89
|
-
let workspace: Workspace.Workspace.WorkspaceImpl;
|
90
|
-
beforeEach(async () => {
|
91
|
-
workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
92
|
-
targetManager = SDK.TargetManager.TargetManager.instance();
|
93
|
-
const resourceMapping = new Bindings.ResourceMapping.ResourceMapping(targetManager, workspace);
|
94
|
-
const ignoreListManager = Workspace.IgnoreListManager.IgnoreListManager.instance({forceNew: true});
|
95
|
-
debuggerWorkspaceBinding = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance({
|
96
|
-
forceNew: true,
|
97
|
-
resourceMapping,
|
98
|
-
targetManager,
|
99
|
-
ignoreListManager,
|
100
|
-
});
|
101
|
-
backend = new MockProtocolBackend();
|
102
|
-
target = createTarget();
|
103
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
104
|
-
|
105
|
-
// Wait for the resource tree model to load; otherwise, our uiSourceCodes could be asynchronously
|
106
|
-
// invalidated during the test.
|
107
|
-
await getInitializedResourceTreeModel(target);
|
108
|
-
|
109
|
-
breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance(
|
110
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
111
|
-
});
|
112
|
-
|
113
|
-
async function uiSourceCodeFromScript(debuggerModel: SDK.DebuggerModel.DebuggerModel, script: SDK.Script.Script):
|
114
|
-
Promise<Workspace.UISourceCode.UISourceCode|null> {
|
115
|
-
const rawLocation = debuggerModel.createRawLocation(script, 0, 0);
|
116
|
-
const uiLocation = await breakpointManager.debuggerWorkspaceBinding.rawLocationToUILocation(rawLocation);
|
117
|
-
return uiLocation?.uiSourceCode ?? null;
|
118
|
-
}
|
119
|
-
|
120
|
-
describe('possibleBreakpoints', () => {
|
121
|
-
it('correctly asks the back-end for breakable positions', async () => {
|
122
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
123
|
-
assert.exists(debuggerModel);
|
124
|
-
|
125
|
-
// Create an inline script and get a UI source code instance for it.
|
126
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
127
|
-
const {scriptId} = script;
|
128
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
129
|
-
assert.exists(uiSourceCode);
|
130
|
-
|
131
|
-
function getPossibleBreakpointsStub(_request: Protocol.Debugger.GetPossibleBreakpointsRequest):
|
132
|
-
Protocol.Debugger.GetPossibleBreakpointsResponse {
|
133
|
-
return {
|
134
|
-
locations: [
|
135
|
-
{scriptId, lineNumber: 0, columnNumber: 4},
|
136
|
-
{scriptId, lineNumber: 0, columnNumber: 8},
|
137
|
-
],
|
138
|
-
getError() {
|
139
|
-
return undefined;
|
140
|
-
},
|
141
|
-
};
|
142
|
-
}
|
143
|
-
const getPossibleBreakpoints = sinon.spy(getPossibleBreakpointsStub);
|
144
|
-
setMockConnectionResponseHandler('Debugger.getPossibleBreakpoints', getPossibleBreakpoints);
|
145
|
-
|
146
|
-
const uiTextRange = new TextUtils.TextRange.TextRange(0, 0, 1, 0);
|
147
|
-
const possibleBreakpoints = await breakpointManager.possibleBreakpoints(uiSourceCode, uiTextRange);
|
148
|
-
|
149
|
-
assert.lengthOf(possibleBreakpoints, 2);
|
150
|
-
assert.strictEqual(possibleBreakpoints[0].uiSourceCode, uiSourceCode);
|
151
|
-
assert.strictEqual(possibleBreakpoints[0].lineNumber, 0);
|
152
|
-
assert.strictEqual(possibleBreakpoints[0].columnNumber, 4);
|
153
|
-
assert.strictEqual(possibleBreakpoints[1].uiSourceCode, uiSourceCode);
|
154
|
-
assert.strictEqual(possibleBreakpoints[1].lineNumber, 0);
|
155
|
-
assert.strictEqual(possibleBreakpoints[1].columnNumber, 8);
|
156
|
-
assert.isTrue(getPossibleBreakpoints.calledOnceWith(sinon.match({
|
157
|
-
start: {
|
158
|
-
scriptId,
|
159
|
-
lineNumber: 0,
|
160
|
-
columnNumber: 0,
|
161
|
-
},
|
162
|
-
end: {
|
163
|
-
scriptId,
|
164
|
-
lineNumber: 1,
|
165
|
-
columnNumber: 0,
|
166
|
-
},
|
167
|
-
restrictToFunction: false,
|
168
|
-
})));
|
169
|
-
});
|
170
|
-
});
|
171
|
-
|
172
|
-
describe('Breakpoints', () => {
|
173
|
-
it('are removed and kept in storage after a back-end error', async () => {
|
174
|
-
// Simulates a back-end error.
|
175
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
176
|
-
assert.exists(debuggerModel);
|
177
|
-
|
178
|
-
if (!debuggerModel.isReadyToPause()) {
|
179
|
-
await debuggerModel.once(SDK.DebuggerModel.Events.DebuggerIsReadyToPause);
|
180
|
-
}
|
181
|
-
|
182
|
-
// Create an inline script and get a UI source code instance for it.
|
183
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
184
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
185
|
-
assert.exists(uiSourceCode);
|
186
|
-
|
187
|
-
// Set up the backend to respond with an error.
|
188
|
-
backend.setBreakpointByUrlToFail(URL, BREAKPOINT_SCRIPT_LINE);
|
189
|
-
|
190
|
-
// Set the breakpoint.
|
191
|
-
const breakpoint =
|
192
|
-
await breakpointManager.setBreakpoint(uiSourceCode, BREAKPOINT_SCRIPT_LINE, 2, ...DEFAULT_BREAKPOINT);
|
193
|
-
assert.exists(breakpoint);
|
194
|
-
|
195
|
-
const removedSpy = sinon.spy(breakpoint, 'remove');
|
196
|
-
await breakpoint.updateBreakpoint();
|
197
|
-
|
198
|
-
// Breakpoint was removed and is kept in storage.
|
199
|
-
assert.isTrue(breakpoint.getIsRemoved());
|
200
|
-
sinon.assert.calledWith(removedSpy, true);
|
201
|
-
});
|
202
|
-
|
203
|
-
it('are only set if the uiSourceCode is still valid (not removed)', async () => {
|
204
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
205
|
-
assert.exists(debuggerModel);
|
206
|
-
|
207
|
-
// Add a script.
|
208
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
209
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
210
|
-
assert.exists(uiSourceCode);
|
211
|
-
|
212
|
-
// Remove the project (and thus the uiSourceCode).
|
213
|
-
Workspace.Workspace.WorkspaceImpl.instance().removeProject(uiSourceCode.project());
|
214
|
-
|
215
|
-
// Set the breakpoint.
|
216
|
-
const breakpoint =
|
217
|
-
await breakpointManager.setBreakpoint(uiSourceCode, BREAKPOINT_SCRIPT_LINE, 2, ...DEFAULT_BREAKPOINT);
|
218
|
-
|
219
|
-
// We should not expect any breakpoints to be set.
|
220
|
-
assert.isUndefined(breakpoint);
|
221
|
-
const breakLocations = breakpointManager.allBreakpointLocations();
|
222
|
-
assert.lengthOf(breakLocations, 0);
|
223
|
-
});
|
224
|
-
});
|
225
|
-
|
226
|
-
describe('Breakpoint#backendCondition()', () => {
|
227
|
-
function createBreakpoint(condition: string, isLogpoint: boolean): Breakpoints.BreakpointManager.Breakpoint {
|
228
|
-
const {uiSourceCode} = createContentProviderUISourceCode({url: URL, mimeType: 'text/javascript'});
|
229
|
-
const storageState = {
|
230
|
-
url: URL,
|
231
|
-
resourceTypeName: uiSourceCode.contentType().name(),
|
232
|
-
lineNumber: 5,
|
233
|
-
condition: condition as Breakpoints.BreakpointManager.UserCondition,
|
234
|
-
enabled: true,
|
235
|
-
isLogpoint,
|
236
|
-
};
|
237
|
-
return new Breakpoints.BreakpointManager.Breakpoint(
|
238
|
-
breakpointManager, uiSourceCode, storageState, Breakpoints.BreakpointManager.BreakpointOrigin.USER_ACTION);
|
239
|
-
}
|
240
|
-
|
241
|
-
expectConsoleLogs({
|
242
|
-
error: [
|
243
|
-
'Unexpected setBreakpointByUrl request [object Object]',
|
244
|
-
],
|
245
|
-
});
|
246
|
-
|
247
|
-
it('wraps logpoints in console.log', () => {
|
248
|
-
const breakpoint = createBreakpoint('x', /* isLogpoint */ true);
|
249
|
-
|
250
|
-
assert.include(breakpoint.backendCondition(), 'console.log(x)');
|
251
|
-
});
|
252
|
-
|
253
|
-
it('leaves conditional breakpoints alone', () => {
|
254
|
-
const breakpoint = createBreakpoint('x === 42', /* isLogpoint */ false);
|
255
|
-
|
256
|
-
// Split of sourceURL.
|
257
|
-
const lines = breakpoint.backendCondition().split('\n');
|
258
|
-
assert.strictEqual(lines[0], 'x === 42');
|
259
|
-
});
|
260
|
-
|
261
|
-
it('has a sourceURL for logpoints', () => {
|
262
|
-
const breakpoint = createBreakpoint('x', /* isLogpoint */ true);
|
263
|
-
|
264
|
-
assert.include(breakpoint.backendCondition(), '//# sourceURL=');
|
265
|
-
});
|
266
|
-
|
267
|
-
it('has a sourceURL for conditional breakpoints', () => {
|
268
|
-
const breakpoint = createBreakpoint('x === 42', /* isLogpoint */ false);
|
269
|
-
|
270
|
-
assert.include(breakpoint.backendCondition(), '//# sourceURL=');
|
271
|
-
});
|
272
|
-
|
273
|
-
it('has no sourceURL for normal breakpoints', () => {
|
274
|
-
const breakpoint = createBreakpoint('', /* isLogpoint */ false);
|
275
|
-
|
276
|
-
assert.notInclude(breakpoint.backendCondition(), '//# sourceURL=');
|
277
|
-
});
|
278
|
-
|
279
|
-
it('substitutes source-mapped variables', async () => {
|
280
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
281
|
-
assert.exists(debuggerModel);
|
282
|
-
|
283
|
-
const scriptInfo = {url: URL, content: 'function adder(n,r){const t=n+r;return t}'};
|
284
|
-
// Created with `terser -m -o script.min.js --source-map "includeSources;url=script.min.js.map" original-script.js`
|
285
|
-
const sourceMapContent = JSON.stringify({
|
286
|
-
version: 3,
|
287
|
-
names: ['adder', 'param1', 'param2', 'result'],
|
288
|
-
sources: ['/original-script.js'],
|
289
|
-
sourcesContent:
|
290
|
-
['function adder(param1, param2) {\n const result = param1 + param2;\n return result;\n}\n\n'],
|
291
|
-
mappings: 'AAAA,SAASA,MAAMC,EAAQC,GACrB,MAAMC,EAASF,EAASC,EACxB,OAAOC,CACT',
|
292
|
-
});
|
293
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent};
|
294
|
-
const script = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
295
|
-
|
296
|
-
// Get the uiSourceCode for the original source.
|
297
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
298
|
-
debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, script.isContentScript());
|
299
|
-
assert.exists(uiSourceCode);
|
300
|
-
|
301
|
-
// Mock out "Debugger.setBreakpointByUrl and just echo back the request".
|
302
|
-
const cdpSetBreakpointPromise = new Promise<Protocol.Debugger.SetBreakpointByUrlRequest>(res => {
|
303
|
-
clearMockConnectionResponseHandler('Debugger.setBreakpointByUrl');
|
304
|
-
setMockConnectionResponseHandler('Debugger.setBreakpointByUrl', request => {
|
305
|
-
res(request);
|
306
|
-
return {};
|
307
|
-
});
|
308
|
-
});
|
309
|
-
|
310
|
-
// Set the breakpoint on the `const result = ...` line with a condition using
|
311
|
-
// "authored" variable names.
|
312
|
-
const breakpoint = await breakpointManager.setBreakpoint(
|
313
|
-
uiSourceCode, 1, 0, 'param1 > 0' as Breakpoints.BreakpointManager.UserCondition, /* enabled */ true,
|
314
|
-
/* isLogpoint */ false, Breakpoints.BreakpointManager.BreakpointOrigin.USER_ACTION);
|
315
|
-
assert.exists(breakpoint);
|
316
|
-
|
317
|
-
await breakpoint.updateBreakpoint();
|
318
|
-
|
319
|
-
const {url, lineNumber, columnNumber, condition} = await cdpSetBreakpointPromise;
|
320
|
-
assert.strictEqual(url, URL);
|
321
|
-
assert.strictEqual(lineNumber, 0);
|
322
|
-
assert.strictEqual(columnNumber, 20);
|
323
|
-
assert.strictEqual(condition, 'n > 0\n\n//# sourceURL=debugger://breakpoint');
|
324
|
-
});
|
325
|
-
});
|
326
|
-
|
327
|
-
it('substitutes source-mapped variables for the same original script in different bundles correctly', async () => {
|
328
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
329
|
-
assert.exists(debuggerModel);
|
330
|
-
|
331
|
-
// Create two 'bundles' that are identical modulo variable names.
|
332
|
-
const url1 = urlString`http://site/script1.js`;
|
333
|
-
const url2 = urlString`http://site/script2.js`;
|
334
|
-
const scriptInfo1 = {url: url1, content: 'function adder(n,r){const t=n+r;return t}'};
|
335
|
-
const scriptInfo2 = {url: url2, content: 'function adder(o,p){const t=o+p;return t}'};
|
336
|
-
|
337
|
-
// The source map is the same for both 'bundles'.
|
338
|
-
// Created with `terser -m -o script.min.js --source-map "includeSources;url=script.min.js.map" original-script.js`
|
339
|
-
const sourceMapContent = JSON.stringify({
|
340
|
-
version: 3,
|
341
|
-
names: ['adder', 'param1', 'param2', 'result'],
|
342
|
-
sources: ['/original-script.js'],
|
343
|
-
sourcesContent: ['function adder(param1, param2) {\n const result = param1 + param2;\n return result;\n}\n\n'],
|
344
|
-
mappings: 'AAAA,SAASA,MAAMC,EAAQC,GACrB,MAAMC,EAASF,EAASC,EACxB,OAAOC,CACT',
|
345
|
-
});
|
346
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent};
|
347
|
-
await Promise.all([
|
348
|
-
backend.addScript(target, scriptInfo1, sourceMapInfo),
|
349
|
-
backend.addScript(target, scriptInfo2, sourceMapInfo),
|
350
|
-
]);
|
351
|
-
|
352
|
-
// Get the uiSourceCode for the original source.
|
353
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
354
|
-
debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, /* isContentScript */ false);
|
355
|
-
assert.exists(uiSourceCode);
|
356
|
-
|
357
|
-
// Mock out "Debugger.setBreakpointByUrl and echo back the first two 'Debugger.setBreakpointByUrl' requests.
|
358
|
-
const cdpSetBreakpointPromise = new Promise<Map<string, Protocol.Debugger.SetBreakpointByUrlRequest>>(res => {
|
359
|
-
clearMockConnectionResponseHandler('Debugger.setBreakpointByUrl');
|
360
|
-
const requests = new Map<string, Protocol.Debugger.SetBreakpointByUrlRequest>();
|
361
|
-
setMockConnectionResponseHandler('Debugger.setBreakpointByUrl', request => {
|
362
|
-
requests.set(request.url, request);
|
363
|
-
if (requests.size === 2) {
|
364
|
-
res(requests);
|
365
|
-
}
|
366
|
-
return {};
|
367
|
-
});
|
368
|
-
});
|
369
|
-
|
370
|
-
// Set the breakpoint on the `const result = ...` line with a condition using
|
371
|
-
// "authored" variable names.
|
372
|
-
const breakpoint = await breakpointManager.setBreakpoint(
|
373
|
-
uiSourceCode, 1, 0, 'param1 > 0' as Breakpoints.BreakpointManager.UserCondition, /* enabled */ true,
|
374
|
-
/* isLogpoint */ false, Breakpoints.BreakpointManager.BreakpointOrigin.USER_ACTION);
|
375
|
-
assert.exists(breakpoint);
|
376
|
-
|
377
|
-
await breakpoint.updateBreakpoint();
|
378
|
-
|
379
|
-
const requests = await cdpSetBreakpointPromise;
|
380
|
-
const req1 = requests.get(url1);
|
381
|
-
assert.exists(req1);
|
382
|
-
assert.strictEqual(req1.url, url1);
|
383
|
-
assert.strictEqual(req1.condition, 'n > 0\n\n//# sourceURL=debugger://breakpoint');
|
384
|
-
|
385
|
-
const req2 = requests.get(url2);
|
386
|
-
assert.exists(req2);
|
387
|
-
assert.strictEqual(req2.url, url2);
|
388
|
-
assert.strictEqual(req2.condition, 'o > 0\n\n//# sourceURL=debugger://breakpoint');
|
389
|
-
});
|
390
|
-
|
391
|
-
it('allows awaiting the restoration of breakpoints', async () => {
|
392
|
-
Root.Runtime.experiments.enableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
393
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
394
|
-
assert.exists(debuggerModel);
|
395
|
-
|
396
|
-
const {uiSourceCode, project} = createContentProviderUISourceCode({url: URL, mimeType: 'text/javascript'});
|
397
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
398
|
-
assert.exists(breakpoint);
|
399
|
-
|
400
|
-
// Make sure that we await all updates that are triggered by adding the model.
|
401
|
-
await breakpoint.updateBreakpoint();
|
402
|
-
|
403
|
-
const responder = backend.responderToBreakpointByUrlRequest(URL, 0);
|
404
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
405
|
-
void responder({
|
406
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
407
|
-
locations: [
|
408
|
-
{
|
409
|
-
scriptId: script.scriptId,
|
410
|
-
lineNumber: 0,
|
411
|
-
columnNumber: 9,
|
412
|
-
},
|
413
|
-
],
|
414
|
-
});
|
415
|
-
|
416
|
-
// Retrieve the ModelBreakpoint that is linked to our DebuggerModel.
|
417
|
-
const modelBreakpoint = breakpoint.modelBreakpoint(debuggerModel);
|
418
|
-
assert.exists(modelBreakpoint);
|
419
|
-
|
420
|
-
// Make sure that we do not have a linked script yet.
|
421
|
-
// eslint-disable-next-line rulesdir/no-assert-equal-boolean-null-undefined
|
422
|
-
assert.strictEqual(modelBreakpoint.currentState, null);
|
423
|
-
|
424
|
-
// Now await restoring the breakpoint.
|
425
|
-
// A successful restore should update the ModelBreakpoint of the DebuggerModel
|
426
|
-
// to reflect a state, in which we have successfully set a breakpoint (i.e. a script id
|
427
|
-
// is available).
|
428
|
-
await breakpointManager.restoreBreakpointsForScript(script);
|
429
|
-
assert.isNotNull(modelBreakpoint.currentState);
|
430
|
-
assert.lengthOf(modelBreakpoint.currentState, 1);
|
431
|
-
assert.strictEqual(modelBreakpoint.currentState[0].url, URL);
|
432
|
-
|
433
|
-
// Clean up.
|
434
|
-
await breakpoint.remove(false);
|
435
|
-
Workspace.Workspace.WorkspaceImpl.instance().removeProject(project);
|
436
|
-
Root.Runtime.experiments.disableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
437
|
-
});
|
438
|
-
|
439
|
-
it('allows awaiting on scheduled update in debugger', async () => {
|
440
|
-
Root.Runtime.experiments.enableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
441
|
-
|
442
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
443
|
-
assert.exists(debuggerModel);
|
444
|
-
|
445
|
-
const {uiSourceCode, project} = createContentProviderUISourceCode({url: URL, mimeType: 'text/javascript'});
|
446
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 13, 0, ...DEFAULT_BREAKPOINT);
|
447
|
-
assert.exists(breakpoint);
|
448
|
-
|
449
|
-
// Make sure that we await all updates that are triggered by adding the model.
|
450
|
-
await breakpoint.updateBreakpoint();
|
451
|
-
|
452
|
-
const responder = backend.responderToBreakpointByUrlRequest(URL, 13);
|
453
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
454
|
-
void responder({
|
455
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
456
|
-
locations: [
|
457
|
-
{
|
458
|
-
scriptId: script.scriptId,
|
459
|
-
lineNumber: 13,
|
460
|
-
columnNumber: 9,
|
461
|
-
},
|
462
|
-
],
|
463
|
-
});
|
464
|
-
|
465
|
-
// Retrieve the ModelBreakpoint that is linked to our DebuggerModel.
|
466
|
-
const modelBreakpoint = breakpoint.modelBreakpoint(debuggerModel);
|
467
|
-
assert.exists(modelBreakpoint);
|
468
|
-
|
469
|
-
assert.isNull(breakpoint.getLastResolvedState());
|
470
|
-
const update = modelBreakpoint.scheduleUpdateInDebugger();
|
471
|
-
assert.isNull(breakpoint.getLastResolvedState());
|
472
|
-
const result = await update;
|
473
|
-
// Make sure that no error occurred.
|
474
|
-
assert.strictEqual(result, Breakpoints.BreakpointManager.DebuggerUpdateResult.OK);
|
475
|
-
assert.strictEqual(breakpoint.getLastResolvedState()?.[0].lineNumber, 13);
|
476
|
-
await breakpoint.remove(false);
|
477
|
-
Workspace.Workspace.WorkspaceImpl.instance().removeProject(project);
|
478
|
-
});
|
479
|
-
|
480
|
-
it('allows awaiting on removal of breakpoint in debugger', async () => {
|
481
|
-
Root.Runtime.experiments.enableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
482
|
-
|
483
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
484
|
-
assert.exists(debuggerModel);
|
485
|
-
|
486
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
487
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
488
|
-
assert.exists(uiSourceCode);
|
489
|
-
|
490
|
-
const breakpointId = 'BREAK_ID' as Protocol.Debugger.BreakpointId;
|
491
|
-
void backend.responderToBreakpointByUrlRequest(URL, 13)({
|
492
|
-
breakpointId,
|
493
|
-
locations: [
|
494
|
-
{
|
495
|
-
scriptId: script.scriptId,
|
496
|
-
lineNumber: 13,
|
497
|
-
columnNumber: 9,
|
498
|
-
},
|
499
|
-
],
|
500
|
-
});
|
501
|
-
|
502
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 13, 0, ...DEFAULT_BREAKPOINT);
|
503
|
-
assert.exists(breakpoint);
|
504
|
-
await breakpoint.updateBreakpoint();
|
505
|
-
|
506
|
-
// Retrieve the ModelBreakpoint that is linked to our DebuggerModel.
|
507
|
-
const modelBreakpoint = breakpoint.modelBreakpoint(debuggerModel);
|
508
|
-
assert.exists(modelBreakpoint);
|
509
|
-
assert.exists(modelBreakpoint.currentState);
|
510
|
-
|
511
|
-
// Test if awaiting breakpoint.remove is actually removing the state.
|
512
|
-
const removalPromise = backend.breakpointRemovedPromise(breakpointId);
|
513
|
-
await breakpoint.remove(false);
|
514
|
-
await removalPromise;
|
515
|
-
assert.isNull(modelBreakpoint.currentState);
|
516
|
-
});
|
517
|
-
|
518
|
-
it('removes ui source code from breakpoint after breakpoint live location update', async () => {
|
519
|
-
const compiledScript = 'script.min.js';
|
520
|
-
const sourceRoot = 'https://site/';
|
521
|
-
const compiledScriptURL = sourceRoot + compiledScript;
|
522
|
-
const scriptInfo = {url: compiledScriptURL, content: COMPILED_SCRIPT_SOURCES_CONTENT};
|
523
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent, sourceRoot, sources: 'original-script.js'};
|
524
|
-
|
525
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
526
|
-
assert.exists(debuggerModel);
|
527
|
-
|
528
|
-
const uiSourceCodePromise =
|
529
|
-
debuggerWorkspaceBinding.waitForUISourceCodeAdded(urlString`${compiledScriptURL}`, target);
|
530
|
-
const script = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
531
|
-
const uiSourceCodeTs = await uiSourceCodeFromScript(debuggerModel, script);
|
532
|
-
const uiSourceCode = await uiSourceCodePromise;
|
533
|
-
assert.exists(uiSourceCodeTs);
|
534
|
-
assert.exists(uiSourceCode);
|
535
|
-
|
536
|
-
// Register our interest in the breakpoint request.
|
537
|
-
const breakpointResponder = backend.responderToBreakpointByUrlRequest(compiledScriptURL, 0);
|
538
|
-
|
539
|
-
// Set the breakpoint on the compiled script.
|
540
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
541
|
-
assert.exists(breakpoint);
|
542
|
-
|
543
|
-
// Await the breakpoint request at the mock backend and send a CDP response once the request arrives.
|
544
|
-
// Concurrently, enforce update of the breakpoint in the debugger.
|
545
|
-
await Promise.all([
|
546
|
-
breakpointResponder({
|
547
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
548
|
-
locations: [
|
549
|
-
{scriptId: script.scriptId, lineNumber: BREAKPOINT_SCRIPT_LINE, columnNumber: BREAKPOINT_RESULT_COLUMN},
|
550
|
-
],
|
551
|
-
}),
|
552
|
-
breakpoint.refreshInDebugger(),
|
553
|
-
]);
|
554
|
-
|
555
|
-
// Verify that the location of the breakpoint is tied to the original script.
|
556
|
-
assert.lengthOf(breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode), 0);
|
557
|
-
|
558
|
-
assert.lengthOf(breakpointManager.breakpointLocationsForUISourceCode(uiSourceCodeTs), 1);
|
559
|
-
assert.strictEqual(breakpointManager.breakpointLocationsForUISourceCode(uiSourceCodeTs)[0].breakpoint, breakpoint);
|
560
|
-
assert.strictEqual(
|
561
|
-
breakpointManager.breakpointLocationsForUISourceCode(uiSourceCodeTs)[0].uiLocation.lineNumber, 2);
|
562
|
-
|
563
|
-
// Remove the target and verify that the UI source codes were removed from the breakpoint.
|
564
|
-
breakpointManager.targetManager.removeTarget(target);
|
565
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
566
|
-
assert.lengthOf(breakpointManager.breakpointLocationsForUISourceCode(uiSourceCodeTs), 0);
|
567
|
-
assert.lengthOf(breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode), 0);
|
568
|
-
|
569
|
-
await breakpoint.remove(false);
|
570
|
-
});
|
571
|
-
|
572
|
-
it('can set breakpoints in inline scripts', async () => {
|
573
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
574
|
-
assert.exists(debuggerModel);
|
575
|
-
|
576
|
-
// Create an inline script and get a UI source code instance for it.
|
577
|
-
const inlineScript = await backend.addScript(target, inlineScriptDescription, null);
|
578
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, inlineScript);
|
579
|
-
assert.exists(uiSourceCode);
|
580
|
-
|
581
|
-
// Register our interest in the breakpoint request.
|
582
|
-
const breakpointResponder = backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE);
|
583
|
-
|
584
|
-
// Set the breakpoint.
|
585
|
-
const breakpoint =
|
586
|
-
await breakpointManager.setBreakpoint(uiSourceCode, BREAKPOINT_SCRIPT_LINE, 2, ...DEFAULT_BREAKPOINT);
|
587
|
-
assert.exists(breakpoint);
|
588
|
-
|
589
|
-
// Await the breakpoint request at the mock backend and send a CDP response once the request arrives.
|
590
|
-
// Concurrently, enforce update of the breakpoint in the debugger.
|
591
|
-
await Promise.all([
|
592
|
-
breakpointResponder({
|
593
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
594
|
-
locations: [
|
595
|
-
{
|
596
|
-
scriptId: inlineScript.scriptId,
|
597
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
598
|
-
columnNumber: BREAKPOINT_RESULT_COLUMN,
|
599
|
-
},
|
600
|
-
],
|
601
|
-
}),
|
602
|
-
breakpoint.refreshInDebugger(),
|
603
|
-
]);
|
604
|
-
|
605
|
-
// Check that the breakpoint was set at the correct location?
|
606
|
-
const locations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
607
|
-
assert.lengthOf(locations, 1);
|
608
|
-
assert.strictEqual(1, locations[0].uiLocation.lineNumber);
|
609
|
-
assert.strictEqual(5, locations[0].uiLocation.columnNumber);
|
610
|
-
});
|
611
|
-
|
612
|
-
it('can restore breakpoints in inline scripts', async () => {
|
613
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
614
|
-
assert.exists(debuggerModel);
|
615
|
-
|
616
|
-
// Create an inline script and get a UI source code instance for it.
|
617
|
-
const inlineScript = await backend.addScript(target, inlineScriptDescription, null);
|
618
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, inlineScript);
|
619
|
-
assert.exists(uiSourceCode);
|
620
|
-
|
621
|
-
// Register our interest in the breakpoint request.
|
622
|
-
const breakpointResponder = backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE);
|
623
|
-
|
624
|
-
// Set the breakpoint on the front-end/model side.
|
625
|
-
const breakpoint =
|
626
|
-
await breakpointManager.setBreakpoint(uiSourceCode, BREAKPOINT_SCRIPT_LINE, 2, ...DEFAULT_BREAKPOINT);
|
627
|
-
assert.exists(breakpoint);
|
628
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
629
|
-
|
630
|
-
// Await the breakpoint request at the mock backend and send a CDP response once the request arrives.
|
631
|
-
// Concurrently, enforce update of the breakpoint in the debugger.
|
632
|
-
await Promise.all([
|
633
|
-
breakpointResponder({
|
634
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
635
|
-
locations: [
|
636
|
-
{
|
637
|
-
scriptId: inlineScript.scriptId,
|
638
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
639
|
-
columnNumber: BREAKPOINT_RESULT_COLUMN,
|
640
|
-
},
|
641
|
-
],
|
642
|
-
}),
|
643
|
-
breakpoint.refreshInDebugger(),
|
644
|
-
]);
|
645
|
-
|
646
|
-
// Disconnect from the target. This will also unload the script.
|
647
|
-
breakpointManager.targetManager.removeTarget(target);
|
648
|
-
|
649
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
650
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
651
|
-
|
652
|
-
// Create a new target.
|
653
|
-
target = createTarget();
|
654
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
655
|
-
|
656
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
657
|
-
assert.exists(reloadedDebuggerModel);
|
658
|
-
|
659
|
-
// Load the same inline script (with a different script id!) into the new target.
|
660
|
-
// Once the model loads the script, it wil try to restore the breakpoint. Let us make sure the backend
|
661
|
-
// will be ready to produce a response before adding the script.
|
662
|
-
const reloadedBreakpointResponder = backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE);
|
663
|
-
const reloadedInlineScript = await backend.addScript(target, inlineScriptDescription, null);
|
664
|
-
|
665
|
-
const reloadedUiSourceCode = await uiSourceCodeFromScript(reloadedDebuggerModel, reloadedInlineScript);
|
666
|
-
assert.exists(reloadedUiSourceCode);
|
667
|
-
|
668
|
-
// Verify the breakpoint was restored at the oriignal unbound location (before the backend binds it).
|
669
|
-
const unboundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
670
|
-
assert.lengthOf(unboundLocations, 1);
|
671
|
-
assert.strictEqual(1, unboundLocations[0].uiLocation.lineNumber);
|
672
|
-
assert.strictEqual(2, unboundLocations[0].uiLocation.columnNumber);
|
673
|
-
|
674
|
-
// Wait for the breakpoint request for the reloaded script and for the breakpoint update.
|
675
|
-
await Promise.all([
|
676
|
-
reloadedBreakpointResponder({
|
677
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
678
|
-
locations: [{
|
679
|
-
scriptId: reloadedInlineScript.scriptId,
|
680
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
681
|
-
columnNumber: BREAKPOINT_RESULT_COLUMN,
|
682
|
-
}],
|
683
|
-
}),
|
684
|
-
breakpoint.refreshInDebugger(),
|
685
|
-
]);
|
686
|
-
|
687
|
-
// Verify the restored position.
|
688
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
689
|
-
assert.lengthOf(boundLocations, 1);
|
690
|
-
assert.strictEqual(1, boundLocations[0].uiLocation.lineNumber);
|
691
|
-
assert.strictEqual(5, boundLocations[0].uiLocation.columnNumber);
|
692
|
-
});
|
693
|
-
|
694
|
-
it('eagerly restores JavaScript breakpoints in a new target', async () => {
|
695
|
-
// Remove the default target so that we can simulate starting the debugger afresh.
|
696
|
-
targetManager.removeTarget(target);
|
697
|
-
|
698
|
-
// Set the breakpoint storage to contain a breakpoint and re-initialize
|
699
|
-
// the breakpoint manager from that storage. This should create a breakpoint instance
|
700
|
-
// in the breakpoint manager.
|
701
|
-
const url = urlString`http://example.com/script.js`;
|
702
|
-
const lineNumber = 1;
|
703
|
-
const breakpoints: Breakpoints.BreakpointManager.BreakpointStorageState[] = [{
|
704
|
-
url,
|
705
|
-
resourceTypeName: 'script',
|
706
|
-
lineNumber,
|
707
|
-
condition: '' as Breakpoints.BreakpointManager.UserCondition,
|
708
|
-
enabled: true,
|
709
|
-
isLogpoint: false,
|
710
|
-
}];
|
711
|
-
Common.Settings.Settings.instance().createLocalSetting('breakpoints', breakpoints).set(breakpoints);
|
712
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance(
|
713
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
714
|
-
|
715
|
-
// Create a new target and make sure that the backend receives setBreakpointByUrl request
|
716
|
-
// from breakpoint manager.
|
717
|
-
const breakpointSetPromise = backend.responderToBreakpointByUrlRequest(url, lineNumber)({
|
718
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
719
|
-
locations: [],
|
720
|
-
});
|
721
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(createTarget());
|
722
|
-
await breakpointSetPromise;
|
723
|
-
});
|
724
|
-
|
725
|
-
it('eagerly restores TypeScript breakpoints in a new target', async () => {
|
726
|
-
// Remove the default target so that we can simulate starting the debugger afresh.
|
727
|
-
targetManager.removeTarget(target);
|
728
|
-
|
729
|
-
// Set the breakpoint storage to contain a source-mapped breakpoint and re-initialize
|
730
|
-
// the breakpoint manager from that storage. This should create a breakpoint instance
|
731
|
-
// in the breakpoint manager (for the resolved location!).
|
732
|
-
const compiledUrl = urlString`http://example.com/compiled.js`;
|
733
|
-
const compiledLineNumber = 2;
|
734
|
-
const breakpoints: Breakpoints.BreakpointManager.BreakpointStorageState[] = [{
|
735
|
-
url: urlString`http://example.com/src/script.ts`,
|
736
|
-
resourceTypeName: 'sm-script',
|
737
|
-
lineNumber: 1,
|
738
|
-
condition: '' as Breakpoints.BreakpointManager.UserCondition,
|
739
|
-
enabled: true,
|
740
|
-
isLogpoint: false,
|
741
|
-
resolvedState: [{
|
742
|
-
url: compiledUrl,
|
743
|
-
lineNumber: compiledLineNumber,
|
744
|
-
columnNumber: 0,
|
745
|
-
condition: '' as SDK.DebuggerModel.BackendCondition,
|
746
|
-
}],
|
747
|
-
}];
|
748
|
-
Common.Settings.Settings.instance().createLocalSetting('breakpoints', breakpoints).set(breakpoints);
|
749
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance(
|
750
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
751
|
-
|
752
|
-
// Create a new target and make sure that the backend receives setBreakpointByUrl request
|
753
|
-
// from breakpoint manager.
|
754
|
-
const breakpointSetPromise = backend.responderToBreakpointByUrlRequest(compiledUrl, compiledLineNumber)({
|
755
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
756
|
-
locations: [],
|
757
|
-
});
|
758
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(createTarget());
|
759
|
-
await breakpointSetPromise;
|
760
|
-
});
|
761
|
-
|
762
|
-
it('saves generated location into storage', async () => {
|
763
|
-
// Remove the default target so that we can simulate starting the debugger afresh.
|
764
|
-
targetManager.removeTarget(target);
|
765
|
-
|
766
|
-
// Re-create a target and breakpoint manager.
|
767
|
-
target = createTarget();
|
768
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
769
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
770
|
-
assert.exists(debuggerModel);
|
771
|
-
const breakpoints: Breakpoints.BreakpointManager.BreakpointStorageState[] = [];
|
772
|
-
const setting = Common.Settings.Settings.instance().createLocalSetting('breakpoints', breakpoints);
|
773
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance(
|
774
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
775
|
-
|
776
|
-
// Add script with source map.
|
777
|
-
setupPageResourceLoaderForSourceMap(sourceMapContent);
|
778
|
-
const scriptInfo = {url: URL, content: COMPILED_SCRIPT_SOURCES_CONTENT};
|
779
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent};
|
780
|
-
const script = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
781
|
-
|
782
|
-
// Get the uiSourceCode for the original source.
|
783
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
784
|
-
debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, script.isContentScript());
|
785
|
-
assert.exists(uiSourceCode);
|
786
|
-
|
787
|
-
// Set the breakpoint on the front-end/model side.
|
788
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 1, 0, ...DEFAULT_BREAKPOINT);
|
789
|
-
assert.exists(breakpoint);
|
790
|
-
|
791
|
-
// Set the breakpoint response for our upcoming request.
|
792
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
793
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
794
|
-
locations: [
|
795
|
-
{
|
796
|
-
scriptId: script.scriptId,
|
797
|
-
lineNumber: 0,
|
798
|
-
columnNumber: 15,
|
799
|
-
},
|
800
|
-
],
|
801
|
-
});
|
802
|
-
// Ensure the breakpoint is fully set.
|
803
|
-
await breakpoint.refreshInDebugger();
|
804
|
-
|
805
|
-
// Check that the storage contains the resolved breakpoint location.
|
806
|
-
assert.lengthOf(setting.get(), 1);
|
807
|
-
assert.deepEqual(setting.get()[0].resolvedState, [{
|
808
|
-
url: URL,
|
809
|
-
lineNumber: 0,
|
810
|
-
columnNumber: 15,
|
811
|
-
condition: '' as SDK.DebuggerModel.BackendCondition,
|
812
|
-
}]);
|
813
|
-
});
|
814
|
-
|
815
|
-
it('restores latest breakpoints from storage', async () => {
|
816
|
-
// Remove the default target so that we can simulate starting the debugger afresh.
|
817
|
-
targetManager.removeTarget(target);
|
818
|
-
|
819
|
-
const expectedBreakpointLines = [1, 2];
|
820
|
-
|
821
|
-
const breakpointRequestLines = new Promise<number[]>((resolve, reject) => {
|
822
|
-
const breakpoints: Breakpoints.BreakpointManager.BreakpointStorageState[] = [];
|
823
|
-
|
824
|
-
// Accumulator for breakpoint lines from setBreakpointByUrl requests.
|
825
|
-
const breakpointRequestLinesReceived = new Set<number>();
|
826
|
-
|
827
|
-
// Create three breakpoints in the storage and register the corresponding
|
828
|
-
// request handler in the mock backend. The handler will resolve the promise
|
829
|
-
// (and thus finish up the test) once it receives two breakpoint requests.
|
830
|
-
// The idea is to check that the front-end requested the two latest breakpoints
|
831
|
-
// from the backend.
|
832
|
-
for (let i = 0; i < 3; i++) {
|
833
|
-
const lineNumber = i;
|
834
|
-
// Push the breakpoint to our mock storage. The storage will be then used
|
835
|
-
// to initialize the breakpoint manager.
|
836
|
-
breakpoints.push({
|
837
|
-
url: URL,
|
838
|
-
resourceTypeName: 'script',
|
839
|
-
lineNumber,
|
840
|
-
condition: '' as Breakpoints.BreakpointManager.UserCondition,
|
841
|
-
enabled: true,
|
842
|
-
isLogpoint: false,
|
843
|
-
});
|
844
|
-
|
845
|
-
// When the mock backend receives a request for this breakpoint, it will
|
846
|
-
// respond and record the request. Also, once we receive the
|
847
|
-
void backend
|
848
|
-
.responderToBreakpointByUrlRequest(
|
849
|
-
URL, lineNumber)({breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId, locations: []})
|
850
|
-
.then(() => {
|
851
|
-
breakpointRequestLinesReceived.add(lineNumber);
|
852
|
-
if (breakpointRequestLinesReceived.size === expectedBreakpointLines.length) {
|
853
|
-
resolve(Array.from(breakpointRequestLinesReceived).sort((l, r) => l - r));
|
854
|
-
}
|
855
|
-
}, reject);
|
856
|
-
}
|
857
|
-
|
858
|
-
// Re-create the breakpoint manager and the target.
|
859
|
-
const setting = Common.Settings.Settings.instance().createLocalSetting('breakpoints', breakpoints);
|
860
|
-
setting.set(breakpoints);
|
861
|
-
// Create the breakpoint manager, request placing on the two latest breakpoints in the backend.
|
862
|
-
Breakpoints.BreakpointManager.BreakpointManager.instance({
|
863
|
-
forceNew: true,
|
864
|
-
targetManager,
|
865
|
-
workspace,
|
866
|
-
debuggerWorkspaceBinding,
|
867
|
-
restoreInitialBreakpointCount: expectedBreakpointLines.length,
|
868
|
-
});
|
869
|
-
target = createTarget();
|
870
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
871
|
-
});
|
872
|
-
|
873
|
-
assert.deepEqual(Array.from(await breakpointRequestLines), expectedBreakpointLines);
|
874
|
-
});
|
875
|
-
|
876
|
-
describe('with instrumentation breakpoints turned on', () => {
|
877
|
-
beforeEach(() => {
|
878
|
-
const targetManager = SDK.TargetManager.TargetManager.instance();
|
879
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
880
|
-
Root.Runtime.experiments.enableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
881
|
-
breakpointManager = Breakpoints.BreakpointManager.BreakpointManager.instance(
|
882
|
-
{forceNew: true, targetManager, workspace, debuggerWorkspaceBinding});
|
883
|
-
});
|
884
|
-
|
885
|
-
afterEach(() => {
|
886
|
-
Root.Runtime.experiments.disableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
887
|
-
});
|
888
|
-
|
889
|
-
async function testBreakpointMovedOnInstrumentationBreak(
|
890
|
-
fileSystemPath: Platform.DevToolsPath.UrlString, fileSystemFileUrl: Platform.DevToolsPath.UrlString,
|
891
|
-
content: string, type?: Persistence.PlatformFileSystem.PlatformFileSystemType) {
|
892
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
893
|
-
assert.exists(debuggerModel);
|
894
|
-
|
895
|
-
const {uiSourceCode: fileSystemUiSourceCode, project} = createFileSystemFileForPersistenceTests(
|
896
|
-
{fileSystemFileUrl, fileSystemPath, type}, scriptDescription.url, content, target);
|
897
|
-
|
898
|
-
const breakpointLine = 0;
|
899
|
-
const resolvedBreakpointLine = 1;
|
900
|
-
|
901
|
-
// Set the breakpoint on the file system uiSourceCode.
|
902
|
-
await breakpointManager.setBreakpoint(fileSystemUiSourceCode, breakpointLine, 0, ...DEFAULT_BREAKPOINT);
|
903
|
-
|
904
|
-
// Add the script.
|
905
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
906
|
-
const uiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(script);
|
907
|
-
assert.exists(uiSourceCode);
|
908
|
-
assert.strictEqual(uiSourceCode.project().type(), Workspace.Workspace.projectTypes.Network);
|
909
|
-
|
910
|
-
// Set the breakpoint response for our upcoming request.
|
911
|
-
void backend.responderToBreakpointByUrlRequest(URL, breakpointLine)({
|
912
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
913
|
-
locations: [
|
914
|
-
{
|
915
|
-
scriptId: script.scriptId,
|
916
|
-
lineNumber: resolvedBreakpointLine,
|
917
|
-
columnNumber: 0,
|
918
|
-
},
|
919
|
-
],
|
920
|
-
});
|
921
|
-
|
922
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
923
|
-
// we have set up all breakpoints during the instrumentation pause.
|
924
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
925
|
-
|
926
|
-
// Inform the front-end about an instrumentation break.
|
927
|
-
backend.dispatchDebuggerPause(script, Protocol.Debugger.PausedEventReason.Instrumentation);
|
928
|
-
|
929
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
930
|
-
await resumeSentPromise;
|
931
|
-
|
932
|
-
// Verify that the network uiSourceCode has the breakpoint that we originally set
|
933
|
-
// on the file system uiSourceCode.
|
934
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
935
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
936
|
-
assert.strictEqual(resolvedBreakpointLine, reloadedBoundLocations[0].uiLocation.lineNumber);
|
937
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.columnNumber);
|
938
|
-
|
939
|
-
project.dispose();
|
940
|
-
}
|
941
|
-
|
942
|
-
it('can restore breakpoints in scripts', async () => {
|
943
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
944
|
-
assert.exists(debuggerModel);
|
945
|
-
|
946
|
-
const breakpointLine = 0;
|
947
|
-
const resolvedBreakpointLine = 3;
|
948
|
-
|
949
|
-
// Add script.
|
950
|
-
const scriptInfo = {url: URL, content: 'console.log(\'hello\')'};
|
951
|
-
const script = await backend.addScript(target, scriptInfo, null);
|
952
|
-
|
953
|
-
// Get the uiSourceCode for the source.
|
954
|
-
const uiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(script);
|
955
|
-
assert.exists(uiSourceCode);
|
956
|
-
|
957
|
-
// Set the breakpoint on the front-end/model side.
|
958
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, breakpointLine, 0, ...DEFAULT_BREAKPOINT);
|
959
|
-
assert.exists(breakpoint);
|
960
|
-
|
961
|
-
// Set the breakpoint response for our upcoming request.
|
962
|
-
void backend.responderToBreakpointByUrlRequest(URL, breakpointLine)({
|
963
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
964
|
-
locations: [
|
965
|
-
{
|
966
|
-
scriptId: script.scriptId,
|
967
|
-
lineNumber: resolvedBreakpointLine,
|
968
|
-
columnNumber: 0,
|
969
|
-
},
|
970
|
-
],
|
971
|
-
});
|
972
|
-
await breakpoint.refreshInDebugger();
|
973
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
974
|
-
|
975
|
-
// Verify the restored position.
|
976
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
977
|
-
assert.lengthOf(boundLocations, 1);
|
978
|
-
assert.strictEqual(resolvedBreakpointLine, boundLocations[0].uiLocation.lineNumber);
|
979
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.columnNumber);
|
980
|
-
|
981
|
-
// Disconnect from the target. This will also unload the script.
|
982
|
-
breakpointManager.targetManager.removeTarget(target);
|
983
|
-
|
984
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
985
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
986
|
-
|
987
|
-
// Remove the breakpoint.
|
988
|
-
await breakpoint.remove(true /* keepInStorage */);
|
989
|
-
|
990
|
-
// Create a new target.
|
991
|
-
target = createTarget();
|
992
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
993
|
-
|
994
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
995
|
-
assert.exists(reloadedDebuggerModel);
|
996
|
-
|
997
|
-
// Add the same script under a different scriptId.
|
998
|
-
const reloadedScript = await backend.addScript(target, scriptInfo, null);
|
999
|
-
|
1000
|
-
// Get the uiSourceCode for the original source.
|
1001
|
-
const reloadedUiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(reloadedScript);
|
1002
|
-
assert.exists(reloadedUiSourceCode);
|
1003
|
-
|
1004
|
-
// Set the breakpoint response for our upcoming request.
|
1005
|
-
void backend.responderToBreakpointByUrlRequest(URL, breakpointLine)({
|
1006
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1007
|
-
locations: [
|
1008
|
-
{
|
1009
|
-
scriptId: reloadedScript.scriptId,
|
1010
|
-
lineNumber: resolvedBreakpointLine,
|
1011
|
-
columnNumber: 0,
|
1012
|
-
},
|
1013
|
-
],
|
1014
|
-
});
|
1015
|
-
|
1016
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
1017
|
-
// we have set up all breakpoints during the instrumentation pause.
|
1018
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
1019
|
-
|
1020
|
-
// Inform the front-end about an instrumentation break.
|
1021
|
-
backend.dispatchDebuggerPause(reloadedScript, Protocol.Debugger.PausedEventReason.Instrumentation);
|
1022
|
-
|
1023
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
1024
|
-
await resumeSentPromise;
|
1025
|
-
|
1026
|
-
// Verify the restored position.
|
1027
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1028
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
1029
|
-
assert.strictEqual(resolvedBreakpointLine, reloadedBoundLocations[0].uiLocation.lineNumber);
|
1030
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.columnNumber);
|
1031
|
-
});
|
1032
|
-
|
1033
|
-
it('can restore breakpoints in a default-mapped inline scripts without sourceURL comment', async () => {
|
1034
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1035
|
-
assert.exists(debuggerModel);
|
1036
|
-
|
1037
|
-
// Add script.
|
1038
|
-
const script = await backend.addScript(target, inlineScriptDescription, null);
|
1039
|
-
|
1040
|
-
// Get the uiSourceCode for the source. This is the uiSourceCode in the DefaultScriptMapping,
|
1041
|
-
// as we haven't registered the uiSourceCode for the html file.
|
1042
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForScript(script);
|
1043
|
-
assert.exists(uiSourceCode);
|
1044
|
-
assert.strictEqual(uiSourceCode.project().type(), Workspace.Workspace.projectTypes.Debugger);
|
1045
|
-
|
1046
|
-
// Set the breakpoint on the front-end/model side. The line number is relative to the v8 script.
|
1047
|
-
const breakpoint =
|
1048
|
-
await breakpointManager.setBreakpoint(uiSourceCode, BREAKPOINT_SCRIPT_LINE, 0, ...DEFAULT_BREAKPOINT);
|
1049
|
-
assert.exists(breakpoint);
|
1050
|
-
|
1051
|
-
// Set the breakpoint response for our upcoming request.
|
1052
|
-
void backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE)({
|
1053
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1054
|
-
locations: [
|
1055
|
-
{
|
1056
|
-
scriptId: script.scriptId,
|
1057
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
1058
|
-
columnNumber: 0,
|
1059
|
-
},
|
1060
|
-
],
|
1061
|
-
});
|
1062
|
-
await breakpoint.refreshInDebugger();
|
1063
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
1064
|
-
|
1065
|
-
// Verify the position.
|
1066
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
1067
|
-
assert.lengthOf(boundLocations, 1);
|
1068
|
-
assert.strictEqual(BREAKPOINT_SCRIPT_LINE, boundLocations[0].uiLocation.lineNumber);
|
1069
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.columnNumber);
|
1070
|
-
|
1071
|
-
// Disconnect from the target. This will also unload the script.
|
1072
|
-
breakpointManager.targetManager.removeTarget(target);
|
1073
|
-
|
1074
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
1075
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
1076
|
-
|
1077
|
-
// Remove the breakpoint.
|
1078
|
-
await breakpoint.remove(true /* keepInStorage */);
|
1079
|
-
|
1080
|
-
// Create a new target.
|
1081
|
-
target = createTarget();
|
1082
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
1083
|
-
|
1084
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1085
|
-
assert.exists(reloadedDebuggerModel);
|
1086
|
-
|
1087
|
-
// Add the same script under a different scriptId.
|
1088
|
-
const reloadedScript = await backend.addScript(target, inlineScriptDescription, null);
|
1089
|
-
|
1090
|
-
// Get the uiSourceCode for the source. This is the uiSourceCode in the DefaultScriptMapping,
|
1091
|
-
// as we haven't registered the uiSourceCode for the html file.
|
1092
|
-
const reloadedUiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(reloadedScript);
|
1093
|
-
assert.exists(reloadedUiSourceCode);
|
1094
|
-
assert.strictEqual(reloadedUiSourceCode.project().type(), Workspace.Workspace.projectTypes.Debugger);
|
1095
|
-
|
1096
|
-
// Set the breakpoint response for our upcoming request.
|
1097
|
-
void backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE)({
|
1098
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1099
|
-
locations: [
|
1100
|
-
{
|
1101
|
-
scriptId: reloadedScript.scriptId,
|
1102
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
1103
|
-
columnNumber: 0,
|
1104
|
-
},
|
1105
|
-
],
|
1106
|
-
});
|
1107
|
-
|
1108
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
1109
|
-
// we have set up all breakpoints during the instrumentation pause.
|
1110
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
1111
|
-
|
1112
|
-
// Inform the front-end about an instrumentation break.
|
1113
|
-
backend.dispatchDebuggerPause(reloadedScript, Protocol.Debugger.PausedEventReason.Instrumentation);
|
1114
|
-
|
1115
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
1116
|
-
await resumeSentPromise;
|
1117
|
-
|
1118
|
-
// Verify the restored position.
|
1119
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1120
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
1121
|
-
assert.deepEqual(reloadedBoundLocations[0].uiLocation.uiSourceCode, reloadedUiSourceCode);
|
1122
|
-
assert.strictEqual(BREAKPOINT_SCRIPT_LINE, reloadedBoundLocations[0].uiLocation.lineNumber);
|
1123
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.columnNumber);
|
1124
|
-
});
|
1125
|
-
|
1126
|
-
it('can restore breakpoints in an inline script without sourceURL comment', async () => {
|
1127
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1128
|
-
assert.exists(debuggerModel);
|
1129
|
-
|
1130
|
-
function dispatchDocumentOpened() {
|
1131
|
-
dispatchEvent(target, 'Page.documentOpened', {
|
1132
|
-
frame: {
|
1133
|
-
id: 'main',
|
1134
|
-
loaderId: 'foo',
|
1135
|
-
url: URL_HTML,
|
1136
|
-
domainAndRegistry: 'example.com',
|
1137
|
-
securityOrigin: 'https://example.com/',
|
1138
|
-
mimeType: 'text/html',
|
1139
|
-
secureContextType: Protocol.Page.SecureContextType.Secure,
|
1140
|
-
crossOriginIsolatedContextType: Protocol.Page.CrossOriginIsolatedContextType.Isolated,
|
1141
|
-
gatedAPIFeatures: [],
|
1142
|
-
},
|
1143
|
-
});
|
1144
|
-
}
|
1145
|
-
dispatchDocumentOpened();
|
1146
|
-
|
1147
|
-
// Add script.
|
1148
|
-
const script = await backend.addScript(target, inlineScriptDescription, null);
|
1149
|
-
|
1150
|
-
// Get the uiSourceCode for the source: this should be the uiSourceCode of the actual html script.
|
1151
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForScript(script);
|
1152
|
-
assert.exists(uiSourceCode);
|
1153
|
-
assert.strictEqual(uiSourceCode.project().type(), Workspace.Workspace.projectTypes.Network);
|
1154
|
-
|
1155
|
-
// Set the breakpoint on the front-end/model side of the html uiSourceCode.
|
1156
|
-
const breakpoint =
|
1157
|
-
await breakpointManager.setBreakpoint(uiSourceCode, INLINE_BREAKPOINT_RAW_LINE, 0, ...DEFAULT_BREAKPOINT);
|
1158
|
-
assert.exists(breakpoint);
|
1159
|
-
|
1160
|
-
// Set the breakpoint response for our upcoming request to set a breakpoint on the raw location.
|
1161
|
-
void backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE)({
|
1162
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1163
|
-
locations: [
|
1164
|
-
{
|
1165
|
-
scriptId: script.scriptId,
|
1166
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
1167
|
-
columnNumber: 0,
|
1168
|
-
},
|
1169
|
-
],
|
1170
|
-
});
|
1171
|
-
await breakpoint.refreshInDebugger();
|
1172
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
1173
|
-
|
1174
|
-
// Verify the position.
|
1175
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
1176
|
-
assert.lengthOf(boundLocations, 1);
|
1177
|
-
assert.strictEqual(INLINE_BREAKPOINT_RAW_LINE, boundLocations[0].uiLocation.lineNumber);
|
1178
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.columnNumber);
|
1179
|
-
|
1180
|
-
// Disconnect from the target. This will also unload the script.
|
1181
|
-
breakpointManager.targetManager.removeTarget(target);
|
1182
|
-
|
1183
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
1184
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
1185
|
-
|
1186
|
-
// Remove the breakpoint.
|
1187
|
-
await breakpoint.remove(true /* keepInStorage */);
|
1188
|
-
|
1189
|
-
// Create a new target.
|
1190
|
-
target = createTarget();
|
1191
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
1192
|
-
|
1193
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1194
|
-
assert.exists(reloadedDebuggerModel);
|
1195
|
-
|
1196
|
-
dispatchDocumentOpened();
|
1197
|
-
|
1198
|
-
// Add the same script under a different scriptId.
|
1199
|
-
const reloadedScript = await backend.addScript(target, inlineScriptDescription, null);
|
1200
|
-
|
1201
|
-
// Get the uiSourceCode for the source: this should be the uiSourceCode of the actual html script.
|
1202
|
-
const reloadedUiSourceCode = debuggerWorkspaceBinding.uiSourceCodeForScript(reloadedScript);
|
1203
|
-
assert.exists(reloadedUiSourceCode);
|
1204
|
-
assert.strictEqual(reloadedUiSourceCode.project().type(), Workspace.Workspace.projectTypes.Network);
|
1205
|
-
|
1206
|
-
// Set the breakpoint response for our upcoming request.
|
1207
|
-
void backend.responderToBreakpointByUrlRequest(URL_HTML, INLINE_BREAKPOINT_RAW_LINE)({
|
1208
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1209
|
-
locations: [
|
1210
|
-
{
|
1211
|
-
scriptId: reloadedScript.scriptId,
|
1212
|
-
lineNumber: INLINE_BREAKPOINT_RAW_LINE,
|
1213
|
-
columnNumber: 0,
|
1214
|
-
},
|
1215
|
-
],
|
1216
|
-
});
|
1217
|
-
|
1218
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
1219
|
-
// we have set up all breakpoints during the instrumentation pause.
|
1220
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
1221
|
-
|
1222
|
-
// Inform the front-end about an instrumentation break.
|
1223
|
-
backend.dispatchDebuggerPause(reloadedScript, Protocol.Debugger.PausedEventReason.Instrumentation);
|
1224
|
-
|
1225
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
1226
|
-
await resumeSentPromise;
|
1227
|
-
|
1228
|
-
// Verify the restored position.
|
1229
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1230
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
1231
|
-
assert.deepEqual(reloadedBoundLocations[0].uiLocation.uiSourceCode, reloadedUiSourceCode);
|
1232
|
-
assert.strictEqual(INLINE_BREAKPOINT_RAW_LINE, reloadedBoundLocations[0].uiLocation.lineNumber);
|
1233
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.columnNumber);
|
1234
|
-
});
|
1235
|
-
|
1236
|
-
it('can restore breakpoints in source mapped scripts', async () => {
|
1237
|
-
setupPageResourceLoaderForSourceMap(sourceMapContent);
|
1238
|
-
|
1239
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1240
|
-
assert.exists(debuggerModel);
|
1241
|
-
|
1242
|
-
// Add script with source map.
|
1243
|
-
const scriptInfo = {url: URL, content: COMPILED_SCRIPT_SOURCES_CONTENT};
|
1244
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent};
|
1245
|
-
const script = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
1246
|
-
|
1247
|
-
// Get the uiSourceCode for the original source.
|
1248
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
1249
|
-
debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, script.isContentScript());
|
1250
|
-
assert.exists(uiSourceCode);
|
1251
|
-
|
1252
|
-
// Set the breakpoint on the front-end/model side.
|
1253
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
1254
|
-
assert.exists(breakpoint);
|
1255
|
-
|
1256
|
-
// Set the breakpoint response for our upcoming request.
|
1257
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1258
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1259
|
-
locations: [
|
1260
|
-
{
|
1261
|
-
scriptId: script.scriptId,
|
1262
|
-
lineNumber: 0,
|
1263
|
-
columnNumber: 9,
|
1264
|
-
},
|
1265
|
-
],
|
1266
|
-
});
|
1267
|
-
await breakpoint.refreshInDebugger();
|
1268
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
1269
|
-
|
1270
|
-
// Verify the restored position.
|
1271
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
1272
|
-
assert.lengthOf(boundLocations, 1);
|
1273
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.lineNumber);
|
1274
|
-
assert.strictEqual(9, boundLocations[0].uiLocation.columnNumber);
|
1275
|
-
|
1276
|
-
// Disconnect from the target. This will also unload the script.
|
1277
|
-
breakpointManager.targetManager.removeTarget(target);
|
1278
|
-
|
1279
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
1280
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
1281
|
-
|
1282
|
-
// Remove the breakpoint.
|
1283
|
-
await breakpoint.remove(true /* keepInStorage */);
|
1284
|
-
|
1285
|
-
// Create a new target.
|
1286
|
-
target = createTarget();
|
1287
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
1288
|
-
|
1289
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1290
|
-
assert.exists(reloadedDebuggerModel);
|
1291
|
-
|
1292
|
-
// Add the same script under a different scriptId.
|
1293
|
-
const reloadedScript = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
1294
|
-
|
1295
|
-
// Get the uiSourceCode for the original source.
|
1296
|
-
const reloadedUiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
1297
|
-
reloadedDebuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, reloadedScript.isContentScript());
|
1298
|
-
assert.exists(uiSourceCode);
|
1299
|
-
|
1300
|
-
const unboundLocation = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1301
|
-
assert.lengthOf(unboundLocation, 1);
|
1302
|
-
assert.strictEqual(0, unboundLocation[0].uiLocation.lineNumber);
|
1303
|
-
assert.strictEqual(0, unboundLocation[0].uiLocation.columnNumber);
|
1304
|
-
|
1305
|
-
// Set the breakpoint response for our upcoming request.
|
1306
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1307
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1308
|
-
locations: [{
|
1309
|
-
scriptId: reloadedScript.scriptId,
|
1310
|
-
lineNumber: 0,
|
1311
|
-
columnNumber: 9,
|
1312
|
-
}],
|
1313
|
-
});
|
1314
|
-
|
1315
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
1316
|
-
// we have set up all breakpoints during the instrumentation pause.
|
1317
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
1318
|
-
|
1319
|
-
// Inform the front-end about an instrumentation break.
|
1320
|
-
backend.dispatchDebuggerPause(reloadedScript, Protocol.Debugger.PausedEventReason.Instrumentation);
|
1321
|
-
|
1322
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
1323
|
-
await resumeSentPromise;
|
1324
|
-
|
1325
|
-
// Verify the restored position.
|
1326
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1327
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
1328
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.lineNumber);
|
1329
|
-
assert.strictEqual(9, reloadedBoundLocations[0].uiLocation.columnNumber);
|
1330
|
-
});
|
1331
|
-
|
1332
|
-
it('can restore breakpoints in scripts with language plugins', async () => {
|
1333
|
-
const {pluginManager} = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance();
|
1334
|
-
const scriptInfo = {url: URL, content: ''};
|
1335
|
-
const script = await backend.addScript(target, scriptInfo, null);
|
1336
|
-
|
1337
|
-
class Plugin extends TestPlugin {
|
1338
|
-
constructor() {
|
1339
|
-
super('InstrumentationBreakpoints');
|
1340
|
-
}
|
1341
|
-
|
1342
|
-
override handleScript(_: SDK.Script.Script) {
|
1343
|
-
return true;
|
1344
|
-
}
|
1345
|
-
|
1346
|
-
override async sourceLocationToRawLocation(sourceLocation: Chrome.DevTools.SourceLocation):
|
1347
|
-
Promise<Chrome.DevTools.RawLocationRange[]> {
|
1348
|
-
const {rawModuleId, columnNumber, lineNumber, sourceFileURL} = sourceLocation;
|
1349
|
-
if (lineNumber === 0 && columnNumber === 0 && sourceFileURL === 'test.cc') {
|
1350
|
-
return [{rawModuleId, startOffset: 0, endOffset: 0}];
|
1351
|
-
}
|
1352
|
-
return [];
|
1353
|
-
}
|
1354
|
-
|
1355
|
-
override async rawLocationToSourceLocation(rawLocation: Chrome.DevTools.RawLocation):
|
1356
|
-
Promise<Chrome.DevTools.SourceLocation[]> {
|
1357
|
-
let sourceLocations: Chrome.DevTools.SourceLocation[] = [];
|
1358
|
-
if (rawLocation.codeOffset === 0) {
|
1359
|
-
sourceLocations =
|
1360
|
-
[{rawModuleId: rawLocation.rawModuleId, columnNumber: 0, lineNumber: 0, sourceFileURL: 'test.cc'}];
|
1361
|
-
}
|
1362
|
-
return sourceLocations;
|
1363
|
-
}
|
1364
|
-
|
1365
|
-
override async addRawModule(_rawModuleId: string, _symbolsURL: string, _rawModule: Chrome.DevTools.RawModule):
|
1366
|
-
Promise<string[]> {
|
1367
|
-
return ['test.cc']; // need to return something to get the script associated with the plugin.
|
1368
|
-
}
|
1369
|
-
}
|
1370
|
-
// Create a plugin that is able to produce a mapping for our script.
|
1371
|
-
pluginManager.addPlugin(new Plugin());
|
1372
|
-
|
1373
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1374
|
-
assert.exists(debuggerModel);
|
1375
|
-
|
1376
|
-
let sourceURL;
|
1377
|
-
const sources = await pluginManager.getSourcesForScript(script); // wait for plugin source setup to finish.
|
1378
|
-
if (!Array.isArray(sources)) {
|
1379
|
-
assert.fail('Sources is expected to be an array of sourceURLs');
|
1380
|
-
} else {
|
1381
|
-
assert.lengthOf(sources, 1);
|
1382
|
-
sourceURL = sources[0];
|
1383
|
-
}
|
1384
|
-
assert.exists(sourceURL);
|
1385
|
-
|
1386
|
-
// Get the uiSourceCode for the original source.
|
1387
|
-
const uiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForDebuggerLanguagePluginSourceURLPromise(
|
1388
|
-
debuggerModel, sourceURL);
|
1389
|
-
assert.exists(uiSourceCode);
|
1390
|
-
|
1391
|
-
// Set the breakpoint on the front-end/model side.
|
1392
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
1393
|
-
assert.exists(breakpoint);
|
1394
|
-
|
1395
|
-
// Set the breakpoint response for our upcoming request.
|
1396
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1397
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1398
|
-
locations: [
|
1399
|
-
{
|
1400
|
-
scriptId: script.scriptId,
|
1401
|
-
lineNumber: 0,
|
1402
|
-
columnNumber: 0,
|
1403
|
-
},
|
1404
|
-
],
|
1405
|
-
});
|
1406
|
-
|
1407
|
-
// Await breakpoint updates.
|
1408
|
-
await breakpoint.refreshInDebugger();
|
1409
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
1410
|
-
|
1411
|
-
// Verify the bound position.
|
1412
|
-
const boundLocations = breakpointManager.breakpointLocationsForUISourceCode(uiSourceCode);
|
1413
|
-
assert.lengthOf(boundLocations, 1);
|
1414
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.lineNumber);
|
1415
|
-
assert.strictEqual(0, boundLocations[0].uiLocation.columnNumber);
|
1416
|
-
|
1417
|
-
// Disconnect from the target. This will also unload the script.
|
1418
|
-
breakpointManager.targetManager.removeTarget(target);
|
1419
|
-
|
1420
|
-
// Make sure the source code for the script was removed from the breakpoint.
|
1421
|
-
assert.strictEqual(breakpoint.getUiSourceCodes().size, 0);
|
1422
|
-
|
1423
|
-
// Remove the breakpoint.
|
1424
|
-
await breakpoint.remove(true /* keepInStorage */);
|
1425
|
-
|
1426
|
-
// Create a new target.
|
1427
|
-
target = createTarget();
|
1428
|
-
SDK.TargetManager.TargetManager.instance().setScopeTarget(target);
|
1429
|
-
|
1430
|
-
const reloadedDebuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1431
|
-
assert.exists(reloadedDebuggerModel);
|
1432
|
-
|
1433
|
-
// Add the same script under a different scriptId.
|
1434
|
-
const reloadedScript = await backend.addScript(target, scriptInfo, null);
|
1435
|
-
|
1436
|
-
// Get the uiSourceCode for the original source.
|
1437
|
-
const reloadedUiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForDebuggerLanguagePluginSourceURLPromise(
|
1438
|
-
reloadedDebuggerModel, sourceURL);
|
1439
|
-
assert.exists(reloadedUiSourceCode);
|
1440
|
-
|
1441
|
-
// Set the breakpoint response for our upcoming request.
|
1442
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1443
|
-
breakpointId: 'RELOADED_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1444
|
-
locations: [{
|
1445
|
-
scriptId: reloadedScript.scriptId,
|
1446
|
-
lineNumber: 0,
|
1447
|
-
columnNumber: 0,
|
1448
|
-
}],
|
1449
|
-
});
|
1450
|
-
|
1451
|
-
// Register our interest in an outgoing 'resume', which should be sent as soon as
|
1452
|
-
// we have set up all breakpoints during the instrumentation pause.
|
1453
|
-
const resumeSentPromise = registerListenerOnOutgoingMessage('Debugger.resume');
|
1454
|
-
|
1455
|
-
// Inform the front-end about an instrumentation break.
|
1456
|
-
backend.dispatchDebuggerPause(reloadedScript, Protocol.Debugger.PausedEventReason.Instrumentation);
|
1457
|
-
|
1458
|
-
// Wait for the breakpoints to be set, and the resume to be sent.
|
1459
|
-
await resumeSentPromise;
|
1460
|
-
|
1461
|
-
// Verify the restored position.
|
1462
|
-
const reloadedBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(reloadedUiSourceCode);
|
1463
|
-
assert.lengthOf(reloadedBoundLocations, 1);
|
1464
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.lineNumber);
|
1465
|
-
assert.strictEqual(0, reloadedBoundLocations[0].uiLocation.columnNumber);
|
1466
|
-
});
|
1467
|
-
|
1468
|
-
it('can move breakpoints to network files that are set in matching file system files', async () => {
|
1469
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
1470
|
-
Persistence.Persistence.PersistenceImpl.instance({forceNew: true, workspace, breakpointManager});
|
1471
|
-
const fileName = Common.ParsedURL.ParsedURL.extractName(scriptDescription.url);
|
1472
|
-
|
1473
|
-
const fileSystemPath = urlString`file://path/to/filesystem`;
|
1474
|
-
const fileSystemFileUrl = urlString`${fileSystemPath + '/' + fileName}`;
|
1475
|
-
|
1476
|
-
await testBreakpointMovedOnInstrumentationBreak(fileSystemPath, fileSystemFileUrl, scriptDescription.content);
|
1477
|
-
});
|
1478
|
-
|
1479
|
-
it('can move breakpoints to network files that are set in override files', async () => {
|
1480
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
1481
|
-
SDK.NetworkManager.MultitargetNetworkManager.instance({forceNew: true});
|
1482
|
-
Persistence.Persistence.PersistenceImpl.instance({forceNew: true, workspace, breakpointManager});
|
1483
|
-
Persistence.NetworkPersistenceManager.NetworkPersistenceManager.instance(
|
1484
|
-
{forceNew: true, workspace: Workspace.Workspace.WorkspaceImpl.instance()});
|
1485
|
-
|
1486
|
-
const fileSystemPath = urlString`file://path/to/overrides`;
|
1487
|
-
const fielSystemFileUrl = urlString`${fileSystemPath + '/site/script.js'}`;
|
1488
|
-
const content = '';
|
1489
|
-
|
1490
|
-
await testBreakpointMovedOnInstrumentationBreak(
|
1491
|
-
fileSystemPath, fielSystemFileUrl, content, Persistence.PlatformFileSystem.PlatformFileSystemType.OVERRIDES);
|
1492
|
-
});
|
1493
|
-
});
|
1494
|
-
|
1495
|
-
it('removes breakpoints that resolve to the same uiLocation as a previous breakpoint', async () => {
|
1496
|
-
const scriptInfo = {url: URL, content: 'console.log(\'hello\');'};
|
1497
|
-
const script = await backend.addScript(target, scriptInfo, null);
|
1498
|
-
|
1499
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1500
|
-
assert.exists(debuggerModel);
|
1501
|
-
|
1502
|
-
// Set the breakpoint response for our upcoming requests. Both breakpoints should resolve
|
1503
|
-
// to the same raw location in order to have a clash.
|
1504
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1505
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1506
|
-
locations: [{
|
1507
|
-
scriptId: script.scriptId,
|
1508
|
-
lineNumber: 0,
|
1509
|
-
columnNumber: 0,
|
1510
|
-
}],
|
1511
|
-
});
|
1512
|
-
|
1513
|
-
void backend.responderToBreakpointByUrlRequest(URL, 2)({
|
1514
|
-
breakpointId: 'SLIDING_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1515
|
-
locations: [{
|
1516
|
-
scriptId: script.scriptId,
|
1517
|
-
lineNumber: 0,
|
1518
|
-
columnNumber: 0,
|
1519
|
-
}],
|
1520
|
-
});
|
1521
|
-
|
1522
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
1523
|
-
assert.exists(uiSourceCode);
|
1524
|
-
|
1525
|
-
// Set the breakpoint on the front-end/model side.
|
1526
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
1527
|
-
assert.exists(breakpoint);
|
1528
|
-
|
1529
|
-
// This breakpoint will slide to lineNumber: 0, columnNumber: 0 and thus
|
1530
|
-
// clash with the previous breakpoint.
|
1531
|
-
const slidingBreakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 2, 0, ...DEFAULT_BREAKPOINT);
|
1532
|
-
assert.exists(slidingBreakpoint);
|
1533
|
-
|
1534
|
-
// Wait until both breakpoints have run their updates.
|
1535
|
-
await breakpoint.refreshInDebugger();
|
1536
|
-
await slidingBreakpoint.refreshInDebugger();
|
1537
|
-
|
1538
|
-
// The first breakpoint is kept on a clash, the second one should be removed.
|
1539
|
-
assert.isFalse(breakpoint.isRemoved);
|
1540
|
-
assert.isTrue(slidingBreakpoint.isRemoved);
|
1541
|
-
});
|
1542
|
-
|
1543
|
-
it('Breakpoint does not keep file system source code alive after file system removal', async () => {
|
1544
|
-
Root.Runtime.experiments.enableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
1545
|
-
const breakpointLine = 0;
|
1546
|
-
const resolvedBreakpointLine = 1;
|
1547
|
-
|
1548
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
1549
|
-
const persistence =
|
1550
|
-
Persistence.Persistence.PersistenceImpl.instance({forceNew: true, workspace, breakpointManager});
|
1551
|
-
Persistence.NetworkPersistenceManager.NetworkPersistenceManager.instance(
|
1552
|
-
{forceNew: true, workspace: Workspace.Workspace.WorkspaceImpl.instance()});
|
1553
|
-
|
1554
|
-
// Create a file system project and source code.
|
1555
|
-
const fileName = Common.ParsedURL.ParsedURL.extractName(scriptDescription.url);
|
1556
|
-
const fileSystemPath = urlString`file://path/to/filesystem`;
|
1557
|
-
const fileSystemFileUrl = urlString`${fileSystemPath + '/' + fileName}`;
|
1558
|
-
const {uiSourceCode: fileSystemUiSourceCode, project} = createFileSystemFileForPersistenceTests(
|
1559
|
-
{fileSystemFileUrl, fileSystemPath}, scriptDescription.url, scriptDescription.content, target);
|
1560
|
-
|
1561
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1562
|
-
assert.exists(debuggerModel);
|
1563
|
-
|
1564
|
-
// Add the same script via the debugger protocol.
|
1565
|
-
const bindingCreatedPromise = persistence.once(Persistence.Persistence.Events.BindingCreated);
|
1566
|
-
const script = await backend.addScript(target, scriptDescription, null);
|
1567
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
1568
|
-
await bindingCreatedPromise;
|
1569
|
-
assert.exists(uiSourceCode);
|
1570
|
-
|
1571
|
-
// Set the breakpoint on the (network) script.
|
1572
|
-
void backend.responderToBreakpointByUrlRequest(URL, breakpointLine)({
|
1573
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1574
|
-
locations: [
|
1575
|
-
{
|
1576
|
-
scriptId: script.scriptId,
|
1577
|
-
lineNumber: resolvedBreakpointLine,
|
1578
|
-
columnNumber: 0,
|
1579
|
-
},
|
1580
|
-
],
|
1581
|
-
});
|
1582
|
-
await breakpointManager.setBreakpoint(uiSourceCode, breakpointLine, 0, ...DEFAULT_BREAKPOINT);
|
1583
|
-
|
1584
|
-
// Remove the file system project.
|
1585
|
-
const bindingRemovedPromise = persistence.once(Persistence.Persistence.Events.BindingRemoved);
|
1586
|
-
project.dispose();
|
1587
|
-
// Make sure the binding is removed.
|
1588
|
-
await bindingRemovedPromise;
|
1589
|
-
|
1590
|
-
// After this, the breakpoint manager should not refer to the file system source code anymore, but
|
1591
|
-
// the file system breakpoint location should be in the storage.
|
1592
|
-
assert.isEmpty(breakpointManager.breakpointLocationsForUISourceCode(fileSystemUiSourceCode));
|
1593
|
-
assert.lengthOf(breakpointManager.storage.breakpointItems(fileSystemUiSourceCode.url()), 1);
|
1594
|
-
|
1595
|
-
Root.Runtime.experiments.disableForTest(Root.Runtime.ExperimentName.INSTRUMENTATION_BREAKPOINTS);
|
1596
|
-
});
|
1597
|
-
|
1598
|
-
it('Breakpoints are set only into network project', async () => {
|
1599
|
-
const breakpointLine = 0;
|
1600
|
-
const workspace = Workspace.Workspace.WorkspaceImpl.instance();
|
1601
|
-
const persistence =
|
1602
|
-
Persistence.Persistence.PersistenceImpl.instance({forceNew: true, workspace, breakpointManager});
|
1603
|
-
Persistence.NetworkPersistenceManager.NetworkPersistenceManager.instance(
|
1604
|
-
{forceNew: true, workspace: Workspace.Workspace.WorkspaceImpl.instance()});
|
1605
|
-
|
1606
|
-
// Create a file system project and source code.
|
1607
|
-
const fileName = Common.ParsedURL.ParsedURL.extractName(scriptDescription.url);
|
1608
|
-
const fileSystemPath = urlString`file://path/to/filesystem`;
|
1609
|
-
const fileSystemFileUrl = urlString`${fileSystemPath + '/' + fileName}`;
|
1610
|
-
createFileSystemFileForPersistenceTests(
|
1611
|
-
{fileSystemFileUrl, fileSystemPath}, scriptDescription.url, scriptDescription.content, target);
|
1612
|
-
|
1613
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1614
|
-
assert.exists(debuggerModel);
|
1615
|
-
|
1616
|
-
// Add the same script with the same URL via the debugger protocol.
|
1617
|
-
const bindingCreatedPromise = persistence.once(Persistence.Persistence.Events.BindingCreated);
|
1618
|
-
const fileScriptDescription = {...scriptDescription, url: fileSystemFileUrl};
|
1619
|
-
const script = await backend.addScript(target, fileScriptDescription, null);
|
1620
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
1621
|
-
await bindingCreatedPromise;
|
1622
|
-
assert.exists(uiSourceCode);
|
1623
|
-
|
1624
|
-
let addedBreakpoint: Breakpoints.BreakpointManager.Breakpoint|null = null;
|
1625
|
-
breakpointManager.addEventListener(Breakpoints.BreakpointManager.Events.BreakpointAdded, ({data: {breakpoint}}) => {
|
1626
|
-
assert.isNull(addedBreakpoint, 'More than one breakpoint was added');
|
1627
|
-
addedBreakpoint = breakpoint;
|
1628
|
-
});
|
1629
|
-
|
1630
|
-
// Set the breakpoint on the (network) script.
|
1631
|
-
void backend.responderToBreakpointByUrlRequest(fileSystemFileUrl, breakpointLine)({
|
1632
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1633
|
-
locations: [
|
1634
|
-
{
|
1635
|
-
scriptId: script.scriptId,
|
1636
|
-
lineNumber: 3,
|
1637
|
-
columnNumber: 3,
|
1638
|
-
},
|
1639
|
-
],
|
1640
|
-
});
|
1641
|
-
const breakpoint =
|
1642
|
-
await breakpointManager.setBreakpoint(uiSourceCode, breakpointLine, undefined, ...DEFAULT_BREAKPOINT);
|
1643
|
-
assert.exists(breakpoint);
|
1644
|
-
|
1645
|
-
// Expect that the breakpoint is only added to the network UI source code.
|
1646
|
-
assert.strictEqual(breakpoint, addedBreakpoint);
|
1647
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [uiSourceCode]);
|
1648
|
-
});
|
1649
|
-
|
1650
|
-
it('updates a breakpoint after live editing the underlying script', async () => {
|
1651
|
-
const scriptInfo = {url: URL, content: 'console.log(\'hello\');'};
|
1652
|
-
const script = await backend.addScript(target, scriptInfo, null);
|
1653
|
-
|
1654
|
-
const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
|
1655
|
-
assert.exists(debuggerModel);
|
1656
|
-
|
1657
|
-
void backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1658
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1659
|
-
locations: [{
|
1660
|
-
scriptId: script.scriptId,
|
1661
|
-
lineNumber: 0,
|
1662
|
-
columnNumber: 0,
|
1663
|
-
}],
|
1664
|
-
});
|
1665
|
-
|
1666
|
-
setMockConnectionResponseHandler(
|
1667
|
-
'Debugger.setScriptSource', () => ({status: Protocol.Debugger.SetScriptSourceResponseStatus.Ok}));
|
1668
|
-
|
1669
|
-
const uiSourceCode = await uiSourceCodeFromScript(debuggerModel, script);
|
1670
|
-
assert.exists(uiSourceCode);
|
1671
|
-
|
1672
|
-
// Set the breakpoint on the front-end/model side.
|
1673
|
-
const breakpoint = await breakpointManager.setBreakpoint(uiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
1674
|
-
assert.exists(breakpoint);
|
1675
|
-
|
1676
|
-
// Wait for the breakpoint to be set in the backend.
|
1677
|
-
await breakpoint.refreshInDebugger();
|
1678
|
-
|
1679
|
-
// Simulate live editing. We do this from the UISourceCode instead of the `Script`
|
1680
|
-
// so the `ResourceScriptFile` updates the LiveLocation of the `ModelBreakpoint`
|
1681
|
-
// (which in turn updates the UILocation on the breakpoint).
|
1682
|
-
uiSourceCode.setWorkingCopy('\n\nconsole.log(\'hello\');');
|
1683
|
-
uiSourceCode.commitWorkingCopy();
|
1684
|
-
|
1685
|
-
// Note that `UISourceCode` does not actually track how a breakpoint moves. This
|
1686
|
-
// is normally done by CodeMirror + DebuggerPlugin. This means even though the
|
1687
|
-
// console.log moves two lines down, we still try to reset the breakpoint on line 0.
|
1688
|
-
await backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1689
|
-
breakpointId: 'BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1690
|
-
locations: [{
|
1691
|
-
scriptId: script.scriptId,
|
1692
|
-
lineNumber: 0,
|
1693
|
-
columnNumber: 0,
|
1694
|
-
}],
|
1695
|
-
});
|
1696
|
-
});
|
1697
|
-
|
1698
|
-
describe('can correctly set breakpoints for all pre-registered targets', () => {
|
1699
|
-
let mainUiSourceCode: Workspace.UISourceCode.UISourceCode;
|
1700
|
-
let workerUiSourceCode: Workspace.UISourceCode.UISourceCode;
|
1701
|
-
|
1702
|
-
let workerScript: SDK.Script.Script;
|
1703
|
-
let mainScript: SDK.Script.Script;
|
1704
|
-
|
1705
|
-
let breakpoint: Breakpoints.BreakpointManager.Breakpoint;
|
1706
|
-
|
1707
|
-
function waitForBreakpointLocationsAdded() {
|
1708
|
-
let twoBreakpointLocationsCallback: () => void;
|
1709
|
-
const twoBreakpointLocationsAddedPromise = new Promise<void>(resolve => {
|
1710
|
-
twoBreakpointLocationsCallback = resolve;
|
1711
|
-
});
|
1712
|
-
breakpointManager.addEventListener(Breakpoints.BreakpointManager.Events.BreakpointAdded, () => {
|
1713
|
-
if (breakpointManager.allBreakpointLocations().length === 2) {
|
1714
|
-
twoBreakpointLocationsCallback();
|
1715
|
-
}
|
1716
|
-
});
|
1717
|
-
return twoBreakpointLocationsAddedPromise;
|
1718
|
-
}
|
1719
|
-
|
1720
|
-
beforeEach(async () => {
|
1721
|
-
setupPageResourceLoaderForSourceMap(sourceMapContent);
|
1722
|
-
|
1723
|
-
// Create a worker target.
|
1724
|
-
const workerTarget = createTarget({name: 'worker', parentTarget: target});
|
1725
|
-
|
1726
|
-
// Add script with source map.
|
1727
|
-
const scriptInfo = {url: URL, content: COMPILED_SCRIPT_SOURCES_CONTENT};
|
1728
|
-
const sourceMapInfo = {url: SOURCE_MAP_URL, content: sourceMapContent};
|
1729
|
-
mainScript = await backend.addScript(target, scriptInfo, sourceMapInfo);
|
1730
|
-
workerScript = await backend.addScript(workerTarget, scriptInfo, sourceMapInfo);
|
1731
|
-
|
1732
|
-
// Get the uiSourceCode for the original source in the main target.
|
1733
|
-
mainUiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
1734
|
-
mainScript.debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, mainScript.isContentScript());
|
1735
|
-
assert.exists(mainUiSourceCode);
|
1736
|
-
|
1737
|
-
// Get the uiSourceCode for the original source in the worker target.
|
1738
|
-
workerUiSourceCode = await debuggerWorkspaceBinding.uiSourceCodeForSourceMapSourceURLPromise(
|
1739
|
-
workerScript.debuggerModel, ORIGINAL_SCRIPT_SOURCE_URL, workerScript.isContentScript());
|
1740
|
-
assert.exists(mainUiSourceCode);
|
1741
|
-
|
1742
|
-
// Stub the 'modelAdded' function that is called in the Breakpoint prototype.
|
1743
|
-
// The 'modelAdded' will kick off updating the debugger of each target
|
1744
|
-
// as soon as a new breakpoint was created.
|
1745
|
-
// By stubbing it and ignoring what should be done,
|
1746
|
-
// we can manually call 'modelAdded' in the order that we want,
|
1747
|
-
// and thus control which target is taken care of first.
|
1748
|
-
const modelAddedStub =
|
1749
|
-
sinon.stub(Breakpoints.BreakpointManager.Breakpoint.prototype, 'modelAdded').callsFake((() => {}));
|
1750
|
-
|
1751
|
-
// Set the breakpoint on the main target, but note that the debugger won't be updated.
|
1752
|
-
const bp = await breakpointManager.setBreakpoint(mainUiSourceCode, 0, 0, ...DEFAULT_BREAKPOINT);
|
1753
|
-
assert.exists(bp);
|
1754
|
-
breakpoint = bp;
|
1755
|
-
|
1756
|
-
// Now restore the actual behavior of 'modelAdded'.
|
1757
|
-
modelAddedStub.restore();
|
1758
|
-
});
|
1759
|
-
|
1760
|
-
it('if the target whose uiSourceCode was used for breakpoint setting is handled last', async () => {
|
1761
|
-
// Handle setting breakpoint on the worker first.
|
1762
|
-
breakpoint.modelAdded(workerScript.debuggerModel);
|
1763
|
-
await backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1764
|
-
breakpointId: 'WORKER_ID' as Protocol.Debugger.BreakpointId,
|
1765
|
-
locations: [
|
1766
|
-
{
|
1767
|
-
scriptId: workerScript.scriptId,
|
1768
|
-
lineNumber: 0,
|
1769
|
-
columnNumber: 0,
|
1770
|
-
},
|
1771
|
-
],
|
1772
|
-
});
|
1773
|
-
|
1774
|
-
// Handle setting breakpoint on the main target next.
|
1775
|
-
breakpoint.modelAdded(mainScript.debuggerModel);
|
1776
|
-
await backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1777
|
-
breakpointId: 'MAIN_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1778
|
-
locations: [
|
1779
|
-
{
|
1780
|
-
scriptId: mainScript.scriptId,
|
1781
|
-
lineNumber: 0,
|
1782
|
-
columnNumber: 0,
|
1783
|
-
},
|
1784
|
-
],
|
1785
|
-
});
|
1786
|
-
|
1787
|
-
await waitForBreakpointLocationsAdded();
|
1788
|
-
|
1789
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [mainUiSourceCode, workerUiSourceCode]);
|
1790
|
-
|
1791
|
-
const mainBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(mainUiSourceCode);
|
1792
|
-
assert.lengthOf(mainBoundLocations, 1);
|
1793
|
-
|
1794
|
-
const workerBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(workerUiSourceCode);
|
1795
|
-
assert.lengthOf(workerBoundLocations, 1);
|
1796
|
-
});
|
1797
|
-
|
1798
|
-
it('if the target whose uiSourceCode was used for breakpoint setting is handled first', async () => {
|
1799
|
-
// Handle setting breakpoint on the main target first.
|
1800
|
-
breakpoint.modelAdded(mainScript.debuggerModel);
|
1801
|
-
await backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1802
|
-
breakpointId: 'MAIN_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1803
|
-
locations: [
|
1804
|
-
{
|
1805
|
-
scriptId: mainScript.scriptId,
|
1806
|
-
lineNumber: 0,
|
1807
|
-
columnNumber: 0,
|
1808
|
-
},
|
1809
|
-
],
|
1810
|
-
});
|
1811
|
-
|
1812
|
-
// Handle setting breakpoint on the worker next.
|
1813
|
-
breakpoint.modelAdded(workerScript.debuggerModel);
|
1814
|
-
await backend.responderToBreakpointByUrlRequest(URL, 0)({
|
1815
|
-
breakpointId: 'WORKER_ID' as Protocol.Debugger.BreakpointId,
|
1816
|
-
locations: [
|
1817
|
-
{
|
1818
|
-
scriptId: workerScript.scriptId,
|
1819
|
-
lineNumber: 0,
|
1820
|
-
columnNumber: 0,
|
1821
|
-
},
|
1822
|
-
],
|
1823
|
-
});
|
1824
|
-
|
1825
|
-
await waitForBreakpointLocationsAdded();
|
1826
|
-
|
1827
|
-
assert.deepEqual(Array.from(breakpoint.getUiSourceCodes()), [mainUiSourceCode, workerUiSourceCode]);
|
1828
|
-
|
1829
|
-
const mainBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(mainUiSourceCode);
|
1830
|
-
assert.lengthOf(mainBoundLocations, 1);
|
1831
|
-
|
1832
|
-
const workerBoundLocations = breakpointManager.breakpointLocationsForUISourceCode(workerUiSourceCode);
|
1833
|
-
assert.lengthOf(workerBoundLocations, 1);
|
1834
|
-
});
|
1835
|
-
});
|
1836
|
-
|
1837
|
-
describe('supports modern Web development workflows', () => {
|
1838
|
-
it('supports webpack code splitting', async () => {
|
1839
|
-
// This is basically the "Shared code with webpack entry point code-splitting" scenario
|
1840
|
-
// outlined in http://go/devtools-source-identities, where two routes (`route1.ts` and
|
1841
|
-
// `route2.ts`) share some common code (`shared.ts`), and webpack is configured to spit
|
1842
|
-
// out a dedicated bundle for each route (`route1.js` and `route2.js`). The demo can be
|
1843
|
-
// found at https://devtools-source-identities.glitch.me/webpack-code-split/ for further
|
1844
|
-
// reference.
|
1845
|
-
const sourceRoot = 'webpack:///src';
|
1846
|
-
|
1847
|
-
// Load the script and source map for the first route.
|
1848
|
-
const route1ScriptInfo = {
|
1849
|
-
url: 'http://example.com/route1.js',
|
1850
|
-
content: 'function f(x){}\nf(1)',
|
1851
|
-
};
|
1852
|
-
const route1SourceMapInfo = {
|
1853
|
-
url: `${route1ScriptInfo.url}.map`,
|
1854
|
-
content: encodeSourceMap(['0:0 => shared.ts:0:0', '1:0 => route1.ts:0:0'], sourceRoot),
|
1855
|
-
};
|
1856
|
-
const [firstSharedUISourceCode, route1Script] = await Promise.all([
|
1857
|
-
debuggerWorkspaceBinding.waitForUISourceCodeAdded(urlString`${`${sourceRoot}/shared.ts`}`, target),
|
1858
|
-
backend.addScript(target, route1ScriptInfo, route1SourceMapInfo),
|
1859
|
-
]);
|
1860
|
-
|
1861
|
-
// Set a breakpoint in `shared.ts`.
|
1862
|
-
await Promise.all([
|
1863
|
-
backend.responderToBreakpointByUrlRequest(route1ScriptInfo.url, 0)({
|
1864
|
-
breakpointId: 'ROUTE1_JS_BREAK_INITIAL_ID' as Protocol.Debugger.BreakpointId,
|
1865
|
-
locations: [
|
1866
|
-
{
|
1867
|
-
scriptId: route1Script.scriptId,
|
1868
|
-
lineNumber: 0,
|
1869
|
-
columnNumber: 0,
|
1870
|
-
},
|
1871
|
-
],
|
1872
|
-
}),
|
1873
|
-
breakpointManager.setBreakpoint(firstSharedUISourceCode, 0, 0, ...DEFAULT_BREAKPOINT),
|
1874
|
-
]);
|
1875
|
-
|
1876
|
-
// Now inject a second route that also references `shared.ts`, which should trigger
|
1877
|
-
// removal of the original breakpoint in `route1.js`.
|
1878
|
-
const route2ScriptInfo = {
|
1879
|
-
url: 'http://example.com/route2.js',
|
1880
|
-
content: 'function f(x){}\nf(2)',
|
1881
|
-
};
|
1882
|
-
const route2SourceMapInfo = {
|
1883
|
-
url: `${route2ScriptInfo.url}.map`,
|
1884
|
-
content: encodeSourceMap(['0:0 => shared.ts:0:0', '1:0 => route2.ts:0:0'], sourceRoot),
|
1885
|
-
};
|
1886
|
-
const route1SetBreakpointByUrlRequest = backend.responderToBreakpointByUrlRequest(route1ScriptInfo.url, 0);
|
1887
|
-
const route2SetBreakpointByUrlRequest = backend.responderToBreakpointByUrlRequest(route2ScriptInfo.url, 0);
|
1888
|
-
const [, route2Script] = await Promise.all([
|
1889
|
-
backend.breakpointRemovedPromise('ROUTE1_JS_BREAK_INITIAL_ID' as Protocol.Debugger.BreakpointId),
|
1890
|
-
backend.addScript(target, route2ScriptInfo, route2SourceMapInfo),
|
1891
|
-
]);
|
1892
|
-
|
1893
|
-
// Now the BreakpointManager should migrate the breakpoints from the
|
1894
|
-
// first `shared.ts` to the second `shared.ts`.
|
1895
|
-
await Promise.all([
|
1896
|
-
route1SetBreakpointByUrlRequest({
|
1897
|
-
breakpointId: 'ROUTE1_JS_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1898
|
-
locations: [
|
1899
|
-
{
|
1900
|
-
scriptId: route1Script.scriptId,
|
1901
|
-
lineNumber: 0,
|
1902
|
-
columnNumber: 0,
|
1903
|
-
},
|
1904
|
-
],
|
1905
|
-
}),
|
1906
|
-
route2SetBreakpointByUrlRequest({
|
1907
|
-
breakpointId: 'ROUTE2_JS_BREAK_ID' as Protocol.Debugger.BreakpointId,
|
1908
|
-
locations: [
|
1909
|
-
{
|
1910
|
-
scriptId: route2Script.scriptId,
|
1911
|
-
lineNumber: 0,
|
1912
|
-
columnNumber: 0,
|
1913
|
-
},
|
1914
|
-
],
|
1915
|
-
}),
|
1916
|
-
]);
|
1917
|
-
});
|
1918
|
-
});
|
1919
|
-
});
|