From 5c5d91afb6514e9981e0af61e40c9a9be249972d Mon Sep 17 00:00:00 2001 From: Iven Schlegelmilch Date: Sat, 22 Jun 2024 01:37:53 +0200 Subject: [PATCH] even more tests --- .../WBCanvasTests.class.st | 10 +-- .../WBResizeBarTests.class.st | 66 +++++++++++++++++++ .../WBResizeHandleTests.class.st | 66 +++++++++++++++++++ .../WBTextfieldTests.class.st | 15 +++-- 4 files changed, 148 insertions(+), 9 deletions(-) create mode 100644 src/SqueakWhiteboard-Tests/WBResizeBarTests.class.st create mode 100644 src/SqueakWhiteboard-Tests/WBResizeHandleTests.class.st diff --git a/src/SqueakWhiteboard-Tests/WBCanvasTests.class.st b/src/SqueakWhiteboard-Tests/WBCanvasTests.class.st index 6b6a6de..2a76257 100644 --- a/src/SqueakWhiteboard-Tests/WBCanvasTests.class.st +++ b/src/SqueakWhiteboard-Tests/WBCanvasTests.class.st @@ -47,7 +47,7 @@ WBCanvasTests >> tearDown [ ] { - #category : #tests, + #category : #testing, #'squeak_changestamp' : 'is 6/21/2024 20:36' } WBCanvasTests >> testActiveElement [ @@ -62,7 +62,7 @@ WBCanvasTests >> testActiveElement [ ] { - #category : #tests, + #category : #testing, #'squeak_changestamp' : 'is 6/21/2024 23:52' } WBCanvasTests >> testClampElementToCanvas [ @@ -80,7 +80,7 @@ WBCanvasTests >> testClampElementToCanvas [ ] { - #category : #tests, + #category : #testing, #'squeak_changestamp' : 'is 6/21/2024 18:50' } WBCanvasTests >> testElementsCollection [ @@ -99,7 +99,7 @@ WBCanvasTests >> testElementsCollection [ ] { - #category : #tests, + #category : #testing, #'squeak_changestamp' : 'is 6/22/2024 00:42' } WBCanvasTests >> testMouseEvents [ @@ -114,7 +114,7 @@ WBCanvasTests >> testMouseEvents [ ] { - #category : #tests, + #category : #testing, #'squeak_changestamp' : 'is 6/21/2024 18:54' } WBCanvasTests >> testRectangleCreate [ diff --git a/src/SqueakWhiteboard-Tests/WBResizeBarTests.class.st b/src/SqueakWhiteboard-Tests/WBResizeBarTests.class.st new file mode 100644 index 0000000..8b830a7 --- /dev/null +++ b/src/SqueakWhiteboard-Tests/WBResizeBarTests.class.st @@ -0,0 +1,66 @@ +Class { + #name : #WBResizeBarTests, + #superclass : #TestCase, + #instVars : [ + 'canvas' + ], + #category : #'SqueakWhiteboard-Tests' +} + +{ + #category : #accessing, + #'squeak_changestamp' : 'si 6/7/2024 00:30' +} +WBResizeBarTests >> canvas [ + + ^ canvas +] + +{ + #category : #accessing, + #'squeak_changestamp' : 'si 6/21/2024 00:53' +} +WBResizeBarTests >> canvas: anObject [ + + canvas := anObject +] + +{ + #category : #setUp, + #'squeak_changestamp' : 'is 6/15/2024 12:58' +} +WBResizeBarTests >> setUp [ + + super setUp. + self canvas: WBCanvas new + +] + +{ + #category : #tearDown, + #'squeak_changestamp' : 'is 6/4/2024 17:24' +} +WBResizeBarTests >> tearDown [ + + super tearDown. + self canvas ifNotNil: [:canvas | canvas owner delete] +] + +{ + #category : #testing, + #'squeak_changestamp' : 'is 6/22/2024 01:30' +} +WBResizeBarTests >> testMouseEvents [ + | aResizeBar aMouseEvent prevCursor | + + aResizeBar := WBResizeBar new. + aMouseEvent := MouseButtonEvent new. + aMouseEvent setType: #mouseDown position: aResizeBar position which: 4 buttons: aMouseEvent class redButton hand: HandMorph new stamp: 0. + self assert: (aResizeBar handlesMouseDown: aMouseEvent) = true. + self assert: (aResizeBar handlesMouseOver: aMouseEvent) = true. + prevCursor := Cursor currentCursor. + aResizeBar mouseEnter: aMouseEvent. + self assert: Cursor currentCursor = Cursor move. + aResizeBar mouseLeave: aMouseEvent. + self assert: Cursor currentCursor = prevCursor +] diff --git a/src/SqueakWhiteboard-Tests/WBResizeHandleTests.class.st b/src/SqueakWhiteboard-Tests/WBResizeHandleTests.class.st new file mode 100644 index 0000000..2d61c97 --- /dev/null +++ b/src/SqueakWhiteboard-Tests/WBResizeHandleTests.class.st @@ -0,0 +1,66 @@ +Class { + #name : #WBResizeHandleTests, + #superclass : #TestCase, + #instVars : [ + 'canvas' + ], + #category : #'SqueakWhiteboard-Tests' +} + +{ + #category : #accessing, + #'squeak_changestamp' : 'si 6/7/2024 00:30' +} +WBResizeHandleTests >> canvas [ + + ^ canvas +] + +{ + #category : #accessing, + #'squeak_changestamp' : 'si 6/21/2024 00:53' +} +WBResizeHandleTests >> canvas: anObject [ + + canvas := anObject +] + +{ + #category : #setUp, + #'squeak_changestamp' : 'is 6/15/2024 12:58' +} +WBResizeHandleTests >> setUp [ + + super setUp. + self canvas: WBCanvas new + +] + +{ + #category : #tearDown, + #'squeak_changestamp' : 'is 6/4/2024 17:24' +} +WBResizeHandleTests >> tearDown [ + + super tearDown. + self canvas ifNotNil: [:canvas | canvas owner delete] +] + +{ + #category : #testing, + #'squeak_changestamp' : 'is 6/22/2024 01:34' +} +WBResizeHandleTests >> testMouseEvents [ + | aResizeBar aMouseEvent prevCursor | + + aResizeBar := WBResizeBar new. + aMouseEvent := MouseButtonEvent new. + aMouseEvent setType: #mouseDown position: aResizeBar position which: 4 buttons: aMouseEvent class redButton hand: HandMorph new stamp: 0. + self assert: (aResizeBar handlesMouseDown: aMouseEvent) = true. + self assert: (aResizeBar handlesMouseOver: aMouseEvent) = true. + prevCursor := Cursor currentCursor. + aResizeBar mouseEnter: aMouseEvent. + self assert: Cursor currentCursor = Cursor move. + aResizeBar mouseLeave: aMouseEvent. + self assert: Cursor currentCursor = prevCursor +] diff --git a/src/SqueakWhiteboard-Tests/WBTextfieldTests.class.st b/src/SqueakWhiteboard-Tests/WBTextfieldTests.class.st index 303f7ce..e2eda61 100644 --- a/src/SqueakWhiteboard-Tests/WBTextfieldTests.class.st +++ b/src/SqueakWhiteboard-Tests/WBTextfieldTests.class.st @@ -212,7 +212,7 @@ WBTextfieldTests >> testTextfieldDeactivationViaEscape [ { #category : #testing, - #'squeak_changestamp' : 'is 6/22/2024 00:00' + #'squeak_changestamp' : 'is 6/22/2024 01:18' } WBTextfieldTests >> testTextfieldKeyboardEventHandling [ | anElement aFirstMouseEvent aSecondMouseEvent aKeyboardEvent | @@ -223,6 +223,7 @@ WBTextfieldTests >> testTextfieldKeyboardEventHandling [ aSecondMouseEvent := MouseButtonEvent new. aSecondMouseEvent setType: #mouseDown position: anElement position which: 4 buttons: aSecondMouseEvent class redButton hand: HandMorph new stamp: 0. aKeyboardEvent := KeyboardEvent new. + self assert: (anElement textField handlesKeyboard: aFirstMouseEvent) = anElement textField enabled. self assert: (anElement textField textMorph handlesKeyboard: aKeyboardEvent) = false. anElement mouseDown: aFirstMouseEvent. @@ -232,10 +233,10 @@ WBTextfieldTests >> testTextfieldKeyboardEventHandling [ { #category : #testing, - #'squeak_changestamp' : 'is 6/22/2024 00:00' + #'squeak_changestamp' : 'is 6/22/2024 01:37' } WBTextfieldTests >> testTextfieldMouseEventHandling [ - | anElement aFirstMouseEvent aSecondMouseEvent | + | anElement aFirstMouseEvent aSecondMouseEvent prevCursor | anElement := WBRectangle newWithCanvas: self canvas. aFirstMouseEvent := MouseButtonEvent new. @@ -252,7 +253,13 @@ WBTextfieldTests >> testTextfieldMouseEventHandling [ self assert: (anElement textField handlesMouseOver: aFirstMouseEvent) = false. self assert: (anElement textField handlesMouseDown: aFirstMouseEvent) = true. - self assert: (anElement textField textMorph handlesMouseDown: aFirstMouseEvent) = true + self assert: (anElement textField textMorph handlesMouseDown: aFirstMouseEvent) = true. + + prevCursor := Cursor currentCursor. + anElement textField textMorph mouseEnter: aFirstMouseEvent. + self assert: Cursor currentCursor = Cursor text. + anElement textField textMorph mouseLeave: aFirstMouseEvent. + self assert: Cursor currentCursor = prevCursor ] {