Surfacing better error messages about SQLCMD var names (#22509)

* Surfacing better error messages about SQLCMD var names

* correcting docstring

* adding space to join char
This commit is contained in:
Benjin Dubishar
2023-03-29 14:23:03 -07:00
committed by GitHub
parent 2a9705c495
commit edc2c5e200
5 changed files with 37 additions and 38 deletions

View File

@@ -58,29 +58,28 @@ describe('Tests to verify utils functions', function (): void {
it('Should determine invalid sqlcmd variable names', () => {
// valid names
should(utils.isValidSqlCmdVariableName('$(test)')).equal(true);
should(utils.isValidSqlCmdVariableName('$(test )')).equal(true, 'trailing spaces should be valid because they will be trimmed');
should(utils.isValidSqlCmdVariableName('test')).equal(true);
should(utils.isValidSqlCmdVariableName('test ')).equal(true, 'trailing spaces should be valid because they will be trimmed');
should(utils.isValidSqlCmdVariableName('$(test')).equal(true);
should(utils.isValidSqlCmdVariableName('$(test ')).equal(true, 'trailing spaces should be valid because they will be trimmed');
should(utils.validateSqlCmdVariableName('$(test)')).equal(null);
should(utils.validateSqlCmdVariableName('$(test )')).equal(null, 'trailing spaces should be valid because they will be trimmed');
should(utils.validateSqlCmdVariableName('test')).equal(null);
should(utils.validateSqlCmdVariableName('test ')).equal(null, 'trailing spaces should be valid because they will be trimmed');
should(utils.validateSqlCmdVariableName('$(test')).equal(null);
should(utils.validateSqlCmdVariableName('$(test ')).equal(null, 'trailing spaces should be valid because they will be trimmed');
// whitespace
should(utils.isValidSqlCmdVariableName('')).equal(false);
should(utils.isValidSqlCmdVariableName(' ')).equal(false);
should(utils.isValidSqlCmdVariableName(' ')).equal(false);
should(utils.isValidSqlCmdVariableName('test abc')).equal(false);
should(utils.isValidSqlCmdVariableName(' ')).equal(false);
should(utils.validateSqlCmdVariableName('')).equal(constants.sqlcmdVariableNameCannotContainWhitespace(''));
should(utils.validateSqlCmdVariableName(' ')).equal(constants.sqlcmdVariableNameCannotContainWhitespace(' '));
should(utils.validateSqlCmdVariableName(' ')).equal(constants.sqlcmdVariableNameCannotContainWhitespace(' '));
should(utils.validateSqlCmdVariableName('test abc')).equal(constants.sqlcmdVariableNameCannotContainWhitespace('test abc'));
should(utils.validateSqlCmdVariableName(' ')).equal(constants.sqlcmdVariableNameCannotContainWhitespace(' '));
// invalid characters
should(utils.isValidSqlCmdVariableName('$($test')).equal(false);
should(utils.isValidSqlCmdVariableName('$test')).equal(false);
should(utils.isValidSqlCmdVariableName('$test')).equal(false);
should(utils.isValidSqlCmdVariableName('test@')).equal(false);
should(utils.isValidSqlCmdVariableName('test#')).equal(false);
should(utils.isValidSqlCmdVariableName('test"')).equal(false);
should(utils.isValidSqlCmdVariableName('test\'')).equal(false);
should(utils.isValidSqlCmdVariableName('test-1')).equal(false);
should(utils.validateSqlCmdVariableName('$($test')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('$($test'));
should(utils.validateSqlCmdVariableName('$test')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('$test'));
should(utils.validateSqlCmdVariableName('test@')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('test@'));
should(utils.validateSqlCmdVariableName('test#')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('test#'));
should(utils.validateSqlCmdVariableName('test"')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('test"'));
should(utils.validateSqlCmdVariableName('test\'')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('test\''));
should(utils.validateSqlCmdVariableName('test-1')).equal(constants.sqlcmdVariableNameCannotContainIllegalChars('test-1'));
});
it('Should convert from milliseconds to hr min sec correctly', () => {