mirror of
https://github.com/TomSchimansky/CustomTkinter.git
synced 2023-08-10 21:13:13 +03:00
added orientation for CTkSLider, CTkProgressBar
This commit is contained in:
0
test/unit_tests/__init__.py
Normal file
0
test/unit_tests/__init__.py
Normal file
7
test/unit_tests/test_all.py
Normal file
7
test/unit_tests/test_all.py
Normal file
@ -0,0 +1,7 @@
|
||||
from test_ctk import TestCTk
|
||||
from test_ctk_toplevel import TestCTkToplevel
|
||||
from test_ctk_button import TestCTkButton
|
||||
|
||||
TestCTk().main()
|
||||
TestCTkToplevel().main()
|
||||
TestCTkButton().main()
|
112
test/unit_tests/test_ctk.py
Normal file
112
test/unit_tests/test_ctk.py
Normal file
@ -0,0 +1,112 @@
|
||||
import time
|
||||
import customtkinter
|
||||
|
||||
|
||||
class TestCTk():
|
||||
def __init__(self):
|
||||
self.root_ctk = customtkinter.CTk()
|
||||
self.root_ctk.title("TestCTk")
|
||||
|
||||
def clean(self):
|
||||
self.root_ctk.quit()
|
||||
self.root_ctk.withdraw()
|
||||
|
||||
def main(self):
|
||||
self.execute_tests()
|
||||
self.root_ctk.mainloop()
|
||||
|
||||
def execute_tests(self):
|
||||
print("\nTestCTk started:")
|
||||
start_time = 0
|
||||
|
||||
self.root_ctk.after(start_time, self.test_geometry)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_scaling)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_configure)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_appearance_mode)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_iconify)
|
||||
start_time += 1500
|
||||
|
||||
self.root_ctk.after(start_time, self.clean)
|
||||
|
||||
def test_geometry(self):
|
||||
print(" -> test_geometry: ", end="")
|
||||
self.root_ctk.geometry("100x200+200+300")
|
||||
assert self.root_ctk.current_width == 100 and self.root_ctk.current_height == 200
|
||||
|
||||
self.root_ctk.minsize(300, 400)
|
||||
assert self.root_ctk.current_width == 300 and self.root_ctk.current_height == 400
|
||||
assert self.root_ctk.min_width == 300 and self.root_ctk.min_height == 400
|
||||
|
||||
self.root_ctk.maxsize(400, 500)
|
||||
self.root_ctk.geometry("600x600")
|
||||
assert self.root_ctk.current_width == 400 and self.root_ctk.current_height == 500
|
||||
assert self.root_ctk.max_width == 400 and self.root_ctk.max_height == 500
|
||||
|
||||
self.root_ctk.maxsize(1000, 1000)
|
||||
self.root_ctk.geometry("300x400")
|
||||
self.root_ctk.resizable(False, False)
|
||||
self.root_ctk.geometry("500x600")
|
||||
assert self.root_ctk.current_width == 500 and self.root_ctk.current_height == 600
|
||||
print("successful")
|
||||
|
||||
def test_scaling(self):
|
||||
print(" -> test_scaling: ", end="")
|
||||
|
||||
customtkinter.ScalingTracker.set_window_scaling(1.5)
|
||||
self.root_ctk.geometry("300x400")
|
||||
self.root_ctk.update()
|
||||
assert self.root_ctk.current_width == 300 and self.root_ctk.current_height == 400
|
||||
assert round(self.root_ctk.winfo_width()) == 450 and round(self.root_ctk.winfo_height()) == 600
|
||||
|
||||
self.root_ctk.maxsize(400, 500)
|
||||
self.root_ctk.geometry("500x500")
|
||||
self.root_ctk.update()
|
||||
assert self.root_ctk.current_width == 400 and self.root_ctk.current_height == 500
|
||||
assert round(self.root_ctk.winfo_width()) == 600 and round(self.root_ctk.winfo_height()) == 750
|
||||
|
||||
customtkinter.ScalingTracker.set_window_scaling(1)
|
||||
self.root_ctk.update()
|
||||
assert self.root_ctk.current_width == 400 and self.root_ctk.current_height == 500
|
||||
assert round(self.root_ctk.winfo_width()) == 400 and round(self.root_ctk.winfo_height()) == 500
|
||||
print("successful")
|
||||
|
||||
def test_configure(self):
|
||||
print(" -> test_configure: ", end="")
|
||||
self.root_ctk.configure(bg="white")
|
||||
assert self.root_ctk.fg_color == "white"
|
||||
|
||||
self.root_ctk.configure(background="red")
|
||||
assert self.root_ctk.fg_color == "red"
|
||||
assert self.root_ctk.cget("bg") == "red"
|
||||
|
||||
self.root_ctk.config(fg_color=("green", "#FFFFFF"))
|
||||
assert self.root_ctk.fg_color == ("green", "#FFFFFF")
|
||||
print("successful")
|
||||
|
||||
def test_appearance_mode(self):
|
||||
print(" -> test_appearance_mode: ", end="")
|
||||
customtkinter.set_appearance_mode("light")
|
||||
self.root_ctk.config(fg_color=("green", "#FFFFFF"))
|
||||
assert self.root_ctk.cget("bg") == "green"
|
||||
|
||||
customtkinter.set_appearance_mode("dark")
|
||||
assert self.root_ctk.cget("bg") == "#FFFFFF"
|
||||
print("successful")
|
||||
|
||||
def test_iconify(self):
|
||||
print(" -> test_iconify: ", end="")
|
||||
self.root_ctk.iconify()
|
||||
self.root_ctk.after(100, self.root_ctk.deiconify)
|
||||
print("successful")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
TestCTk().main()
|
38
test/unit_tests/test_ctk_button.py
Normal file
38
test/unit_tests/test_ctk_button.py
Normal file
@ -0,0 +1,38 @@
|
||||
import time
|
||||
import customtkinter
|
||||
|
||||
|
||||
class TestCTkButton():
|
||||
def __init__(self):
|
||||
self.root_ctk = customtkinter.CTk()
|
||||
self.ctk_button = customtkinter.CTkButton(self.root_ctk)
|
||||
self.ctk_button.pack(padx=20, pady=20)
|
||||
self.root_ctk.title(self.__class__.__name__)
|
||||
|
||||
def clean(self):
|
||||
self.root_ctk.quit()
|
||||
self.root_ctk.withdraw()
|
||||
|
||||
def main(self):
|
||||
self.execute_tests()
|
||||
self.root_ctk.mainloop()
|
||||
|
||||
def execute_tests(self):
|
||||
print(f"\n{self.__class__.__name__} started:")
|
||||
|
||||
start_time = 0
|
||||
|
||||
self.root_ctk.after(start_time, self.test_iconify)
|
||||
start_time += 1500
|
||||
|
||||
self.root_ctk.after(start_time, self.clean)
|
||||
|
||||
def test_iconify(self):
|
||||
print(" -> test_iconify: ", end="")
|
||||
self.root_ctk.iconify()
|
||||
self.root_ctk.after(100, self.root_ctk.deiconify)
|
||||
print("successful")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
TestCTkButton().main()
|
114
test/unit_tests/test_ctk_toplevel.py
Normal file
114
test/unit_tests/test_ctk_toplevel.py
Normal file
@ -0,0 +1,114 @@
|
||||
import customtkinter
|
||||
|
||||
|
||||
class TestCTkToplevel():
|
||||
def __init__(self):
|
||||
self.root_ctk = customtkinter.CTk()
|
||||
self.root_ctk.title("TestCTkToplevel")
|
||||
self.ctk_toplevel = customtkinter.CTkToplevel()
|
||||
self.ctk_toplevel.title("TestCTkToplevel")
|
||||
|
||||
def clean(self):
|
||||
self.root_ctk.quit()
|
||||
self.ctk_toplevel.withdraw()
|
||||
self.root_ctk.withdraw()
|
||||
|
||||
def main(self):
|
||||
self.execute_tests()
|
||||
self.root_ctk.mainloop()
|
||||
|
||||
def execute_tests(self):
|
||||
print("\nTestCTkToplevel started:")
|
||||
start_time = 0
|
||||
|
||||
self.root_ctk.after(start_time, self.test_geometry)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_scaling)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_configure)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_appearance_mode)
|
||||
start_time += 100
|
||||
|
||||
self.root_ctk.after(start_time, self.test_iconify)
|
||||
start_time += 1500
|
||||
|
||||
self.root_ctk.after(start_time, self.clean)
|
||||
|
||||
def test_geometry(self):
|
||||
print(" -> test_geometry: ", end="")
|
||||
self.ctk_toplevel.geometry("200x300+200+300")
|
||||
assert self.ctk_toplevel.current_width == 200 and self.ctk_toplevel.current_height == 300
|
||||
|
||||
self.ctk_toplevel.minsize(300, 400)
|
||||
assert self.ctk_toplevel.current_width == 300 and self.ctk_toplevel.current_height == 400
|
||||
assert self.ctk_toplevel.min_width == 300 and self.ctk_toplevel.min_height == 400
|
||||
|
||||
self.ctk_toplevel.maxsize(400, 500)
|
||||
self.ctk_toplevel.geometry("600x600")
|
||||
assert self.ctk_toplevel.current_width == 400 and self.ctk_toplevel.current_height == 500
|
||||
assert self.ctk_toplevel.max_width == 400 and self.ctk_toplevel.max_height == 500
|
||||
|
||||
self.ctk_toplevel.maxsize(1000, 1000)
|
||||
self.ctk_toplevel.geometry("300x400")
|
||||
self.ctk_toplevel.resizable(False, False)
|
||||
self.ctk_toplevel.geometry("500x600")
|
||||
assert self.ctk_toplevel.current_width == 500 and self.ctk_toplevel.current_height == 600
|
||||
print("successful")
|
||||
|
||||
def test_scaling(self):
|
||||
print(" -> test_scaling: ", end="")
|
||||
|
||||
customtkinter.ScalingTracker.set_window_scaling(1.5)
|
||||
self.ctk_toplevel.geometry("300x400")
|
||||
self.ctk_toplevel.update()
|
||||
assert self.ctk_toplevel.current_width == 300 and self.ctk_toplevel.current_height == 400
|
||||
assert round(self.ctk_toplevel.winfo_width()) == 450 and round(self.ctk_toplevel.winfo_height()) == 600
|
||||
|
||||
self.ctk_toplevel.maxsize(400, 500)
|
||||
self.ctk_toplevel.geometry("500x500")
|
||||
self.ctk_toplevel.update()
|
||||
assert self.ctk_toplevel.current_width == 400 and self.ctk_toplevel.current_height == 500
|
||||
assert round(self.ctk_toplevel.winfo_width()) == 600 and round(self.ctk_toplevel.winfo_height()) == 750
|
||||
|
||||
customtkinter.ScalingTracker.set_window_scaling(1)
|
||||
self.ctk_toplevel.update()
|
||||
assert self.ctk_toplevel.current_width == 400 and self.ctk_toplevel.current_height == 500
|
||||
assert round(self.ctk_toplevel.winfo_width()) == 400 and round(self.ctk_toplevel.winfo_height()) == 500
|
||||
print("successful")
|
||||
|
||||
def test_configure(self):
|
||||
print(" -> test_configure: ", end="")
|
||||
self.ctk_toplevel.configure(bg="white")
|
||||
assert self.ctk_toplevel.fg_color == "white"
|
||||
|
||||
self.ctk_toplevel.configure(background="red")
|
||||
assert self.ctk_toplevel.fg_color == "red"
|
||||
assert self.ctk_toplevel.cget("bg") == "red"
|
||||
|
||||
self.ctk_toplevel.config(fg_color=("green", "#FFFFFF"))
|
||||
assert self.ctk_toplevel.fg_color == ("green", "#FFFFFF")
|
||||
print("successful")
|
||||
|
||||
def test_appearance_mode(self):
|
||||
print(" -> test_appearance_mode: ", end="")
|
||||
customtkinter.set_appearance_mode("light")
|
||||
self.ctk_toplevel.config(fg_color=("green", "#FFFFFF"))
|
||||
assert self.ctk_toplevel.cget("bg") == "green"
|
||||
|
||||
customtkinter.set_appearance_mode("dark")
|
||||
assert self.ctk_toplevel.cget("bg") == "#FFFFFF"
|
||||
print("successful")
|
||||
|
||||
def test_iconify(self):
|
||||
print(" -> test_iconify: ", end="")
|
||||
self.ctk_toplevel.iconify()
|
||||
self.ctk_toplevel.after(100, self.ctk_toplevel.deiconify)
|
||||
print("successful")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
TestCTkToplevel()
|
Reference in New Issue
Block a user