Functional Weave
Code in Python

charts.extent@1.0.0

vectors.json

959 bytes · view raw

[
  { "name": "an unordered series", "args": [[3, 1, 2]], "expect": [1, 3] },
  { "name": "a gap is skipped, not read as zero (Math.min treats null as 0)", "args": [[null, 5, 7]], "expect": [5, 7] },
  { "name": "gaps in the middle and at the end", "args": [[4.5, null, -2.25, 9, null]], "expect": [-2.25, 9] },
  { "name": "negative values only", "args": [[-3, -8, -1]], "expect": [-8, -1] },
  { "name": "one value is both ends", "args": [[42]], "expect": [42, 42] },
  { "name": "all values equal", "args": [[2, 2, 2]], "expect": [2, 2] },
  { "name": "every value a gap gives null", "args": [[null, null]], "expect": null },
  { "name": "an empty series gives null", "args": [[]], "expect": null },
  { "name": "fractions are returned exactly, not rounded", "args": [[0.1, 0.30000000000000004, 0.2]], "expect": [0.1, 0.30000000000000004] },
  { "name": "very large and very small magnitudes", "args": [[1e300, -1e-300, 5]], "expect": [-1e-300, 1e300] }
]