summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-array-ext/test
diff options
context:
space:
mode:
authorYAMAMOTO Masaya <[email protected]>2017-11-04 01:23:12 +0900
committerYAMAMOTO Masaya <[email protected]>2017-11-04 01:23:12 +0900
commit625f9f6fa314872968632c5adbee7fb3823268b8 (patch)
treefdde1700b13048212606e4a995907f3757e18e2f /mrbgems/mruby-array-ext/test
parentb70d69de09130ce2bc89289b4826b3deea8afaae (diff)
parente7fe6ee2638dee438c1d79ab16a0403aebec0a60 (diff)
downloadmruby-625f9f6fa314872968632c5adbee7fb3823268b8.tar.gz
mruby-625f9f6fa314872968632c5adbee7fb3823268b8.zip
Merge branch 'master' of github.com:mruby/mruby
Diffstat (limited to 'mrbgems/mruby-array-ext/test')
-rw-r--r--mrbgems/mruby-array-ext/test/array.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/mrbgems/mruby-array-ext/test/array.rb b/mrbgems/mruby-array-ext/test/array.rb
index c0db1b1cc..bf96b885e 100644
--- a/mrbgems/mruby-array-ext/test/array.rb
+++ b/mrbgems/mruby-array-ext/test/array.rb
@@ -381,3 +381,31 @@ assert("Array#slice!") do
assert_equal(i, [1, 2, 3])
assert_equal(j, nil)
end
+
+assert("Array#permutation") do
+ a = [1, 2, 3]
+ assert_equal([[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]],
+ a.permutation.to_a)
+ assert_equal([[1],[2],[3]],
+ a.permutation(1).to_a)
+ assert_equal([[1,2],[1,3],[2,1],[2,3],[3,1],[3,2]],
+ a.permutation(2).to_a)
+ assert_equal([[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]],
+ a.permutation(3).to_a)
+ assert_equal([[]], a.permutation(0).to_a)
+ assert_equal([], a.permutation(4).to_a)
+end
+
+assert("Array#combination") do
+ a = [1, 2, 3, 4]
+ assert_equal([[1],[2],[3],[4]],
+ a.combination(1).to_a)
+ assert_equal([[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]],
+ a.combination(2).to_a)
+ assert_equal([[1,2,3],[1,2,4],[1,3,4],[2,3,4]],
+ a.combination(3).to_a)
+ assert_equal([[1,2,3,4]],
+ a.combination(4).to_a)
+ assert_equal([[]], a.combination(0).to_a)
+ assert_equal([], a.combination(5).to_a)
+end