diff --git a/scm-ui/src/repos/components/changesets/changesets.js b/scm-ui/src/repos/components/changesets/changesets.js index 9d4821e5ec..f61a89c74b 100644 --- a/scm-ui/src/repos/components/changesets/changesets.js +++ b/scm-ui/src/repos/components/changesets/changesets.js @@ -4,17 +4,18 @@ export type Description = { message: string }; -export function parseDescription(description: string): Description { - const lineBreak = description.indexOf("\n"); +export function parseDescription(description?: string): Description { + const desc = description ? description : ""; + const lineBreak = desc.indexOf("\n"); let title; let message = ""; if (lineBreak > 0) { - title = description.substring(0, lineBreak); - message = description.substring(lineBreak + 1); + title = desc.substring(0, lineBreak); + message = desc.substring(lineBreak + 1); } else { - title = description; + title = desc; } return { diff --git a/scm-ui/src/repos/components/changesets/changesets.test.js b/scm-ui/src/repos/components/changesets/changesets.test.js index cd3788e9fb..ea92bcead3 100644 --- a/scm-ui/src/repos/components/changesets/changesets.test.js +++ b/scm-ui/src/repos/components/changesets/changesets.test.js @@ -13,4 +13,10 @@ describe("parseDescription tests", () => { const desc = parseDescription("Hello Trillian"); expect(desc.title).toBe("Hello Trillian"); }); + + it("should return an empty description for undefined", () => { + const desc = parseDescription(); + expect(desc.title).toBe(""); + expect(desc.message).toBe(""); + }); });