def test_palide_args():
    assert palide(
        ellipsis="-//-",
        length=20,
        pad="x",
        elide_pos=0.4,
        string="The quick brown fox jumped over the lazy dogs.",
    ) == "The qu-//-lazy dogs."
def test_palide_length():
    assert palide("Hello, world!", 3, "...") == "..."
    assert palide("Hello, world!", 10, "...") == "Hello, ..."
    assert palide("Hello, world!", 11, "...") == "Hello, w..."
    assert palide("Hello, world!", 13, "...") == "Hello, world!"
    assert palide("Hello, world!", 14, "...") == "Hello, world! "
    assert palide("Hello, world!", 20, "...") == "Hello, world!       "
def test_palide_pos():
    assert palide("Hello, world!", 11, "..", elide_pos=0.0) == "..o, world!"
    assert palide("Hello, world!", 11, "..", elide_pos=0.6) == "Hello..rld!"
    assert palide("Hello, world!", 11, "..", elide_pos=0.8) == "Hello, ..d!"
def test_palide_pad():
    assert palide("Hello, world!", 13, pad="x") == "Hello, world!"
    assert palide("Hello, world!", 18, pad="x") == "Hello, world!xxxxx"
    assert palide("Hello, world!", 18, pad="!") == "Hello, world!!!!!!"
def test_palide_ellipsis():
    assert palide("Hello, world!", 10, "~~~~~") == "Hello~~~~~"
    assert palide("Hello, world!", 10, "...") == "Hello, ..."
    assert palide("Hello, world!", 10, "..") == "Hello, w.."
    assert palide("Hello, world!", 10, "") == "Hello, wor"
def test_palide_default():
    assert palide("I am a duck.", 8) == "I am a \u2026"
    assert palide("I am a duck.", 14) == "I am a duck.  "