@@ -0,0 +1,1037 @@
+# -*- coding: utf-8 -*-%0A%0A%22%22%22%0Atests.test_timer%0A~~~~~~~~~~~~~~~~~~~~~%0A%0A%22%22%22%0A%0Aimport time%0Aimport re%0A%0Afrom yaspin import yaspin%0A%0A%0Adef test_no_timer():%0A    sp = yaspin(timer=False)%0A    sp._freeze(%22%22)%0A%0A    assert re.search(r%22%5C(%5Cd+:%5Cd%7B2%7D:%5Cd%7B2%7D%5C)%22, sp._last_frame) is None%0A%0A%0Adef test_timer_idle():%0A    sp = yaspin(timer=True)%0A%0A    assert sp.elapsed_time == 0%0A%0A    sp._freeze(%22%22)%0A%0A    assert %22(0:00:00)%22 in sp._last_frame%0A%0A%0Adef test_timer_in_progress():%0A    sp = yaspin(timer=True)%0A    sp.start()%0A%0A    t1 = sp.elapsed_time%0A    time.sleep(0.001)%0A    t2 = sp.elapsed_time%0A%0A    sp.stop()%0A%0A    assert t2 - t1 %3E= 0.001%0A%0A    sp._freeze(%22%22)%0A%0A    assert re.search(r%22%5C(%5Cd+:%5Cd%7B2%7D:%5Cd%7B2%7D%5C)%22, sp._last_frame) is not None%0A%0A%0Adef test_timer_finished():%0A    sp = yaspin(timer=True)%0A    sp.start()%0A%0A    time.sleep(0.001)%0A%0A    sp.stop()%0A%0A    assert sp.elapsed_time %3E= 0.001%0A    %0A    t1 = sp.elapsed_time%0A    time.sleep(0.001)%0A    t2 = sp.elapsed_time%0A%0A    assert t1 == t2%0A%0A    sp._freeze(%22%22)%0A%0A    assert re.search(r%22%5C(%5Cd+:%5Cd%7B2%7D:%5Cd%7B2%7D%5C)%22, sp._last_frame) is not None%0A

Add tests for timer functionality