~~ lineWidth: 40 ~~ == should go multi-line when the following args are on a different line == call({ test, }, test, test); [expect] call( { test, }, test, test, ); == should go multi-line if a single arg is single-line == call({ testing, }, test, { testing, }); [expect] call( { testing, }, test, { testing, }, ); == should go multi-line if a non-inline multi-line node is multi-line in the middle == call({ test, testing, }, "test" + "testinggggggggggggggggggggg" + "other", { test, testing, }, { test, testing, }); [expect] call( { test, testing, }, "test" + "testinggggggggggggggggggggg" + "other", { test, testing, }, { test, testing, }, ); == should go multi-line if a non-inline multi-line node is at the end == call({ test, testing, }, "test" + "testinggggggggggggggggggggg" + "other"); [expect] call( { test, testing, }, "test" + "testinggggggggggggggggggggg" + "other", ); == should not go multi-line if the last arg is on a single line == setTimeout(() => { test; }, 0); [expect] setTimeout(() => { test; }, 0); == should go multi-line if the last two args are on a single line == setTimeout(() => { test; }, 0, 0); [expect] setTimeout( () => { test; }, 0, 0, ); == should keep object literal inline when going multi-line == testing({ testttttttttttt: "", other: 533 }) [expect] testing({ testttttttttttt: "", other: 533, }); == should keep array literal inline when going multi-line == testing([testing, this, out, withh, some, text]); [expect] testing([ testing, this, out, withh, some, text, ]); == should handle going multi-line for a template literal == testing(`test testing testing ${[4]} test`); [expect] testing( `test testing testing ${[4]} test`, ); == should handle going multi-line for conditional expr == testing(testinggggg ? testttttt : testing); [expect] testing( testinggggg ? testttttt : testing, ); == should handle going multi-line for binary expr == testing(testing + thisout + withsometext); [expect] testing( testing + thisout + withsometext, );