(function(window,document){
var _trimString = function( string ){
var trimString;
trimString = string.replace(/^\s+|\s+$/g,'');
return trimString
};
var displayCorrectText = function( incorrecttext ){
correctText = "."+incorrecttext;
document.write( correctText );
}
var Circular = function(){};
Circular.prototype.init = function( string ){
displayCorrectText( _trimString( string ) );
};
var circular = new Circular();
window.circular = circular;
})(window,document);
circular.init('asd.asd');
このモジュール宣言があり、 Jasmine を使用して_trimString関数をテストしたいと考えています。
私はこのコードのようなものを書きました
describe("Form Creator private function ", function(){
it("_trimString should trim string", function(){
var _trimString = function( string ){
var trimString;
trimString = string.replace(/^\s+|\s+$/g,'');
return trimString
};
expect(_trimString(' test text ') ).toBe('test text');
});
});
テストで関数自体を宣言していますか、それとも別の方法がありますか? 機能テストを行った場合、実際の機能をソースコードにコピーするのは間違っていると思います。たぶん、誰かがモジュール宣言で「プライベート」関数を使用する正しいケースを教えてくれるかもしれません