2013-01-12 50 views

cevap

9

Dokümantasyonda ne yazıyor: operator değeri, bir hata mesajı verirken actual ve expected değerlerini ayırmak için kullanılıyor. Bu, Node.js 'documentation for the assert module'da açıklanmaktadır.

function fail(actual, expected, message, operator, stackStartFunction) { 
    throw new assert.AssertionError({ 
    message: message, 
    actual: actual, 
    expected: expected, 
    operator: operator, 
    stackStartFunction: stackStartFunction 
    }); 
} 
: Eğer implementation of the assert module, lines 101-109 bakmak zaman

> assert.fail(23, 42, 'Malfunction in test.', '###') 
AssertionError: Malfunction in test. 
    at repl:1:9 
    at REPLServer.self.eval (repl.js:111:21) 
    at Interface.<anonymous> (repl.js:250:12) 
    at Interface.EventEmitter.emit (events.js:88:17) 
    at Interface._onLine (readline.js:199:10) 
    at Interface._line (readline.js:517:8) 
    at Interface._ttyWrite (readline.js:735:14) 
    at ReadStream.onkeypress (readline.js:98:10) 
    at ReadStream.EventEmitter.emit (events.js:115:20) 
    at emitKey (readline.js:1057:12) 

her şey anlam kazanır: Bu etkileşimli kabukta denerseniz

Ama, parametre göz ardı görünüyor görüyoruz

Yani, daha iyi bir açıklama, iletide otomatik olarak kullanılmaması olabilir, ancak istisna yakalamak ve bir uygulama oluşturursanız kullanılabilir Kendini ilet. Sonuç olarak, kendi test çerçevenizi oluşturacaksanız bu parametre yararlı olabilir.

message parametresini atlarsanız, örn. undefined geçerek:

> assert.fail(23, 42, undefined, '###') 
AssertionError: 23 ### 42 
[...] 
+0

Harika, teşekkürler! Aslında hiç dokümanda belirtilmeyen bir parametre var. Bu işlevleri kaynak kodunda kendim bulmayı öğrenmem gerekiyor - belgelerin koddan daha kafa karıştırıcı olabileceğini düşünüyor ... – esp

+1

Temel olarak, tüm kütüphaneleri Node.js deposundaki 'lib' klasöründe bulabilirsiniz. –

İlgili konular