diff --git a/index-test.js b/index-test.js
index 593ddd33a..24b6de986 100644
--- a/index-test.js
+++ b/index-test.js
@@ -200,6 +200,7 @@ describe(`reactElementToJSXString(ReactElement)`, () => {
).toEqual(`
`);
});
+
it(`reactElementToJSXString(
)`, () => {
expect(
reactElementToJSXString(
)
@@ -217,4 +218,40 @@ describe(`reactElementToJSXString(ReactElement)`, () => {
`);
});
+
+ it(`reactElementToJSXString(`, () => {
+ expect(
+ reactElementToJSXString()
+ ).toEqual(``);
+ });
+
+ it(`reactElementToJSXString(`, () => {
+ expect(
+ reactElementToJSXString()
+ ).toEqual(``);
+ });
+
+ it(`reactElementToJSXString(`, () => {
+ expect(
+ reactElementToJSXString()
+ ).toEqual(``);
+ });
+
+ it(`reactElementToJSXString(`, () => {
+ expect(
+ reactElementToJSXString()
+ ).toEqual(``);
+ });
+
+ it(`reactElementToJSXString(`, () => {
+ expect(
+ reactElementToJSXString()
+ ).toEqual(``);
+ });
+
+ it(`reactElementToJSXString(
]} />`, () => {
+ expect(
+ reactElementToJSXString(
]} />)
+ ).toEqual(`
]} />`);
+ });
});
diff --git a/index.js b/index.js
index 48755e3c7..bcd8e4277 100644
--- a/index.js
+++ b/index.js
@@ -116,7 +116,7 @@ function formatValue(value) {
return '<__reactElementToJSXString__Wrapper__>' +
toJSXString({ReactElement: value, inline: true}) +
'';
- } else if (isPlainObject(value)) {
+ } else if (isPlainObject(value) || Array.isArray(value)) {
return '<__reactElementToJSXString__Wrapper__>' +
stringifyObject(value) +
'';
@@ -132,7 +132,7 @@ function recurse({lvl, inline}) {
}
function stringifyObject(obj) {
- if (Object.keys(obj).length > 0) {
+ if (Object.keys(obj).length > 0 || obj.length > 0) {
obj = traverse(obj).map(function(value) {
if (isElement(value) || this.isLeaf) {
this.update(formatValue(value));