slint/api/python/tests/test_timers.py
Aurindam Jana 0cfeec1a31
Update Slint Community License (#4994)
Updated the version from 1.1 to 1.2 
Renamed the header to "Slint Royalty-free Desktop, Mobile, and Web Applications License"
Added definition of "Mobile Application" and grant of right
Moved "Limitations" to 3rd section and "License Conditions - Attributions" to 2nd section
Added flexibility to choose between showing "MadeWithSlint" as a dialog/splash screen or on a public webpage
Moved the para on copyright notices to section under "Limitations"
2024-04-15 15:18:55 +02:00

26 lines
832 B
Python

# Copyright © SixtyFPS GmbH <info@slint.dev>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.2 OR LicenseRef-Slint-commercial
import pytest
from slint import slint as native
from slint.slint import ValueType;
from datetime import timedelta
def test_timer():
global counter
counter = 0
def quit_after_two_invocations():
global counter
counter = counter + 1
if counter >= 2:
native.quit_event_loop()
test_timer = native.Timer()
test_timer.start(native.TimerMode.Repeated, timedelta(milliseconds=100), quit_after_two_invocations)
native.run_event_loop()
test_timer.stop()
assert(counter == 2)
def test_single_shot():
native.Timer.single_shot(timedelta(milliseconds=100), native.quit_event_loop)
native.run_event_loop()