यहां एक सामान्य नोड मॉड्यूल है। कुछ कार्यों के साथ जो सभी निर्यात नहीं किए जाते हैं, लेकिन उन्हेंपरीक्षण मॉड्यूल के नोड विधियों को निर्यात नहीं किया गया
var foo1 = function() { console.log("Foo1"); }
var foo2 = function() { console.log("Foo2"); }
var foo3 = function() { console.log("Foo3"); }
module.exports = {
foo1: foo1,
foo2: foo2
}
कोई भी जानता है कि foo3 का परीक्षण कैसे करें? आम तौर पर मैं नोड-सैंडबॉक्स वाले मॉड्यूल के साथ मॉड्यूल का परीक्षण करता हूं। लेकिन मॉड्यूल के लिए दिए गए चीजों को नकल करना केवल संभव है, लेकिन मैं विधियों के दायरे को नहीं बदल सकता। नोड सैंडबॉक्स-मॉड्यूल के साथ परीक्षण मॉड्यूल के लिए
नमूना:
var SandboxedModule = require('sandboxed-module');
var user = SandboxedModule.require('./user', {
requires: {'mysql': {fake: 'mysql module'}},
globals: {myGlobal: 'variable'},
locals: {myLocal: 'other variable'},
});
मदद के लिए धन्यवाद!
बस भी foo3 निर्यात करते हैं, एक अंड के साथ लगाकर erscore दर्शाता है कि यह एक निजी समारोह है, उदाहरण के लिए '_foo3: foo3'। –
संभावित डुप्लिकेट [नोड.जेएस मॉड्यूल में एक आंतरिक (गैर-निर्यात) फ़ंक्शन को कैसे एक्सेस और परीक्षण करें?] (Http://stackoverflow.com/questions/14874208/how-to-access-and-test-an -internal गैर-निर्यात-समारोह में एक नोड-js मॉड्यूल) – waterproof