From cd8b84b49f8bd746073f1d56f4c41274accf0984 Mon Sep 17 00:00:00 2001 From: Daniel Haran Date: Wed, 15 Apr 2009 15:00:39 -0400 Subject: [PATCH] array utils, will be used in toc extraction. uniq would not work; sometimes the same header gets re-used later on in the same day --- array_utils.rb | 12 ++++++++++++ test/array_utils_test.rb | 8 ++++++++ 2 files changed, 20 insertions(+) create mode 100644 array_utils.rb create mode 100644 test/array_utils_test.rb diff --git a/array_utils.rb b/array_utils.rb new file mode 100644 index 0000000..8c58432 --- /dev/null +++ b/array_utils.rb @@ -0,0 +1,12 @@ +class ArrayUtils + class << self + def firsts_in_sequence(elements) + first = nil + elements.select do |cur| + ret = (cur != first) + first = cur + ret + end + end + end +end \ No newline at end of file diff --git a/test/array_utils_test.rb b/test/array_utils_test.rb new file mode 100644 index 0000000..df88015 --- /dev/null +++ b/test/array_utils_test.rb @@ -0,0 +1,8 @@ +require 'test_helper' +require '../array_utils' + +class ArrayUtilsTest < Test::Unit::TestCase + def test_firsts_in_sequence + assert_equal [1,2,1,2,3], ArrayUtils.firsts_in_sequence([1,1,1,1,2,1,1,1,2,2,2,2,2,2,2,3,3]) + end +end \ No newline at end of file