Sha256: 42af1961de6d6b9ecd25a2784e6aa425524ad9f99de1b18db8f25bf2c1aef343

Contents?: true

Size: 855 Bytes

Versions: 172

Compression:

Stored size: 855 Bytes

Contents

use "collections"
use "ponytest"

actor Main is TestList
  new create(env: Env) =>
    PonyTest(env, this)

  fun tag tests(test: PonyTest) =>
    test(_TestPascalsTriangle)

class iso _TestPascalsTriangle is UnitTest
  fun name(): String => "pascals-triangle"

  fun apply(h: TestHelper) ? =>
    assert_rows_eq(h, 0, Array[Array[USize]])?
    assert_rows_eq(h, 1, [[1]])?
    assert_rows_eq(h, 2, [[1]; [1; 1]])?
    assert_rows_eq(h, 3, [[1]; [1; 1]; [1; 2; 1]])?
    assert_rows_eq(h, 4, [[1]; [1; 1]; [1; 2; 1]; [1; 3; 3; 1]])?

  fun assert_rows_eq(
    h: TestHelper,
    count: USize,
    expected: Array[Array[USize]],
    loc: SourceLoc = __loc)
  ? =>
    let t = PascalsTriangle.rows(count)
    h.assert_eq[USize](t.size(), expected.size())
    for i in Range(0, expected.size()) do
      h.assert_array_eq[USize](expected(i)?, t(i)?)
    end

Version data entries

172 entries across 172 versions & 1 rubygems

Version Path
trackler-2.2.1.18 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.17 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.16 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.15 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.14 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.13 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.12 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.11 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.10 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.9 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.8 tracks/pony/exercises/pascals-triangle/test.pony
trackler-2.2.1.7 tracks/pony/exercises/pascals-triangle/test.pony