node.js を使用して piLite とやり取りする npm モジュールを作成しています。TDDの原則を使ってきちんと書きたいと思います。
テストする必要があるコード:
var SerialPort = require("serialport").SerialPort;
exports.PiLite = {
device: "/dev/ttyAMA0",
baudrate: 9600,
client: null,
init: function() {
this.client = new SerialPort(this.device, {
baudrate: this.baudrate
}, false);
},
connect: function(callback) {
this.init();
this.client.open(function() {
console.log('Connected to Pi Lite');
callback();
});
},
write: function (data) {
...
標準的な使用方法は次のとおりです。
var pilite = require('pilite').PiLite;
pilite.connect(function() {
pilite.write('some data');
// calls to functions to send messages to pilite
}
アサーションをテストする方法は理解していますが、シリアル ポートへの接続をテストする方法がわかりません。
それをテストする必要がありますか、それともシリアルポートへの書き込みに使用している機能をテストするだけですか?
編集:私はNodeunitにかなり慣れていないので、正しい方向へのポインタは素晴らしいでしょう。