From 181222b17ef908f89aad5deaa9b40f6dd565fcc3 Mon Sep 17 00:00:00 2001 From: Anastasios Chatzialexiou <16361161+tasxatzial@users.noreply.github.com> Date: Tue, 22 Oct 2024 20:04:11 +0300 Subject: [PATCH 1/3] sync tests --- exercises/practice/sublist/.meta/tests.toml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/exercises/practice/sublist/.meta/tests.toml b/exercises/practice/sublist/.meta/tests.toml index 74bd60cc..de5020a9 100644 --- a/exercises/practice/sublist/.meta/tests.toml +++ b/exercises/practice/sublist/.meta/tests.toml @@ -1,6 +1,13 @@ -# This is an auto-generated file. Regular comments will be removed when this -# file is regenerated. Regenerating will not touch any manually added keys, -# so comments can be added in a "comment" key. +# This is an auto-generated file. +# +# Regenerating this file via `configlet sync` will: +# - Recreate every `description` key/value pair +# - Recreate every `reimplements` key/value pair, where they exist in problem-specifications +# - Remove any `include = true` key/value pair (an omitted `include` key implies inclusion) +# - Preserve any other key/value pair +# +# As user-added comments (using the # character) will be removed when this file +# is regenerated, comments can be added via a `comment` key. [97319c93-ebc5-47ab-a022-02a1980e1d29] description = "empty lists" @@ -47,6 +54,9 @@ description = "first list missing element from second list" [83ffe6d8-a445-4a3c-8795-1e51a95e65c3] description = "second list missing element from first list" +[7bc76cb8-5003-49ca-bc47-cdfbe6c2bb89] +description = "first list missing additional digits from second list" + [0d7ee7c1-0347-45c8-9ef5-b88db152b30b] description = "order matters to a list" From 5d5ebeb1c7b774f2c3b06783f75fd7db668f9770 Mon Sep 17 00:00:00 2001 From: Anastasios Chatzialexiou <16361161+tasxatzial@users.noreply.github.com> Date: Tue, 22 Oct 2024 20:38:23 +0300 Subject: [PATCH 2/3] implement tests --- .../practice/sublist/test/sublist_test.clj | 90 +++++++++++-------- 1 file changed, 54 insertions(+), 36 deletions(-) diff --git a/exercises/practice/sublist/test/sublist_test.clj b/exercises/practice/sublist/test/sublist_test.clj index c7fff7b4..d13c21bb 100644 --- a/exercises/practice/sublist/test/sublist_test.clj +++ b/exercises/practice/sublist/test/sublist_test.clj @@ -2,56 +2,74 @@ (:require [clojure.test :refer [deftest is testing]] sublist)) -(deftest empty-lists-test - (is (= :equal (sublist/classify [] [])))) +(deftest test-97319c93-ebc5-47ab-a022-02a1980e1d29 + (testing "Empty lists" + (is (= :equal (sublist/classify [] []))))) -(deftest empty-list-within-non-empty-list-test - (is (= :sublist (sublist/classify [] [1 2 3])))) +(deftest test-de27dbd4-df52-46fe-a336-30be58457382 + (testing "Empty list within non empty list" + (is (= :sublist (sublist/classify [] [1 2 3]))))) -(deftest non-empty-list-contains-empty-list-test - (is (= :superlist (sublist/classify [1 2 3] [])))) +(deftest test-5487cfd1-bc7d-429f-ac6f-1177b857d4fb + (testing "Non empty list contains empty list" + (is (= :superlist (sublist/classify [1 2 3] []))))) -(deftest list-equals-itself-test - (is (= :equal (sublist/classify [1 2 3] [1 2 3])))) +(deftest test-1f390b47-f6b2-4a93-bc23-858ba5dda9a6 + (testing "List equals itself" + (is (= :equal (sublist/classify [1 2 3] [1 2 3]))))) -(deftest different-lists - (is (= :unequal (sublist/classify [1 2 3] [2 3 4])))) +(deftest test-7ed2bfb2-922b-4363-ae75-f3a05e8274f5 + (testing "Different lists" + (is (= :unequal (sublist/classify [1 2 3] [2 3 4]))))) -(deftest false-start - (is (= :sublist (sublist/classify [1 2 5] [0 1 2 3 1 2 5 6])))) +(deftest test-3b8a2568-6144-4f06-b0a1-9d266b365341 + (testing "False start" + (is (= :sublist (sublist/classify [1 2 5] [0 1 2 3 1 2 5 6]))))) -(deftest consecutive - (is (= :sublist (sublist/classify [1 1 2] [0 1 1 1 2 1 2])))) +(deftest test-dc39ed58-6311-4814-be30-05a64bc8d9b1 + (testing "Consecutive" + (is (= :sublist (sublist/classify [1 1 2] [0 1 1 1 2 1 2]))))) -(deftest sublist-at-start - (is (= :sublist (sublist/classify [0 1 2] [0 1 2 3 4 5])))) +(deftest test-d1270dab-a1ce-41aa-b29d-b3257241ac26 + (testing "Sublist at start" + (is (= :sublist (sublist/classify [0 1 2] [0 1 2 3 4 5]))))) -(deftest sublist-in-middle - (is (= :sublist (sublist/classify [2 3 4] [0 1 2 3 4 5])))) +(deftest test-81f3d3f7-4f25-4ada-bcdc-897c403de1b6 + (testing "Sublist in middle" + (is (= :sublist (sublist/classify [2 3 4] [0 1 2 3 4 5]))))) -(deftest sublist-at-end - (is (= :sublist (sublist/classify [3 4 5] [0 1 2 3 4 5])))) +(deftest test-43bcae1e-a9cf-470e-923e-0946e04d8fdd + (testing "Sublist at end" + (is (= :sublist (sublist/classify [3 4 5] [0 1 2 3 4 5]))))) -(deftest at-start-of-superlist - (is (= :superlist (sublist/classify [0 1 2 3 4 5] [0 1 2])))) +(deftest test-76cf99ed-0ff0-4b00-94af-4dfb43fe5caa + (testing "At start of superlist" + (is (= :superlist (sublist/classify [0 1 2 3 4 5] [0 1 2]))))) -(deftest in-middle-of-superlist - (is (= :superlist (sublist/classify [0 1 2 3 4 5] [2 3])))) +(deftest test-b83989ec-8bdf-4655-95aa-9f38f3e357fd + (testing "In middle of superlist" + (is (= :superlist (sublist/classify [0 1 2 3 4 5] [2 3]))))) -(deftest at-end-of-superlist - (is (= :superlist (sublist/classify [0 1 2 3 4 5] [3 4 5])))) +(deftest test-26f9f7c3-6cf6-4610-984a-662f71f8689b + (testing "At end of superlist" + (is (= :superlist (sublist/classify [0 1 2 3 4 5] [3 4 5]))))) -(deftest first-list-missing-element-from-second-list - (is (= :unequal (sublist/classify [1 3] [1 2 3])))) +(deftest test-0a6db763-3588-416a-8f47-76b1cedde31e + (testing "First list missing element from second list" + (is (= :unequal (sublist/classify [1 3] [1 2 3]))))) -(deftest second-list-missing-element-from-first-list - (is (= :unequal (sublist/classify [1 2 3] [1 3])))) +(deftest test-83ffe6d8-a445-4a3c-8795-1e51a95e65c3 + (testing "Second list missing element from first list" + (is (= :unequal (sublist/classify [1 2 3] [1 3]))))) -(deftest order-matters-to-a-list - (is (= :unequal (sublist/classify [1 2 3] [3 2 1])))) +(deftest test-7bc76cb8-5003-49ca-bc47-cdfbe6c2bb89 + (testing "First list missing additional digits from second list" + (is (= :unequal (sublist/classify [1 2] [1 22]))))) -(deftest same-digits-but-different-numbers - (is (= :unequal (sublist/classify [1 0 1] [10 1])))) +(deftest test-0d7ee7c1-0347-45c8-9ef5-b88db152b30b + (testing "Order matters to a list" + (is (= :unequal (sublist/classify [1 2 3] [3 2 1]))))) -(deftest second-list-continues-first-list - (is (= :unequal (sublist/classify [1] [2 3])))) +(deftest test-5f47ce86-944e-40f9-9f31-6368aad70aa6 + (testing "Same digits but different numbers" + (is (= :unequal (sublist/classify [1 0 1] [10 1]))))) From 6044750e20133b9b7b78f180a639e4eb87fa6711 Mon Sep 17 00:00:00 2001 From: Anastasios Chatzialexiou <16361161+tasxatzial@users.noreply.github.com> Date: Tue, 22 Oct 2024 20:47:46 +0300 Subject: [PATCH 3/3] sync docs --- exercises/practice/sublist/.docs/instructions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/exercises/practice/sublist/.docs/instructions.md b/exercises/practice/sublist/.docs/instructions.md index 7535931a..8228edc6 100644 --- a/exercises/practice/sublist/.docs/instructions.md +++ b/exercises/practice/sublist/.docs/instructions.md @@ -8,8 +8,8 @@ Given any two lists `A` and `B`, determine if: - None of the above is true, thus lists `A` and `B` are unequal Specifically, list `A` is equal to list `B` if both lists have the same values in the same order. -List `A` is a superlist of `B` if `A` contains a sub-sequence of values equal to `B`. -List `A` is a sublist of `B` if `B` contains a sub-sequence of values equal to `A`. +List `A` is a superlist of `B` if `A` contains a contiguous sub-sequence of values equal to `B`. +List `A` is a sublist of `B` if `B` contains a contiguous sub-sequence of values equal to `A`. Examples: