From 7e08a365d8a165dc40b6fda785f311bb06ccae16 Mon Sep 17 00:00:00 2001 From: Stephanie Garcia Date: Mon, 2 Sep 2019 23:56:23 -0700 Subject: [PATCH] completed --- lib/array_equals.rb | 15 ++++++++++++++- test/array_equals_test.rb | 34 +++++++++++++++++----------------- 2 files changed, 31 insertions(+), 18 deletions(-) diff --git a/lib/array_equals.rb b/lib/array_equals.rb index 58e8369..38db4af 100644 --- a/lib/array_equals.rb +++ b/lib/array_equals.rb @@ -1,5 +1,18 @@ # Determines if the two input arrays have the same count of elements # and the same integer values in the same exact order + def array_equals(array1, array2) - raise NotImplementedError + if array1.length == array2.length + number = array1.length + number.times do |i| + if array1[i] != array2[i] + return false + end + end + return true + end + return false end + + + diff --git a/test/array_equals_test.rb b/test/array_equals_test.rb index f745cf7..575e60d 100644 --- a/test/array_equals_test.rb +++ b/test/array_equals_test.rb @@ -7,65 +7,65 @@ it "arrays are equal" do array1 = [10, 20, 30, 40, 50, 60] array2 = [10, 20, 30, 40, 50, 60] - + array_equals(array1, array2).must_equal true end - + it "arrays not equal: first six elements are same" do array1 = [10, 20, 30, 40, 50, 60] array2 = [10, 20, 30, 40, 50, 60, 70] - + array_equals(array1, array2).must_equal false end - + it "arrays not equal: same count of elements" do array1 = [10, 20, 30, 40, 50, 60] array2 = [20, 3, 50, 10, 68, 74] - + array_equals(array1, array2).must_equal false end end - + describe "edge cases" do it "arrays are empty: equal" do array1 = [] array2 = [] - + array_equals(array1, array2).must_equal true end - + it "only first array is empty: not equal" do array1 = [] array2 = [50, 30] - + array_equals(array1, array2).must_equal false end - + it "only second array is empty: not equal" do array1 = [20] array2 = [] - + array_equals(array1, array2).must_equal false end - + it "arrays are nil: equal" do array1 = nil array2 = nil - + array_equals(array1, array2).must_equal true end - + it "only first array is nil: not equal" do array1 = nil array2 = [10, 20] - + array_equals(array1, array2).must_equal false end - + it "only second array is nil: not equal" do array1 = [20] array2 = nil - + array_equals(array1, array2).must_equal false end end