From 72325131940a10cf073bc5f01499ab29e384e57e Mon Sep 17 00:00:00 2001 From: zhengbli Date: Wed, 29 Jun 2016 12:01:33 -0700 Subject: [PATCH 1/2] Add nullcheck when calculating indentations for implort clause --- src/services/formatting/smartIndenter.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/services/formatting/smartIndenter.ts b/src/services/formatting/smartIndenter.ts index 120a5be6e4e67..4eebf4b9431e1 100644 --- a/src/services/formatting/smartIndenter.ts +++ b/src/services/formatting/smartIndenter.ts @@ -497,7 +497,7 @@ namespace ts.formatting { return childKind !== SyntaxKind.NamedExports; case SyntaxKind.ImportDeclaration: return childKind !== SyntaxKind.ImportClause || - (child).namedBindings.kind !== SyntaxKind.NamedImports; + ((child).namedBindings && (child).namedBindings.kind !== SyntaxKind.NamedImports); case SyntaxKind.JsxElement: return childKind !== SyntaxKind.JsxClosingElement; } From adca77003e2229b9d0ad7170676fd2b121efefc3 Mon Sep 17 00:00:00 2001 From: zhengbli Date: Wed, 29 Jun 2016 16:00:11 -0700 Subject: [PATCH 2/2] Add test --- .../formattingIllegalImportClause.ts | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tests/cases/fourslash/formattingIllegalImportClause.ts diff --git a/tests/cases/fourslash/formattingIllegalImportClause.ts b/tests/cases/fourslash/formattingIllegalImportClause.ts new file mode 100644 index 0000000000000..9e97087c000ed --- /dev/null +++ b/tests/cases/fourslash/formattingIllegalImportClause.ts @@ -0,0 +1,26 @@ +/// + +//// var expect = require('expect.js'); +//// import React from 'react'/*1*/; +//// import { mount } from 'enzyme'; +//// require('../setup'); +//// var Amount = require('../../src/js/components/amount'); + +//// describe('', () => { +//// var history +//// beforeEach(() => { +//// history = createMemoryHistory(); +//// sinon.spy(history, 'pushState'); +//// }); + +//// afterEach(() => { +//// }) + +//// it('redirects to order summary', () => { + +//// }); +//// }); + +format.document(); +goTo.marker("1"); +verify.currentLineContentIs("import React from 'react';") \ No newline at end of file