Skip to content

Commit c417e70

Browse files
committed
Fix crash in small screens and refactor test
1 parent 464f64c commit c417e70

1 file changed

Lines changed: 35 additions & 78 deletions

File tree

tests/test_pywinctl.py

Lines changed: 35 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -474,12 +474,17 @@ def basic_linux(npw: pywinctl.Window | None):
474474

475475
if sys.platform == "darwin":
476476
def basic_macOS(npw: pywinctl.Window):
477-
478477
assert npw is not None
478+
479+
def test_move(attr, value):
480+
setattr(npw, attr, value)
481+
time.sleep(timelap)
482+
new_value = getattr(npw, attr)
483+
assert new_value == value, f"Error while moving the window using the attribute {attr}. Expected value {value}, instead found {new_value}"
479484

480485
wait = True
481486
timelap = 0.50
482-
487+
483488
print("ACTIVE WINDOW:", npw.title, "/", npw.box)
484489
print()
485490
print("CLIENT FRAME:", npw.getClientFrame(), "EXTRA FRAME:", npw.getExtraFrameSize())
@@ -516,7 +521,7 @@ def basic_macOS(npw: pywinctl.Window):
516521
npw.restore(wait=wait)
517522
time.sleep(timelap)
518523
assert not npw.isMaximized
519-
524+
520525
npw.minimize(wait=wait)
521526
time.sleep(timelap)
522527
assert npw.isMinimized
@@ -560,91 +565,43 @@ def basic_macOS(npw: pywinctl.Window):
560565
# Move via the properties
561566
npw.resizeTo(601, 401, wait=wait)
562567
npw.moveTo(100, 250, wait=wait)
563-
564-
npw.left = 200
565-
time.sleep(timelap)
566-
assert npw.left == 200
567-
568-
npw.right = 200
569-
time.sleep(timelap)
570-
assert npw.right == 200
571-
572-
npw.top = 200
573-
time.sleep(timelap)
574-
assert npw.top == 200
575-
576-
npw.bottom = 800
577-
time.sleep(timelap)
578-
assert npw.bottom == 800
579-
580-
npw.topleft = (300, 400)
581-
time.sleep(timelap)
582-
assert npw.topleft == (300, 400)
583-
584-
npw.topright = (300, 400)
585-
time.sleep(timelap)
586-
assert npw.topright == (300, 400)
587-
588-
npw.bottomleft = (300, 700)
589-
time.sleep(timelap)
590-
assert npw.bottomleft == (300, 700)
591-
592-
npw.bottomright = (300, 900)
593-
time.sleep(timelap)
594-
assert npw.bottomright == (300, 900)
595-
596-
npw.midleft = (300, 400)
597-
time.sleep(timelap)
598-
assert npw.midleft == (300, 400)
599-
600-
npw.midright = (300, 400)
601-
time.sleep(timelap)
602-
assert npw.midright == (300, 400)
603-
604-
npw.midtop = (300, 400)
605-
time.sleep(timelap)
606-
assert npw.midtop == (300, 400)
607-
608-
npw.midbottom = (300, 700)
609-
time.sleep(timelap)
610-
assert npw.midbottom == (300, 700)
611-
612-
npw.center = (300, 400)
613-
time.sleep(timelap)
614-
assert npw.center == (300, 400)
615-
616-
npw.centerx = 1000
617-
time.sleep(timelap)
618-
assert npw.centerx == 1000
619-
568+
569+
test_move('left', 200)
570+
test_move('right', 200)
571+
test_move('top', 200)
572+
test_move('bottom', 800)
573+
test_move('topleft', (300, 400))
574+
test_move('topright', (300, 400))
575+
test_move('bottomleft', (300, 700))
576+
test_move('bottomright', (300, 900))
577+
test_move('midleft', (300, 400))
578+
test_move('midright', (300, 400))
579+
test_move('midtop', (300, 400))
580+
test_move('midbottom', (300, 700))
581+
test_move('center', (300, 400))
582+
test_move('centerx', 1000)
583+
test_move('centery', 300)
584+
test_move('width', 600)
585+
test_move('height', 400)
586+
587+
npw.centerx = 400
620588
npw.centery = 300
589+
test_move('size', (810, 610))
590+
591+
lowered = npw.lowerWindow()
621592
time.sleep(timelap)
622-
assert npw.centery == 300
593+
assert lowered, 'Window has not been lowered'
623594

624-
npw.width = 600
625-
time.sleep(timelap)
626-
assert npw.width == 600
627-
628-
npw.height = 400
629-
time.sleep(timelap)
630-
assert npw.height == 400
631-
632-
npw.size = (810, 610)
633-
time.sleep(timelap)
634-
assert npw.size == (810, 610)
635-
636-
npw.lowerWindow()
637-
time.sleep(timelap)
638-
639-
npw.raiseWindow()
595+
raised = npw.raiseWindow()
640596
time.sleep(timelap)
597+
assert raised, 'Window has not been raised'
641598

642599
# Test window stacking
643600
npw.lowerWindow()
644601
time.sleep(timelap)
645602
npw.raiseWindow()
646603
time.sleep(timelap)
647-
604+
648605
# Test parent methods
649606
parent = npw.getParent()
650607
assert parent and npw.isChild(parent)

0 commit comments

Comments
 (0)