का उपयोग कर जावास्क्रिप्ट में रेडिस इंटरैक्शन को दबाकर मैं node.js. में काम कर रहा हूं। मेरा ऐप node_redis
मॉड्यूल के माध्यम से रेडिस के साथ बातचीत करता है। मैं अपने ऐप के परीक्षण को स्वचालित करने के लिए मोचा और साइनऑन का उपयोग कर रहा हूं। मेरा ऐप ऐसा कुछ दिखता है:साइनऑन
...snip
var redisClient = redis.createClient(redisPort, redisHost);
var someValue = redisClient.get("someKey");
return someValue;
....
मैं कॉल को redisClient.get() पर स्टब करना चाहता हूं। - ऐसा करने के लिए मैं भी redis.createClient करने के लिए कॉल ठूंठ की जरूरत है() मुझे लगता है कि ... यहाँ अपने परीक्षण कोड है:
...
var redis = require("redis");
var redisClient;
...
sinon.stub(redisClient, 'get').returns("someValue");
sinon.stub(redis, "createClient").returns(redisClient);
...
assert.equal(redis_client_underTest.call_to_redis(), "someValue");
...
परीक्षण AssertionError: false == "someValue"
मैं कैसे बाहर ठूंठ करते redisClient
साथ विफल रहता है, या यह भी संभव है?
क्या redisClient चर का खुलासा किया जाना चाहिए? या यह मॉड्यूल में भी निजी चर rewire कर सकते हैं? – Scotty
@ स्कोटी हाँ, यह निजी चर भी रिवायर कर सकता है। :) – Osukaa
खेल परिवर्तक! बहुत बहुत धन्यवाद! : डी – Scotty