INDEX.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. <?php
  2. return [
  3. [
  4. [20 => ['R' => 1]], // Expected
  5. // Input
  6. [20 => ['R' => 1]],
  7. ],
  8. 'Negative Row' => [
  9. '#VALUE!', // Expected
  10. // Input
  11. [
  12. 20 => ['R' => 1],
  13. 21 => ['R' => 2],
  14. ],
  15. -1,
  16. ],
  17. 'Row > matrix rows' => [
  18. '#REF!', // Expected
  19. // Input
  20. [
  21. 20 => ['R' => 1],
  22. 21 => ['R' => 2],
  23. ],
  24. 10,
  25. ],
  26. 'Row is not a number' => [
  27. '#VALUE!', // Expected
  28. // Input
  29. [
  30. 20 => ['R' => 1],
  31. 21 => ['R' => 2],
  32. ],
  33. 'NaN',
  34. ],
  35. 'Row is Error' => [
  36. '#N/A', // Expected
  37. // Input
  38. [
  39. 20 => ['R' => 1],
  40. 21 => ['R' => 2],
  41. ],
  42. '#N/A',
  43. ],
  44. 'Return row 2' => [
  45. [21 => ['R' => 2]], // Expected
  46. // Input
  47. [
  48. 20 => ['R' => 1],
  49. 21 => ['R' => 2],
  50. ],
  51. 2,
  52. ],
  53. 'Return row 2 from larger matrix' => [
  54. [21 => ['R' => 2, 'S' => 4]], // Expected
  55. // Input
  56. [
  57. '20' => ['R' => 1, 'S' => 3],
  58. '21' => ['R' => 2, 'S' => 4],
  59. ],
  60. 2,
  61. 0,
  62. ],
  63. 'Negative Column' => [
  64. '#VALUE!', // Expected
  65. // Input
  66. [
  67. '20' => ['R' => 1, 'S' => 3],
  68. '21' => ['R' => 2, 'S' => 4],
  69. ],
  70. 0,
  71. -1,
  72. ],
  73. 'Column > matrix columns' => [
  74. '#REF!', // Expected
  75. // Input
  76. [
  77. '20' => ['R' => 1, 'S' => 3],
  78. '21' => ['R' => 2, 'S' => 4],
  79. ],
  80. 2,
  81. 10,
  82. ],
  83. 'Column is not a number' => [
  84. '#VALUE!', // Expected
  85. // Input
  86. [
  87. 20 => ['R' => 1],
  88. 21 => ['R' => 2],
  89. ],
  90. 1,
  91. 'NaN',
  92. ],
  93. 'Column is Error' => [
  94. '#N/A', // Expected
  95. // Input
  96. [
  97. 20 => ['R' => 1],
  98. 21 => ['R' => 2],
  99. ],
  100. 1,
  101. '#N/A',
  102. ],
  103. [
  104. 4, // Expected
  105. // Input
  106. [
  107. '20' => ['R' => 1, 'S' => 3],
  108. '21' => ['R' => 2, 'S' => 4],
  109. ],
  110. 2,
  111. 2,
  112. ],
  113. [
  114. [4], // Expected
  115. // Input
  116. [
  117. '20' => ['R' => 1, 'S' => 3],
  118. '21' => ['R' => 2, 'S' => 4],
  119. ],
  120. [
  121. '21' => ['R' => 2],
  122. ],
  123. [
  124. '21' => ['R' => 2],
  125. ],
  126. ],
  127. [
  128. 'Pears',
  129. [
  130. ['Apples', 'Lemons'],
  131. ['Bananas', 'Pears'],
  132. ],
  133. 2,
  134. 2,
  135. ],
  136. [
  137. 'Bananas',
  138. [
  139. ['Apples', 'Lemons'],
  140. ['Bananas', 'Pears'],
  141. ],
  142. 2,
  143. 1,
  144. ],
  145. [
  146. [1 => ['Bananas', 'Pears']],
  147. [
  148. ['Apples', 'Lemons'],
  149. ['Bananas', 'Pears'],
  150. ],
  151. 2,
  152. 0,
  153. ],
  154. [
  155. 3,
  156. [
  157. [4, 6],
  158. [5, 3],
  159. [6, 9],
  160. [7, 5],
  161. [8, 3],
  162. ],
  163. 5,
  164. 2,
  165. ],
  166. [
  167. [4 => [8, 3]],
  168. [
  169. [4, 6],
  170. [5, 3],
  171. [6, 9],
  172. [7, 5],
  173. [8, 3],
  174. ],
  175. 5,
  176. 0,
  177. ],
  178. [
  179. [
  180. [6],
  181. [3],
  182. [9],
  183. [5],
  184. [3],
  185. ],
  186. [
  187. [4, 6],
  188. [5, 3],
  189. [6, 9],
  190. [7, 5],
  191. [8, 3],
  192. ],
  193. 0,
  194. 2,
  195. ],
  196. ];