Last active
February 22, 2017 05:09
-
-
Save bepitulaz/d3b0c26509c62fb394bb15729a0d8c93 to your computer and use it in GitHub Desktop.
Sample of unit testing in my article.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Fungsi ini digunakan untuk menghitung harga barang setelah diskon. | |
* @param {Number} discountRate - nilai diskon yang diberikan | |
* @param {Number} originalPrice - harga barang sebelum diskon dalam Rupiah | |
* @returns {Number} | |
*/ | |
function calculateDiscount(originalPrice, discountRate) { | |
let discount = originalPrice * discountRate / 100; | |
return originalPrice - discount; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Unit testing dilakukan tanpa testing framework. | |
* Pada kenyataannya pengujian selalu menggunakan unit testing framework. | |
* @param {Number} expectedValue - nilai yang diharapkan | |
* @param {Number} testedValue - nilai yang akan diuji | |
* @returns {Boolean} | |
*/ | |
function simpleTest(expectedValue, testedValue) { | |
if(expectedValue === testedValue) { | |
return true; | |
} else { | |
return false; | |
} | |
} | |
// Skenario pengujian 1: | |
// Jika harga 10000 dan diskon 20%, hasil seharusnya true. | |
simpleTest(8000, calculateDiscount(10000, 20)); | |
// Skenario pengujian 2: | |
// Jika harga dimasukkan berupa array dan diskon 20%, hasil seharusnya false. | |
simpleTest(8000, calculateDiscount([10000, 2000], 20)); | |
// Skenario pengujian 3: | |
// Jika harga dimasukkan berupa Number dan diskon berupa string, hasil seharusnya false. | |
simpleTest(8000, calculateDiscount(10000, "abc")); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment