Sha256: 3d26e0ce77f389ac27ebf0ebdada8f2622d60815b0a3ad6f82d1fd62b97e6896

Contents?: true

Size: 1.41 KB

Versions: 40

Compression:

Stored size: 1.41 KB

Contents

-module(pascals_triangle_tests).

-include_lib("erl_exercism/include/exercism.hrl").
-include_lib("eunit/include/eunit.hrl").


% test cases adapted from `x-common//canonical-data.json` @ version: 1.3.0

zero_row_test() ->
  ?assertEqual([], pascals_triangle:gen_pascals_triangle(0)).

one_row_test() ->
  ?assertEqual([[1]], pascals_triangle:gen_pascals_triangle(1)).

two_rows_test() ->
  ?assertEqual([[1], [1, 1]], pascals_triangle:gen_pascals_triangle(2)).

three_rows_test() ->
  ?assertEqual([[1], [1, 1], [1, 2, 1]], pascals_triangle:gen_pascals_triangle(3)).

four_rows_test() ->
  ?assertEqual(
    [[1], [1, 1], [1, 2, 1], [1, 3, 3, 1]], 
    pascals_triangle:gen_pascals_triangle(4)).

five_rows_test() ->
  ?assertEqual(
    [[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]], 
    pascals_triangle:gen_pascals_triangle(5)).

six_rows_test() ->
  ?assertEqual(
    [[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1]], 
    pascals_triangle:gen_pascals_triangle(6)).

ten_rows_test() ->
  ?assertEqual(
    [[1], 
    [1, 1], 
    [1, 2, 1], 
    [1, 3, 3, 1], 
    [1, 4, 6, 4, 1], 
    [1, 5, 10, 10, 5, 1], 
    [1, 6, 15, 20, 15, 6, 1], 
    [1, 7, 21, 35, 35, 21, 7, 1], 
    [1, 8, 28, 56, 70, 56, 28, 8, 1], 
    [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]],
    pascals_triangle:gen_pascals_triangle(10)).

negative_rows_test() ->
  ?assertEqual(-1, pascals_triangle:gen_pascals_triangle(-1)).

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.179 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.178 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.177 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.176 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.175 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.174 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.173 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.172 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.171 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.170 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.169 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.167 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.166 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.165 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.164 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.163 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.162 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.161 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl
trackler-2.2.1.160 tracks/erlang/exercises/pascals-triangle/test/pascals_triangle_tests.erl