import { convertTimeMsToTimeElapsedString } from "../utils/StringHelperFunctions";

describe("StringHelperFunctions Tests", function () {
    it("transforms strings", () => {
        expect(convertTimeMsToTimeElapsedString(1000)).toEqual("1 seconds");
        expect(convertTimeMsToTimeElapsedString(5 * 60 * 1000 + 34 * 1000)).toEqual(
            "5 minutes 34 seconds",
        );
        expect(
            convertTimeMsToTimeElapsedString(
                2 * 60 * 60 * 24 * 1000 + 5 * 60 * 1000 + 34 * 1000,
            ),
        ).toEqual("2 days 5 minutes 34 seconds");
        expect(
            convertTimeMsToTimeElapsedString(
                2 * 60 * 60 * 24 * 1000 + 5 * 60 * 1000 + 34 * 1000,
                true,
            ),
        ).toEqual("2 days 5 minutes 34.000 seconds");
        expect(
            convertTimeMsToTimeElapsedString(
                2 * 60 * 60 * 24 * 1000 + 5 * 60 * 1000 + 34 * 1000 + 123,
                true,
            ),
        ).toEqual("2 days 5 minutes 34.123 seconds");
        expect(
            convertTimeMsToTimeElapsedString(
                2 * 60 * 60 * 24 * 1000 + 5 * 60 * 1000 + 34 * 1000 + 123.888,
                true,
            ),
        ).toEqual("2 days 5 minutes 34.123 seconds");    
    })
});