2017-07-03 7 views
0

実際の値と期待値を厳密に等しく(typecastingではなく)比較するassertTesting関数をここで作成しようとしています。一例として、assertTesting Function SucessまたはFail Test

は、ここでの成功事例です:

function multiplyByTwo(n) { 
    return n * 2; 
} 
var output = multiplyByTwo(2); // returns 4 
assertTesting(output, 4, 'it doubles 2 to 4'); 
// console output: 
// passed 

はここで失敗した一つだ:

function multiplyByTwo(n) { 
    return (n * 2) + 1; // an incorrect implementation 
} 
var output = multiplyByTwo(2); // returns 5 
assertTesting(output, 4, 'it doubles 2 to 4'); 
// console output: 
// FAILED [it doubles 2 to 4] Expected "4", but got "5" 

ここでは、これまでの私のコードです:

var output; 

function multiplyByTwo(n) { 
    output = n * 2; 
    return output; 
} 

function assertTesting (actual, expected, testName) { 
    if(actual === ouput && expected === testName){ 
    return "SUCCESS" + [testname] + "Expected" + expected + "," "but got" + actual; 
    } 
} 

私は得ることができますどのように任意のアイデア私は必要な正確な出力?助けてください。

答えて

1

はこのようなものである必要があります、私は推測する:

function assertEqual(actual, expected, testName) { 
    if(actual !== expected){ 
    console.error("FAIL [" + testname + "] Expected \"" + expected + ", \" but got \"" + actual + "\""); 
    } else { 
    console.info("SUCCESS [" + testname + "]"); 
    } 
} 
+0

どのように成功について?どのようにそれが行くでしょうか? –

+0

あなたは何を成功させたいですか? 「渡された」? – dloeda

+0

が正しい。渡されたもの。 –