سؤال

أنا أكتب اختبارات لتطبيق رد الفعل الذي يجعل من استخدام فلوكسور لتوفير المرسل الحدث.يتطلب القيام بهذا العمل إخبار الدعابة بعدم السخرية من بعض الوحدات التي يتم استخدامها داخليا ، ويتم توفيرها بواسطة العقدة نفسها.

وهذا يعني أنني لا يمكن أن مجرد إضافتها إلى unmockedModulePathPatterns مفتاح التكوين ، وبدلا من ذلك يجب استخدام بعض التعليمات البرمجية مثل هذا:

[ 'util', 'events' ].forEach(function (module) {
  jest.setMock(module, require.requireActual(module));
});

ومع ذلك ، لا يمكنني العثور على أي مكان مفيد لوضعه.لقد حصلت على setupEnvScriptFile الذي يضع عدد قليل من الكرات التي أستخدمها في جميع اختباراتي تقريبا ، ولكن jest لا يبدو أن الكائن متاح في هذا السياق ، لذلك لا يمكنني فقط تعيين السخرية هناك.

كتدبير مؤقت هاكي لقد ملفوفة التعليمات البرمجية أعلاه في وظيفة التي أسميها في بداية أي describe كتل اختبار مخازن فلوكسور ، ولكن بعيدا عن المثالية.

هل كانت مفيدة؟

المحلول 2

يبدو أن الإجابة ، على الأقل حاليا ، هي "لا يمكنك في هذه الحالة" ، ولكن هناك مشكلات مفتوحة للتغييرين اللذين يجب إجراءهما لدعمهما.

https://github.com/facebook/jest/issues/106 https://github.com/facebook/jest/issues/107

نصائح أخرى

هل حاولت التكوين.سيتوبتستفراميوركسكريبتفيل?يبدو أنه سيكون المكان المناسب لقرد تصحيح أبي ، وفقا للمستندات.

فويو ، وهنا الحل الذي كنا تستخدم لإضافة فلوكسسور ودعم رد فعل الموجه لمواصفات الاختبار لدينا.

https://gist.github.com/adjavaherian/a15ef0461e65d58aacd2

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top