Advertisement
Guest User

Untitled

a guest
Feb 28th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.14 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta name="description" content="max/min drill solution">
  5. <meta charset="utf-8">
  6. <meta name="viewport" content="width=device-width">
  7. <title>max/min drill solution</title>
  8. </head>
  9. <body>
  10. x
  11. <script id="jsbin-javascript">
  12. function max(numbers) {
  13. var maxNumber = numbers[0];
  14. for ( i=0; i <= numbers.length; i++){
  15. if (numbers[i] > maxNumber)
  16. maxNumber = numbers[i];
  17. };
  18. return maxNumber;
  19.  
  20.  
  21.  
  22. function min(numbers) {
  23. return result = numbers.reduce(function(a, b){
  24. return a < b ? a : b
  25. });
  26. }
  27.  
  28.  
  29.  
  30. /* From here down, you are not expected to
  31. understand.... for now :)
  32.  
  33.  
  34. Nothing to see here!
  35.  
  36. */
  37.  
  38.  
  39. // tests
  40.  
  41. function testFunctionWorks(fn, input, expected) {
  42. if (fn(input) === expected) {
  43. console.log('SUCCESS: `' + fn.name + '` works on `[' + input + ']`');
  44. return true;
  45. }
  46. else {
  47. console.log(
  48. 'FAILURE: `' + fn.name + '([' + input + '])` should be ' + expected +
  49. ' but was ' + fn(input)
  50. );
  51. return false;
  52. }
  53. }
  54.  
  55.  
  56. (function runTests() {
  57. // we'll use the variables in our test cases
  58. var numList1 = [-5, 28, 98, -20013, 0.7878, 22, 115];
  59. var realMin1 = numList1[3];
  60. var realMax1 = numList1[6];
  61. var numList2 = [0, 1, 2, 3, 4];
  62. var realMin2 = numList2[0];
  63. var realMax2 = numList2[4];
  64.  
  65. var testResults = [
  66. testFunctionWorks(max, numList1, realMax1),
  67. testFunctionWorks(max, numList2, realMax2),
  68. testFunctionWorks(min, numList1, realMin1),
  69. testFunctionWorks(min, numList2, realMin2),
  70. ];
  71.  
  72. var numPassing = testResults.filter(function(result){ return result; }).length;
  73. console.log(numPassing + ' out of ' + testResults.length + ' tests passing.');
  74. })();
  75. </script>
  76.  
  77.  
  78.  
  79. <script id="jsbin-source-javascript" type="text/javascript">function max(numbers) {
  80. var maxNumber = numbers[0];
  81. for ( i=0; i <= numbers.length; i++){
  82. if (numbers[i] > maxNumber)
  83. maxNumber = numbers[i];
  84. };
  85. return maxNumber;
  86.  
  87.  
  88.  
  89. function min(numbers) {
  90. return result = numbers.reduce(function(a, b){
  91. return a < b ? a : b
  92. });
  93. }
  94.  
  95.  
  96.  
  97. /* From here down, you are not expected to
  98. understand.... for now :)
  99.  
  100.  
  101. Nothing to see here!
  102.  
  103. */
  104.  
  105.  
  106. // tests
  107.  
  108. function testFunctionWorks(fn, input, expected) {
  109. if (fn(input) === expected) {
  110. console.log('SUCCESS: `' + fn.name + '` works on `[' + input + ']`');
  111. return true;
  112. }
  113. else {
  114. console.log(
  115. 'FAILURE: `' + fn.name + '([' + input + '])` should be ' + expected +
  116. ' but was ' + fn(input)
  117. );
  118. return false;
  119. }
  120. }
  121.  
  122.  
  123. (function runTests() {
  124. // we'll use the variables in our test cases
  125. var numList1 = [-5, 28, 98, -20013, 0.7878, 22, 115];
  126. var realMin1 = numList1[3];
  127. var realMax1 = numList1[6];
  128. var numList2 = [0, 1, 2, 3, 4];
  129. var realMin2 = numList2[0];
  130. var realMax2 = numList2[4];
  131.  
  132. var testResults = [
  133. testFunctionWorks(max, numList1, realMax1),
  134. testFunctionWorks(max, numList2, realMax2),
  135. testFunctionWorks(min, numList1, realMin1),
  136. testFunctionWorks(min, numList2, realMin2),
  137. ];
  138.  
  139. var numPassing = testResults.filter(function(result){ return result; }).length;
  140. console.log(numPassing + ' out of ' + testResults.length + ' tests passing.');
  141. })();
  142. </script></body>
  143. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement