The Trunk: SqueakSSL-Tests-ct.28.mcz
[email protected] Sat, 13 Jun 2026 00:42:04 0000
| Newsgroups | gmane.comp.lang.smalltalk.squeak.general |
|---|---|
| Message-ID | <[email protected]> |
Christoph Thiede uploaded a new version of SqueakSSL-Tests to project The Trunk: http://source.squeak.org/trunk/SqueakSSL-Tests-ct.28.mcz ==================== Summary ==================== Name: SqueakSSL-Tests-ct.28 Author: ct Time: 26 April 2026, 8:21:17.711918 pm UUID: 87b5c782-f5a4-4192-9740-c7c3636b983b Ancestors: SqueakSSL-Tests-tpr.27 Fixes a race condition and a comment in tests. =============== Diff against SqueakSSL-Tests-tpr.27 =============== Item was changed: ----- Method: SqueakSSLTest>>testStreamAccept (in category 'tests') ----- testStreamAccept "Tests the SecureSocketStream server handshake. " | process listener clientSocket serverSocket secureStream | process := Processor activeProcess. [listener := Socket newTCP. listener listenOn: self port backlogSize: 4. clientSocket := Socket newTCP. clientSocket connectTo: #[127 0 0 1] port: self port. clientSocket waitForConnectionFor: 1. serverSocket := listener waitForAcceptFor: 1. self assert: clientSocket isConnected. self assert: serverSocket notNil. self assert: serverSocket isConnected. "Set up the client for the handshake" sslClient on: clientSocket. clientProcess := [ [sslClient connect] on: Error do:[:ex| process signalException: ex]. ] forkAt: Processor activePriority + 1. + "Set up the server using SecureSocketStream" - "Set up the client using SecureSocketStream" secureStream := SecureSocketStream on: serverSocket. secureStream sslAccept: self certName. self assert: secureStream isConnected. ] ensure:[ listener ifNotNil:[listener destroy]. clientSocket ifNotNil:[clientSocket destroy]. serverSocket ifNotNil:[serverSocket destroy]. secureStream ifNotNil:[secureStream destroy]. ].! Item was changed: ----- Method: SqueakSSLTest>>testStreamTransfer (in category 'tests') ----- testStreamTransfer "Tests the SecureSocketStream data transfer" + | listener clientSocket serverSocket serverStream clientStream sema | - | listener clientSocket serverSocket serverStream clientStream | [listener := Socket newTCP. listener listenOn: self port backlogSize: 4. clientSocket := Socket newTCP. clientSocket connectTo: #[127 0 0 1] port: self port. clientSocket waitForConnectionFor: 1. serverSocket := listener waitForAcceptFor: 1. self assert: clientSocket isConnected. self assert: serverSocket notNil. self assert: serverSocket isConnected. "Set up client and server streams" serverStream := self secureSocketStream on: serverSocket. + sema := Semaphore new. serverProcess := [ + [serverStream sslAccept: self certName. + sema signal] - [serverStream sslAccept: self certName] on: Error do:[:ex| serverStream destroy]. ] forkAt: Processor activePriority + 1. clientStream := self secureSocketStream on: clientSocket. clientStream sslConnect. self assert: clientStream isConnected. self assert: serverStream isConnected. clientStream nextPutAll: 'Hello World'; flush. + sema wait. + self assert: 'Hello World' equals: (serverStream next: 11). - self assert: (serverStream next: 11) = 'Hello World'. serverStream nextPutAll: 'The other way'; flush. + self assert: 'The other way' equals: (clientStream next: 13). - self assert: (clientStream next: 13) = 'The other way'. ] ensure:[ listener ifNotNil:[listener destroy]. clientSocket ifNotNil:[clientSocket destroy]. serverSocket ifNotNil:[serverSocket destroy]. clientStream ifNotNil:[clientStream destroy]. serverStream ifNotNil:[serverStream destroy]. ].! Squeak-dev mailing list -- [email protected] To unsubscribe send an email to [email protected]