fun wrapLongWords()

in commons/src/jvmTest/kotlin/org/jetbrains/letsPlot/commons/formatting/string/WordWrapperTest.kt [100:199]


    fun wrapLongWords() {
        assertThat(wrap("amet, consectetur adipiscing elit", 11))
            .isEqualTo(
                """
                |amet,
                |consectetur
                |adipiscing
                |elit
                """.trimMargin()
            )

        //If long word stay after space character, what have position index greater than string.length / 3,
        //then long word will be wrap at new line
        assertThat(wrap("Lorem ipsum abcdefghijklmnopqrstuvwxyz, abcdefghijklmnopqrstuvwxyz elit.", 20))
            .isEqualTo(
                """
                |Lorem ipsum abcdefgh
                |ijklmnopqrstuvwxyz,
                |abcdefghijklmnopqrst
                |uvwxyz elit.
                """.trimMargin()
            )
        //If long word stay after space character, what have position index lower than string.length / 3,
        //then long word will be cut and wrap at current line
        assertThat(wrap("Lorem abcdefghijklmnopqrstuvwxyz, abcdefghijklmnopqrstuvwxyz elit.", 20))
            .isEqualTo(
                """
                |Lorem abcdefghijklmn
                |opqrstuvwxyz, abcdef
                |ghijklmnopqrstuvwxyz
                |elit.
                """.trimMargin()
            )

        assertThat(
            wrap(
                "XYABAACYYDBASXXYAUAOKXYABAACYYXYABAACYYDBASXXYAUAOKDBASXXYAUAOK a scale ASSDASDASDASDASDASDASDASDASDAS benzimidazole QWQWQWQWQWEQEQEQWQWQEQEQWQWQEQ",
                30
            )
        )
            .isEqualTo(
                """
                |XYABAACYYDBASXXYAUAOKXYABAACYY
                |XYABAACYYDBASXXYAUAOKDBASXXYAU
                |AOK a scale
                |ASSDASDASDASDASDASDASDASDASDAS
                |benzimidazole
                |QWQWQWQWQWEQEQEQWQWQEQEQWQWQEQ
                """.trimMargin()
            )

        assertThat(
            wrap(
                "XYABAACYYDBASXXYAUAOKXYABAACYYXYABAACYYDBASXXYAUAOKDBASXXYAUAOK a scale ASSDASDASDASDASDASDASDASDASDASASDAS benzimidazole QWQWQWQWQWEQEQEQWQWQEQEQWQWQEQQWQWQWQWQWQWQW",
                30
            )
        )
            .isEqualTo(
                """
                |XYABAACYYDBASXXYAUAOKXYABAACYY
                |XYABAACYYDBASXXYAUAOKDBASXXYAU
                |AOK a scale ASSDASDASDASDASDAS
                |DASDASDASDASASDAS
                |benzimidazole QWQWQWQWQWEQEQEQ
                |WQWQEQEQWQWQEQQWQWQWQWQWQWQW
                """.trimMargin()
            )
        assertThat(
            wrap(
                "XYABAACYYDBASXXYAUAOKXYABAACYYXYABAACYYDBASXXYAUAOKDBASXXYAUAOK a scale ASSDASDASDASDASDASDASDASDASDASASDAS benzimidazole QWQWQWQWQWEQEQEQWQWQEQEQWQWQEQQWQWQWQWQWQWQW",
                31
            )
        )
            .isEqualTo(
                """
                |XYABAACYYDBASXXYAUAOKXYABAACYYX
                |YABAACYYDBASXXYAUAOKDBASXXYAUAO
                |K a scale ASSDASDASDASDASDASDAS
                |DASDASDASASDAS benzimidazole QW
                |QWQWQWQWEQEQEQWQWQEQEQWQWQEQQWQ
                |WQWQWQWQWQW
                """.trimMargin()
            )
        assertThat(
            wrap(
                "XYABAACYYDBASXXYAUAOKXYABAACYYXYABAACYYDBASXXYAUAOKDBASXXYAUAOK a scale ASSDASDASDASDASDASDASDASDASDASASDAS benzimidazole QWQWQWQWQWEQEQEQWQWQEQEQWQWQEQQWQWQWQWQWQWQW",
                31
            )
        )
            .isEqualTo(
                """
                |XYABAACYYDBASXXYAUAOKXYABAACYYX
                |YABAACYYDBASXXYAUAOKDBASXXYAUAO
                |K a scale ASSDASDASDASDASDASDAS
                |DASDASDASASDAS benzimidazole QW
                |QWQWQWQWEQEQEQWQWQEQEQWQWQEQQWQ
                |WQWQWQWQWQW
                """.trimMargin()
            )
    }