Sinon: Bagaimana kami memverifikasi rintisan yang dipanggil dengan argumen yang merupakan array

Dibuat pada 17 Des 2015  ·  4Komentar  ·  Sumber: sinonjs/sinon

argumen = ["1","2","3"] ke sinon rintisan.
Saya ingin memeriksa argumen dan mengembalikan nilai. Saya tidak dapat melakukan hal yang sama menggunakan

rintisan.withArgs(argumen).return(nilai); // tidak bisa menandingi
rintisan.withArgs(sinon.match.array).return(nilai); // dapat menandingi
stub.withArgs(sinon.match.array.and(sinon.match.has("length", 3) // dapat mencocokkan

Saya dapat men-debug menggunakan WebStorm dan memverifikasi bahwa argumen diteruskan ke rintisan.

Tolong bantu.

Komentar yang paling membantu

Bagi siapa pun yang mencari, inilah jawabannya oleh @mroderick sendiri.

var expectedValue = [1, 2, 3];
var myStub = sinon.stub;

// let's pretend this is the call you want to verify
myStub(expectedValue);

var firstArgument = myStub.getCall(0).args[0];
assert.equal(firstArgument, expectedValue);

Semua 4 komentar

Kami mencoba untuk menjaga agar daftar masalah GitHub tetap rapi dan fokus pada bug dan diskusi fitur. Tiket ini terlihat seperti pertanyaan penggunaan, harap kirimkan ke milis Sinon.JS , sehingga komunitas yang lebih besar dapat membantu menjawab pertanyaan Anda.

Jika Anda merasa topik Anda bermasalah dengan Sinon.JS, silakan buka tiket baru dan ikuti panduan untuk melaporkan masalah .

Terima kasih. Saya akan menghubungi forum, terima kasih atas waktu Anda. sinon keren btw :)

Bagi siapa pun yang mencari, inilah jawabannya oleh @mroderick sendiri.

var expectedValue = [1, 2, 3];
var myStub = sinon.stub;

// let's pretend this is the call you want to verify
myStub(expectedValue);

var firstArgument = myStub.getCall(0).args[0];
assert.equal(firstArgument, expectedValue);

Atau stubName.getCall(0).thisValue.$$paramName;

Apakah halaman ini membantu?
0 / 5 - 0 peringkat