यहां एक नमूना describe
है जिसे आप चला सकते हैं और देख सकते हैं कि क्या होता है। मुझे यह उल्लेख करना होगा कि मैं प्रोटैक्टर का उपयोग नहीं करता हूं, इसलिए इसकी विशिष्ट क्षमताओं से संबंधित कुछ अतिरिक्त विचार हो सकते हैं।
describe('Done functionality', function(){
var echoInOneSecond = function(value){
console.log('creating promise for ', value);
return new Promise(function(resolve, reject){
console.log('resolving with ', value);
resolve(value);
});
};
it('#1 this will untruly PASS', function(){
var p = echoInOneSecond('value #1');
p.then(function(value){
console.log('#1 expecting...and value is ', value);
expect(value).toBe('value #1');
});
});
it('#2 this will NOT FAIL', function(){
var p = echoInOneSecond('value #2');
p.then(function(value){
console.log('#2 expecting... and value is ', value);
expect(value).not.toBe('value #2');
});
});
it('3 = will truly FAIl', function(done){
var p = echoInOneSecond('value #3');
p.then(function(value){
console.log('#3 expecting... and value is ', value);
expect(value).not.toBe('value #3');
done();
});
});
it('4 = this will truly PASS', function(done){
var p = echoInOneSecond('value #4');
p.then(function(value){
console.log('#4 expecting... and value is ', value);
expect(value).toBe('value #4');
done();
});
});
});
जब परीक्षण चल रहा है आप ध्यान देंगे अनुक्रम: पहले वादा किया # 1, # 2, # 3 बनाया जाएगा और एक के बाद एक संकल्प लिया। कृपया ध्यान दें कि # 1 और # 2 की अपेक्षा अभी तक नहीं चली जाएगी क्योंकि वादे को असंकालिक रूप से हल किया जाता है।
फिर, # 3 परीक्षण done
का उपयोग करता है, # 3 वादे के बाद, पिछले सभी वादों के then
एस के लिए कार्य का मूल्यांकन किया जाता है: आपको '# 1 उम्मीद ...' और '# 2 उम्मीद होगी ... ', लेकिन चमेली इस पर परवाह नहीं करेंगे क्योंकि परीक्षण # 1 और # 2 पहले ही समाप्त हो चुके हैं और उनके बारे में सब कुछ किया गया है। केवल उन # 3 उम्मीदों के बाद ही यह वास्तव में असफल हो जाएगा क्योंकि चमेली done()
से पहले होने वाली हर चीज का ख्याल रखती है।
और फिर आप # 4 परीक्षण सामान्य प्रवाह देख सकते हैं - वादा, संकल्प, उम्मीद, जैस्मीन द्वारा विचार की जाने वाली सभी चीजें, इसलिए उम्मीद वास्तव में पारित हो जाएगी।
यह सिर्फ इस कॉलक को पूरा करने का संकेत है। आप इस spec में तब तक रहेंगे जब तक 'किया() ' – Gunderson
@ गुंडरसन कहा जाता है - क्या आप मुझे इसके बारे में कुछ और बता सकते हैं। – rafalf