From af107f1a08497bb01c7db45e19ca6898035fd879 Mon Sep 17 00:00:00 2001 From: Karis Kim Date: Wed, 22 Aug 2018 23:56:52 -0700 Subject: [PATCH 1/3] Create array_equals.rb --- array_equals.rb | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 array_equals.rb diff --git a/array_equals.rb b/array_equals.rb new file mode 100644 index 0000000..801ed21 --- /dev/null +++ b/array_equals.rb @@ -0,0 +1,23 @@ +def array_equals(array1, array2) + if array1[0] == array2[0] && + array1[1] == array2[1] && + array1[2] == array2[2] && + array1[3] == array2[3] && + array1[4] == array2[4] && + array1[5] == array2[5] && + array1[6] == array2[6] + return true + elsif array2 == nil && array1 != nil + return false + elsif array1 == nil && array2 == nil + return true + elsif array1 == "" && array2 == "" + return true + elsif array1 == "" && array2 != nil + return false + elsif array1 != nil && array2 == "" + return false + else + return false + end +end From f121067b02a95d10a498bf2c531612790229d19d Mon Sep 17 00:00:00 2001 From: Karis Kim Date: Mon, 27 Aug 2018 22:36:44 -0700 Subject: [PATCH 2/3] passed all tests, put nil tests at the top to avoid errors --- lib/array_equals.rb | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/lib/array_equals.rb b/lib/array_equals.rb index 58e8369..da4e44f 100644 --- a/lib/array_equals.rb +++ b/lib/array_equals.rb @@ -1,5 +1,34 @@ # 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 == nil && array2 == nil + return true + elsif array1 == nil && array2.length > 0 + return false + elsif array1.length > 0 && array2 == nil + return false + elsif array1.length != array2.length + return false + elsif array1[0] == array2[0] && + array1[1] == array2[1] && + array1[2] == array2[2] && + array1[3] == array2[3] && + array1[4] == array2[4] && + array1[5] == array2[5] + return true + elsif array1[0] != array2[0] || + array1[1] != array2[1] || + array1[2] != array2[2] || + array1[3] != array2[3] || + array1[4] != array2[4] || + array1[5] != array2[5] + return false + elsif array1.length == 0 && array2.length == 0 + return true + elsif array1.length == 0 && array2.length > 0 + return false + elsif array1.length > 0 && array2.length == 0 + return false + + end end From ccdc0b9cfd16dc8cdd078ae0d2b5cad7b23c581c Mon Sep 17 00:00:00 2001 From: Karis Kim Date: Mon, 27 Aug 2018 22:37:12 -0700 Subject: [PATCH 3/3] removed skips --- specs/array_equals_spec.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/specs/array_equals_spec.rb b/specs/array_equals_spec.rb index f745cf7..904e6c3 100644 --- a/specs/array_equals_spec.rb +++ b/specs/array_equals_spec.rb @@ -1,5 +1,6 @@ require 'minitest/autorun' require 'minitest/reporters' +require 'minitest/skip_dsl' require_relative '../lib/array_equals' describe "array equals" do