- This folder contains all of the files necessary for your extension.
package.json- this is the manifest file in which you declare your extension and command. The sample plugin registers a command and defines its title and command name. With this information Azure Data Studio can show the command in the command palette. It doesn’t yet need to load the plugin.extension.js- this is the main file where you will provide the implementation of your command. The file exports one function,activate, which is called the very first time your extension is activated (in this case by executing the command). Inside theactivatefunction we callregisterCommand. We pass the function containing the implementation of the command as the second parameter toregisterCommand.
- Install the debugger, search extensions for 'ms-mssql.sqlops-debug'
- Press
F5to open a new window with your extension loaded. - Run your command from the command palette by pressing (
Ctrl+Shift+PorCmd+Shift+Pon Mac) and typingHello World. - Set breakpoints in your code inside
extension.jsto debug your extension. - Find output from your extension in the debug console.
- You can relaunch the extension from the debug toolbar after changing code in
extension.js. - You can also reload (
Ctrl+RorCmd+Ron Mac) the Azure Data Studio window with your extension to load your changes.
- You can open the full set of our API when you open the file:
- SQL specific APIs:
node_modules/@types/azdata/index.d.ts. - Other APIs:
node_modules/@types/vscode/index.d.ts.
- SQL specific APIs:
- To include Proposed APIs, run
npm run proposedapiin your terminal- Proposed APIs will downloaded into:
typings/azdata.proposed.d.ts
- Proposed APIs will downloaded into:
- Open the debug viewlet (
Ctrl+Shift+DorCmd+Shift+Don Mac) and from the launch configuration dropdown pickLaunch Tests. - Press
F5to run the tests in a new window with your extension loaded. - See the output of the test result in the debug console.
- Make changes to
test/extension.test.jsor create new test files inside thetestfolder.- By convention, the test runner will only consider files matching the name pattern
**.test.js. - You can create folders inside the
testfolder to structure your tests any way you want.
- By convention, the test runner will only consider files matching the name pattern