From 3ee06187d594868716873ba09eed9f750824ef46 Mon Sep 17 00:00:00 2001 From: Sam Pepose Date: Thu, 23 Jun 2016 17:38:05 -0700 Subject: [PATCH] Fixed incorrect newlines with Flow object types (#3548) --- .../babel-generator/src/node/whitespace.js | 1 + packages/babel-generator/test/index.js | 21 ++++++++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/packages/babel-generator/src/node/whitespace.js b/packages/babel-generator/src/node/whitespace.js index 12489b7275..6ba8522e08 100644 --- a/packages/babel-generator/src/node/whitespace.js +++ b/packages/babel-generator/src/node/whitespace.js @@ -167,6 +167,7 @@ exports.nodes = { */ exports.nodes.ObjectProperty = +exports.nodes.ObjectTypeProperty = exports.nodes.ObjectMethod = exports.nodes.SpreadProperty = function (node: Object, parent): ?WhitespaceObject { if (parent.properties[0] === node) { diff --git a/packages/babel-generator/test/index.js b/packages/babel-generator/test/index.js index 718d9ffbd1..b6c6f4469c 100644 --- a/packages/babel-generator/test/index.js +++ b/packages/babel-generator/test/index.js @@ -82,8 +82,27 @@ suite("programmatic generation", function() { var ast = parse(generate.default(ifStatement).code); assert.equal(ast.program.body[0].consequent.type, 'BlockStatement'); }); -}); + test("flow object indentation", function() { + var objectStatement = t.objectTypeAnnotation( + [ + t.objectTypeProperty( + t.identifier('bar'), + t.stringTypeAnnotation() + ), + ], + null, + null + ); + + var output = generate.default(objectStatement).code; + assert.equal(output, [ + '{', + ' bar: string;', + '}', + ].join('\n')); + }); +}); suite("whitespace", function () { test("empty token list", function () {