@Test
public void convertGlide() {

    assertEquals("0.0", Convert.glide(0.0, 1, false));
    assertEquals("0.0 : 1", Convert.glide(0.0, 1, true));
    assertEquals("1.0 : 1", Convert.glide(1.0, 1, true));
    assertEquals("2.0 : 1", Convert.glide(2.0, 1, true));
    assertEquals("+2.0 : 1", Convert.glide(-2.0, 1, true));
    assertEquals("2.0", Convert.glide(20, -10, 1, false));
    assertEquals("2.0 : 1", Convert.glide(20, -10, 1, true));
    assertEquals("+2.0 : 1", Convert.glide(20, 10, 1, true));
    // Special cases
    assertEquals("", Convert.glide(0, 0, 1, true));
    assertEquals("", Convert.glide(Double.NaN, 1, true));
    assertEquals("Level", Convert.glide(Double.POSITIVE_INFINITY, 1, true));
    assertEquals("Level", Convert.glide(41, 1, true));
    assertEquals("Level", Convert.glide(20, 0, 1, true));
    assertEquals("Vertical", Convert.glide(0, 10, 1, true));
    assertEquals("Stationary", Convert.glide(0.1, 0.1, 1, true));
}