2016-09-17 11 views
8

सरल हंसी परीक्षण और यह विफल रहता है, क्योंकि मैं आयातउल्का हंसी परीक्षण सिर्फ अगर प्रतिक्रिया घटक प्रदान कर सकते हैं की जाँच करने के लिए प्रतिक्रिया

import { Meteor } from 'meteor/meteor'

पूर्ण त्रुटि है ...

PASS imports/__partials/Navigation/__tests__/Navigation.jest.js 
PASS imports/__layouts/AuthLayout/__tests__/AuthLayout.jest.js 
FAIL imports/features/oAuth/ui/LoginLayout/__tests__/LoginLayout.jest.js 
    ● Test suite failed to run 

    Cannot find module 'meteor/meteor' from 'index.js' 

     at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:142:17) 
     at Object.<anonymous> (imports/features/oAuth/ui/LoginLayout/index.js:2:41) 
     at Object.<anonymous> (imports/features/oAuth/ui/LoginLayout/__tests__/LoginLayout.jest.js:4:40) 

PASS imports/staticTests/quickCheckboxTest/__tests__/CheckboxWithLabel.jest.js 
PASS imports/staticTests/quickLinkTest/__tests__/Link.react.jest.js 

मैं मैं इसे मानने जा रहा हूं क्योंकि उल्का निर्माण नहीं करता है और इसलिए meteor/meteor मौजूद नहीं है, इसे काम करने में कोई मदद की सराहना की जाएगी। :)

संपादित करें ...

मैं सही मेरी धारणा में था, यह मूल रूप से, क्योंकि उल्का NPM मॉड्यूल नहीं बनाया गया है।

"moduleNameMapper": { 
    "^meteor/(.*)": "<rootDir>/meteorMocks.js" 
} 

और meteorMocks.js में:

+0

ठीक है, इसलिए मुझे लगता है कि इस मुद्दे को हल करने के लिए मुझे लगता है कि मुझे लगता है कि मुझे जैस्मीन के लिए ड्राइवर पैकेज लिखना होगा और जब उल्का चल रहा हो तब जेस्ट चलाएं ... मैं इसके बजाय मोचा का उपयोग कर रहा हूं :( –

उत्तर

10

आप आसानी से अपने हंसी कॉन्फ़िग फ़ाइल में "moduleNameMapper" का उपयोग उल्का मॉड्यूल ठूंठ कर सकते हैं

export const Meteor = { 
    call:() => null, 
    // ... more stuff you'd like to mock on the Meteor object 
}; 

तो फिर तुम क्या कर सकते हैं

import { Meteor } from 'meteor/meteor'; 
आपकी टेस्ट फाइलों में

बस मॉक करने के लिए आवश्यक सभी मॉड्यूल के साथ ऐसा ही करें (जैसे Tracker या ReactiveVar)।

+0

दोस्त यह है पुराना सवाल है लेकिन मुझे आपका जवाब पसंद है और परीक्षण करने जा रहा है तो ASAP स्वीकार करें! –

+0

चीयर्स मैन :) मैं एक ही समस्या में आया और इसे पाया। सोचा कि मैं अपना समाधान साझा करूंगा। – chmanie

+0

यहां उल्का द्वारा एक ब्लॉग पोस्ट है [मीटियर और जेस्ट के साथ रियल-वर्ल्ड यूनिट टेस्ट] (https://blog.meteor.com/real-world-unit-tests-with-meteor-and-jest-3d557e84e84a) बताता है कि कैसे परीक्षण के लिए जेस्ट का उपयोग करने के लिए। यह इस जवाब का जिक्र कर रहा है ;-) –

संबंधित मुद्दे