~~ lineWidth: 40 ~~
== should format when empty ==
const obj = {
};

[expect]
const obj = {};

== should format when a single line ==
const obj = { prop:  5, other: 4, t };

[expect]
const obj = { prop: 5, other: 4, t };

== should format when multi-line ==
const obj = {

    prop: 5,
    other: 7,
    ...test,
    ...other
};

[expect]
const obj = {
    prop: 5,
    other: 7,
    ...test,
    ...other,
};

== should make multiple lines multi-line ==
const obj = { prop: 5, other: 6, someName: "testing" };

[expect]
const obj = {
    prop: 5,
    other: 6,
    someName: "testing",
};

== should respect blank lines in certain places ==
const obj = {

    prop: 5,
    other: 7,

    testing: 5,

};

[expect]
const obj = {
    prop: 5,
    other: 7,

    testing: 5,
};

== should prefer to be inline multi-line when exceeding line width ==
asdfasdf({ name: "Test", aliases: "testtttttttttttt" });

[expect]
asdfasdf({
    name: "Test",
    aliases: "testtttttttttttt",
});

== should turn an assignment prop into a key value prop ==
asdf({
    testing = 5,
    other = "testing",
    asdf: "asdf",
});

[expect]
asdf({
    testing: 5,
    other: "testing",
    asdf: "asdf",
});
