smalltalk + TDD + 「グッドプラクティス」を試してみると、ちょっと醜いブロックに遭遇しました:
GNU Smalltalk でアサーションを行うにはどうすればよいですか?
私はちょうど単純なifFalse: [Die]
種類のものを探しています
smalltalk + TDD + 「グッドプラクティス」を試してみると、ちょっと醜いブロックに遭遇しました:
GNU Smalltalk でアサーションを行うにはどうすればよいですか?
私はちょうど単純なifFalse: [Die]
種類のものを探しています
自己主張と同様に:[...いくつかのブロック]
オブジェクトに#valueを送信すると自己が返されるため、ブロックと非ブロックで機能します。
これは assert: from Squeakのコードです(GNU ではなくこちらを使用することをお勧めします):
assert: aBlock
"Throw an assertion error if aBlock does not evaluates to true."
aBlock value
ifFalse: [AssertionFailure signal: 'Assertion failed']
簡単です。テストメソッドでは、次のように記述します。
self assert: 1 + 1 = 2
ただし、最初に、TestCaseのサブクラス(Squeak内)としてテストクラスを作成する必要があります。次に例を示します。
TestCase subclass: #MyTest
ここでは、テストメソッドを記述します。名前は常に「test」で始まる必要があります。例:
testBasicArithmetics
self assert: 1 + 1 = 2