From 91dc00ea0d8de580af21ca3ed39cebdd94bee6e3 Mon Sep 17 00:00:00 2001 From: KKlochko Date: Wed, 1 Nov 2023 15:01:22 +0200 Subject: [PATCH] Rename unsigned-int? to unsigned-int-string? --- src/cipher_analytical_machine/parsers/parsers.clj | 4 ++-- .../parsers/simple_substitution.clj | 6 +++--- test/cipher_analytical_machine/parsers/parsers_test.clj | 7 +++++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/cipher_analytical_machine/parsers/parsers.clj b/src/cipher_analytical_machine/parsers/parsers.clj index e932f2e..df268a8 100644 --- a/src/cipher_analytical_machine/parsers/parsers.clj +++ b/src/cipher_analytical_machine/parsers/parsers.clj @@ -2,7 +2,7 @@ (:require [cheshire.core :as cc]) (:gen-class)) -(defn unsigned-int? +(defn unsigned-int-string? "Return true if the string is an unsigned integer." [str] (if (re-matches #"\d+" str) @@ -15,7 +15,7 @@ (int? str-or-int) str-or-int - (unsigned-int? str-or-int) + (unsigned-int-string? str-or-int) (Integer/parseInt str-or-int) :else diff --git a/src/cipher_analytical_machine/parsers/simple_substitution.clj b/src/cipher_analytical_machine/parsers/simple_substitution.clj index 548ce00..784b92e 100644 --- a/src/cipher_analytical_machine/parsers/simple_substitution.clj +++ b/src/cipher_analytical_machine/parsers/simple_substitution.clj @@ -15,14 +15,14 @@ (defn decode-key "Returns the first character if the string is a char. Return the number if the string is a number." [str] - (if (ps/unsigned-int? str) + (if (ps/unsigned-int-string? str) (Integer/parseInt str) (first str))) (defn decode-pair "Decode a numbers as a string and a char as a string" [acc [key value]] - (if (ps/unsigned-int? key) + (if (ps/unsigned-int-string? key) (assoc acc (decode-key key) (decode-key value)) (assoc acc (decode-key key) value))) @@ -38,7 +38,7 @@ (defn generate-table-or-decode-json "It generate the table and return map with the key and the table if the argument is a key. Else it decode the json." [key-or-json symbols] - (if (ps/unsigned-int? key-or-json) + (if (ps/unsigned-int-string? key-or-json) (-> {"key" key-or-json} (assoc "table" (ss/generate-substitution-table symbols))) (decode-key-and-substitution-table-from-json key-or-json))) diff --git a/test/cipher_analytical_machine/parsers/parsers_test.clj b/test/cipher_analytical_machine/parsers/parsers_test.clj index 75556e0..46d20e5 100644 --- a/test/cipher_analytical_machine/parsers/parsers_test.clj +++ b/test/cipher_analytical_machine/parsers/parsers_test.clj @@ -3,13 +3,16 @@ [clojure.test :refer :all] [cipher-analytical-machine.parsers.parsers :refer :all])) -(deftest unsigned-int?-test +(deftest unsigned-int-string?-test (testing "The function return true only for an unsingned integer as a string." (are [str expected] (= expected - (unsigned-int? str)) + (unsigned-int-string? str)) + "9" true "9" true "10" true + "asd 10 " false + " 10 " false "-10" false "abc" false)))