226 lines
6.9 KiB
TypeScript
226 lines
6.9 KiB
TypeScript
|
import { ESLintUtils } from '@typescript-eslint/utils'
|
||
|
import rule from '../../src/rules/test-for-null-using-isNullObject';
|
||
|
|
||
|
const ruleTester = new ESLintUtils.RuleTester({
|
||
|
parser: '@typescript-eslint/parser',
|
||
|
});
|
||
|
|
||
|
const errors = [{ messageId: "useIsNullObject", data: { name: "dataSheet" } }];
|
||
|
|
||
|
ruleTester.run('test-for-null-using-isNullObject', rule, {
|
||
|
valid: [
|
||
|
{
|
||
|
code: `
|
||
|
await Excel.run(async (context) => {
|
||
|
var dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}`,
|
||
|
},
|
||
|
],
|
||
|
invalid: [
|
||
|
{
|
||
|
code: `
|
||
|
await Excel.run(async (context) => {
|
||
|
var dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
await Excel.run(async (context) => {
|
||
|
var dataSheet = context.workbook.worksheets.getItemOrNullObject(\"Data\");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add(\"Data\");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
if (dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (!dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (!dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (true && dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (true && dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (null != dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
for (var i = 0; i < 5; i++) {
|
||
|
if (dataSheet) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
for (var i = 0; i < 5; i++) {
|
||
|
if (dataSheet.isNullObject) {
|
||
|
dataSheet = context.workbook.worksheets.add("Data");
|
||
|
}
|
||
|
}
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
{
|
||
|
code: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
do {
|
||
|
console.log("test case");
|
||
|
} while (dataSheet);
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
errors,
|
||
|
output: `
|
||
|
var dataSheet;
|
||
|
dataSheet = context.workbook.worksheets.getItemOrNullObject("Data");
|
||
|
return context.sync().then(function () {
|
||
|
do {
|
||
|
console.log("test case");
|
||
|
} while (dataSheet.isNullObject);
|
||
|
dataSheet.position = 1;
|
||
|
});`,
|
||
|
},
|
||
|
]
|
||
|
});
|