From c4235f2aea82081c8914c1963fba3773875451be Mon Sep 17 00:00:00 2001 From: Kermit Date: Thu, 20 Dec 2018 13:22:15 +0800 Subject: [PATCH 1/4] Enable strict null checking for String test --- src/tsconfig.strictNullChecks.json | 1 + src/vs/base/test/common/strings.test.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/tsconfig.strictNullChecks.json b/src/tsconfig.strictNullChecks.json index 50696af8e1c71..07243f2a39a14 100644 --- a/src/tsconfig.strictNullChecks.json +++ b/src/tsconfig.strictNullChecks.json @@ -144,6 +144,7 @@ "./vs/base/test/common/paths.test.ts", "./vs/base/test/common/resources.test.ts", "./vs/base/test/common/scrollable.test.ts", + "./vs/base/test/common/strings.test.ts", "./vs/base/test/common/types.test.ts", "./vs/base/test/common/utils.ts", "./vs/base/test/common/uuid.test.ts", diff --git a/src/vs/base/test/common/strings.test.ts b/src/vs/base/test/common/strings.test.ts index 2e8ee07797bf1..cee9c7a1b55f5 100644 --- a/src/vs/base/test/common/strings.test.ts +++ b/src/vs/base/test/common/strings.test.ts @@ -320,7 +320,7 @@ suite('Strings', () => { }); test('fuzzyContains', () => { - assert.ok(!strings.fuzzyContains(void 0, null)); + assert.ok(!strings.fuzzyContains((void 0)!, null!)); assert.ok(strings.fuzzyContains('hello world', 'h')); assert.ok(!strings.fuzzyContains('hello world', 'q')); assert.ok(strings.fuzzyContains('hello world', 'hw')); From 6b602b688f7bf020731434143f19f4eb13003be3 Mon Sep 17 00:00:00 2001 From: Kermit Date: Fri, 21 Dec 2018 00:09:31 +0800 Subject: [PATCH 2/4] Enable strict null checking for node/storage test --- src/tsconfig.strictNullChecks.json | 1 + src/vs/base/test/node/storage/storage.test.ts | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/tsconfig.strictNullChecks.json b/src/tsconfig.strictNullChecks.json index 115f2ba869ea5..3d72dfe684614 100644 --- a/src/tsconfig.strictNullChecks.json +++ b/src/tsconfig.strictNullChecks.json @@ -164,6 +164,7 @@ "./vs/base/test/node/processes/fixtures/fork.ts", "./vs/base/test/node/processes/fixtures/fork_large.ts", "./vs/base/test/node/processes/processes.test.ts", + "./vs/base/test/node/storage/storage.test.ts", "./vs/base/test/node/stream/stream.test.ts", "./vs/base/test/node/uri.test.perf.ts", "./vs/base/test/node/utils.ts", diff --git a/src/vs/base/test/node/storage/storage.test.ts b/src/vs/base/test/node/storage/storage.test.ts index 134379de4abd2..f8f7cd58dfaa6 100644 --- a/src/vs/base/test/node/storage/storage.test.ts +++ b/src/vs/base/test/node/storage/storage.test.ts @@ -138,7 +138,7 @@ suite('Storage Library', () => { change.set('foo', void 0); database.fireDidChangeItemsExternal({ items: change }); ok(changes.has('foo')); - equal(storage.get('foo', null), null); + equal(storage.get('foo', null!), null); changes.clear(); // Nothing happens if changing to same value @@ -263,7 +263,7 @@ suite('SQLite Storage Library', () => { } async function testDBBasics(path, logError?: (error) => void) { - let options: ISQLiteStorageDatabaseOptions; + let options!: ISQLiteStorageDatabaseOptions; if (logError) { options = { logging: { From f9b74b28016b7dbf13573540b58436389e83b0a7 Mon Sep 17 00:00:00 2001 From: Kermit Date: Fri, 21 Dec 2018 00:13:05 +0800 Subject: [PATCH 3/4] Enable strict null checking for browser/htmlContent test --- src/tsconfig.strictNullChecks.json | 1 + src/vs/base/test/browser/htmlContent.test.ts | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/tsconfig.strictNullChecks.json b/src/tsconfig.strictNullChecks.json index 3d72dfe684614..86df979fb1f64 100644 --- a/src/tsconfig.strictNullChecks.json +++ b/src/tsconfig.strictNullChecks.json @@ -103,6 +103,7 @@ "./vs/base/test/browser/browser.test.ts", "./vs/base/test/browser/comparers.test.ts", "./vs/base/test/browser/dom.test.ts", + "./vs/base/test/browser/htmlContent.test.ts", "./vs/base/test/browser/highlightedLabel.test.ts", "./vs/base/test/browser/progressBar.test.ts", "./vs/base/test/browser/ui/contextview/contextview.test.ts", diff --git a/src/vs/base/test/browser/htmlContent.test.ts b/src/vs/base/test/browser/htmlContent.test.ts index 20db9845e0a0e..be7a575775645 100644 --- a/src/vs/base/test/browser/htmlContent.test.ts +++ b/src/vs/base/test/browser/htmlContent.test.ts @@ -26,7 +26,7 @@ suite('HtmlContent', () => { test('simple formatting', () => { var result: HTMLElement = renderFormattedText('**bold**'); assert.strictEqual(result.children.length, 1); - assert.strictEqual(result.firstChild.textContent, 'bold'); + assert.strictEqual(result.firstChild!.textContent, 'bold'); assert.strictEqual((result.firstChild).tagName, 'B'); assert.strictEqual(result.innerHTML, 'bold'); @@ -62,7 +62,7 @@ suite('HtmlContent', () => { var event: MouseEvent = document.createEvent('MouseEvent'); event.initEvent('click', true, true); - result.firstChild.dispatchEvent(event); + result.firstChild!.dispatchEvent(event); assert.strictEqual(callbackCalled, true); }); @@ -81,7 +81,7 @@ suite('HtmlContent', () => { var event: MouseEvent = document.createEvent('MouseEvent'); event.initEvent('click', true, true); - result.firstChild.firstChild.firstChild.dispatchEvent(event); + result.firstChild!.firstChild!.firstChild!.dispatchEvent(event); assert.strictEqual(callbackCalled, true); }); From a70e9f732f81a237a5778ba44d0d09c076be6966 Mon Sep 17 00:00:00 2001 From: Kermit Date: Fri, 21 Dec 2018 00:19:30 +0800 Subject: [PATCH 4/4] Enable strict null checking for browser/ui/dataTree test --- src/tsconfig.strictNullChecks.json | 1 + .../test/browser/ui/tree/dataTree.test.ts | 86 +++++++++---------- 2 files changed, 44 insertions(+), 43 deletions(-) diff --git a/src/tsconfig.strictNullChecks.json b/src/tsconfig.strictNullChecks.json index 86df979fb1f64..0f3bfe86fe2a1 100644 --- a/src/tsconfig.strictNullChecks.json +++ b/src/tsconfig.strictNullChecks.json @@ -116,6 +116,7 @@ "./vs/base/test/browser/ui/scrollbar/scrollbarState.test.ts", "./vs/base/test/browser/ui/splitview/splitview.test.ts", "./vs/base/test/browser/ui/tree/asyncDataTree.test.ts", + "./vs/base/test/browser/ui/tree/dataTree.test.ts", "./vs/base/test/browser/ui/tree/indexTreeModel.test.ts", "./vs/base/test/browser/ui/tree/objectTree.test.ts", "./vs/base/test/browser/ui/tree/objectTreeModel.test.ts", diff --git a/src/vs/base/test/browser/ui/tree/dataTree.test.ts b/src/vs/base/test/browser/ui/tree/dataTree.test.ts index 218d9407b5124..fee529b745e0a 100644 --- a/src/vs/base/test/browser/ui/tree/dataTree.test.ts +++ b/src/vs/base/test/browser/ui/tree/dataTree.test.ts @@ -77,34 +77,34 @@ suite('DataTree', function () { tree.setInput(root); let navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 10); - assert.equal(navigator.next().value, 11); - assert.equal(navigator.next().value, 12); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); - - tree.collapse(root.children[0]); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 10); + assert.equal(navigator.next()!.value, 11); + assert.equal(navigator.next()!.value, 12); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); + + tree.collapse(root.children![0]); navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); - tree.setSelection([root.children[1]]); - tree.setFocus([root.children[2]]); + tree.setSelection([root.children![1]]); + tree.setFocus([root.children![2]]); tree.setInput(empty); tree.setInput(root); navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 10); - assert.equal(navigator.next().value, 11); - assert.equal(navigator.next().value, 12); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 10); + assert.equal(navigator.next()!.value, 11); + assert.equal(navigator.next()!.value, 12); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); assert.deepEqual(tree.getSelection(), []); assert.deepEqual(tree.getFocus(), []); @@ -114,35 +114,35 @@ suite('DataTree', function () { tree.setInput(root); let navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 10); - assert.equal(navigator.next().value, 11); - assert.equal(navigator.next().value, 12); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); - - tree.collapse(root.children[0]); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 10); + assert.equal(navigator.next()!.value, 11); + assert.equal(navigator.next()!.value, 12); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); + + tree.collapse(root.children![0]); navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); - tree.setSelection([root.children[1]]); - tree.setFocus([root.children[2]]); + tree.setSelection([root.children![1]]); + tree.setFocus([root.children![2]]); const viewState = tree.getViewState(); tree.setInput(empty); tree.setInput(root, viewState); navigator = tree.navigate(); - assert.equal(navigator.next().value, 0); - assert.equal(navigator.next().value, 1); - assert.equal(navigator.next().value, 2); - assert.equal(navigator.next(), null); + assert.equal(navigator.next()!.value, 0); + assert.equal(navigator.next()!.value, 1); + assert.equal(navigator.next()!.value, 2); + assert.equal(navigator.next()!, null); - assert.deepEqual(tree.getSelection(), [root.children[1]]); - assert.deepEqual(tree.getFocus(), [root.children[2]]); + assert.deepEqual(tree.getSelection(), [root.children![1]]); + assert.deepEqual(tree.getFocus(), [root.children![2]]); }); }); \ No newline at end of file