Saat mencoba mengimpor sinon dalam pengujian dengan "import sinon from 'sinon'" atau "var sinon = require ('sinon')". Saya mendapatkan kesalahan berikut:
TypeError: 'undefined' bukan sebuah objek (mengevaluasi 'modules [moduleId] .call')
Sekarang sinon tidak dapat digunakan dalam proyek ES6. Apakah mungkin untuk memperbaikinya?
var sinon = membutuhkan ('sinon');
Apakah Anda menggunakan sinon dari npm? Versi yang mana
Masalah webpack ini mencakup hal yang sama, tanpa solusi yang solid dan banyak penyelesaian masalah: webpack / webpack # 304. Ini bukan kesalahan yang sama persis, tetapi pada dasarnya masalah yang sama.
Ya, saya menggunakan versi npm terbaru.
Ya, saya menggunakan versi npm terbaru.
Hanya demi sejarah, alangkah baiknya jika Anda dapat memberikan nomor versinya. Pembaca utas ini di masa mendatang akan mengetahui versi mana yang Anda bicarakan.
Masalah webpack ini mencakup hal yang sama, tanpa solusi yang solid dan banyak penyelesaian masalah: webpack / webpack # 304. Ini bukan kesalahan yang sama persis, tetapi pada dasarnya masalah yang sama.
Ya, sepertinya module-_mess_ di Sinon semakin menjadi masalah. Saya telah mencoba beberapa kali untuk menulis ulang untuk CommonJS, tetapi semuanya rumit . Permintaan tarik diterima :)
Saya telah membuat tiket untuk pekerjaan mendapatkan sumber yang ditransfer ke CommonJS # 834, yang kemungkinan besar akan meniadakan masalah ini.
Saya pikir masalah ini diselesaikan sekarang di master dengan # 850
Ada pembaruan tentang ini? # 850 tidak menyelesaikan masalah.
PS: Saya menggunakan v1.17.0
@Robertmw Anda dapat mencoba mengarahkan sinon ke git di package.json
untuk mendapatkan master terbaru dan melihat apakah itu membantu
@grassator Saya mencoba dengan git di bawah ini dari https://github.com/webpack/webpack/issues/304#issuecomment -136922511 tetapi saya akan mencobanya dengan git asli segera.
devDependencies: {
"sinon": "git+https://github.com/uberVU/Sinon.JS"
}
@grassator Saya dapat mengonfirmasi bahwa saat itu ketergantungan pada package.json
ke:
"sinon": "git+https://github.com/sinonjs/sinon.git"
memecahkan masalah saya dengan Webpack.
Saya juga menghadapi masalah yang sama. Untuk saat ini, saya menggunakan require('sinon')
sebelum saya menginisialisasi babel.
@tusharmath :
@ fatso83 Saya dapat mengonfirmasi bahwa menggunakan master
memperbaiki masalah. Mohon maaf atas perbaikan yang tidak akan berhasil menjadi 1.x.
Rilis 2.0 akan segera terjadi, jadi tidak ada yang perlu disesalkan
Saya memiliki proyek yang mengandalkan sinon-2.0
branch (git: //github.com/cjohansen/Sinon.JS.git#sinon-2.0). Ini telah bekerja dengan baik sampai saya mencobanya hari ini. Cabang itu sepertinya telah lenyap. Apakah sudah ada pengganti yang cocok untuk cabang ini?
@ frank-weindel: Cabang master secara efektif menjadi 2.0, jadi Anda bisa menunjukkannya. Pra-rilis 2.0 harus ada di NPM dalam beberapa hari.
PS. Anda bisa mendapatkan pra-rilis 2.0 dengan melakukan npm install sinon @ next
ada update kapan sinon 2 akan menjadi @latest, bukan @next?
Kami membutuhkan bantuan untuk mengeluarkan Sinon 2. Lihat # 991 dan # 1000 (dan masalah terkait) untuk masalah besar yang tersisa jika Anda dapat meluangkan waktu untuk membantu kami.
Catatan # 966 melacak tugas-tugas luar biasa yang diperlukan untuk pengiriman Sinon 2.0 yang menggunakan modul CommonJS secara internal - sangat membantu dalam mengeluarkannya.
coba gunakan sebagai plugin webpack
...
plugins: [
new webpack.ProvidePlugin( {
'sinon': 'sinon'
})
],
...
Sekadar catatan, menggunakannya seperti webpack.ProvidePlugin
juga tidak berhasil.
Secara pribadi saya baru saja berhenti menggunakan Karma dan karenanya tidak memerlukan Webpack untuk pengujian unit. Itu membuat mereka lebih cepat untuk berlari juga. Apakah masalah ini masih ada? Jika tidak, kita bisa menutupnya.
Masalah masih ada di sinon <2.0, yang masih belum dirilis secara resmi. Saya sarankan untuk menutup masalah ini dengan perbaikan atau saat sinon 2.0 dikirimkan.
Ini berfungsi di Sinon 2.0 dan README telah lama memiliki PERINGATAN YANG
Komentar yang paling membantu
PS. Anda bisa mendapatkan pra-rilis 2.0 dengan melakukan npm install sinon @ next