diff --git a/extensions/sql-database-projects/src/controllers/projectController.ts b/extensions/sql-database-projects/src/controllers/projectController.ts index 9cb3fe5230..e5bd72297c 100644 --- a/extensions/sql-database-projects/src/controllers/projectController.ts +++ b/extensions/sql-database-projects/src/controllers/projectController.ts @@ -101,6 +101,12 @@ export class ProjectsController { } } + /** + * Creates a new folder with the project name in the specified location, and places the new .sqlproj inside it + * @param newProjName + * @param folderUri + * @param projectGuid + */ public async createNewProject(newProjName: string, folderUri: Uri, projectGuid?: string): Promise { if (projectGuid && !UUID.isUUID(projectGuid)) { throw new Error(`Specified GUID is invalid: '${projectGuid}'`); @@ -119,7 +125,7 @@ export class ProjectsController { newProjFileName += constants.sqlprojExtension; } - const newProjFilePath = path.join(folderUri.fsPath, newProjFileName); + const newProjFilePath = path.join(folderUri.fsPath, path.parse(newProjFileName).name, newProjFileName); let fileExists = false; try { diff --git a/extensions/sql-database-projects/src/test/projectController.test.ts b/extensions/sql-database-projects/src/test/projectController.test.ts index 11bcfb9107..12b2489910 100644 --- a/extensions/sql-database-projects/src/test/projectController.test.ts +++ b/extensions/sql-database-projects/src/test/projectController.test.ts @@ -166,7 +166,7 @@ describe.skip('ProjectsController: project controller operations', function (): let profilePath = await testUtils.createTestFile(baselines.publishProfileBaseline, 'publishProfile.publish.xml'); const projController = new ProjectsController(testContext.apiWrapper.object, new SqlDatabaseProjectTreeViewProvider()); - let result = await projController.readPublishProfile(vscode.Uri.parse(profilePath)); + let result = await projController.readPublishProfile(vscode.Uri.file(profilePath)); should(result.databaseName).equal('targetDb'); should(Object.keys(result.sqlCmdVariables).length).equal(1); should(result.sqlCmdVariables['ProdDatabaseName']).equal('MyProdDatabase');