You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.6 KiB
47 lines
1.6 KiB
(ns cipher-analytical-machine.symbol-factories-test
|
|
(:require
|
|
[clojure.test :refer :all]
|
|
[cipher-analytical-machine.symbol_factories :refer :all]
|
|
))
|
|
|
|
(deftest lower-english-alphabet-factory-test
|
|
(let [symbols (lower-english-alphabet-factory)]
|
|
(testing "It must have same order"
|
|
(is (= "abcdefghijklmnopqrstuvwxyz" symbols)))
|
|
|
|
(testing "It must have 26 letters"
|
|
(is (= 26 (count symbols))))))
|
|
|
|
(deftest english-alphabet-factory-test
|
|
(let [symbols (english-alphabet-factory)]
|
|
(testing "It must have same order"
|
|
(is (= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" symbols)))
|
|
|
|
(testing "It must have 2*26 letters"
|
|
(is (= (* 2 26) (count symbols))))))
|
|
|
|
(deftest lower-ukrainian-alphabet-factory-test
|
|
(let [symbols (lower-ukrainian-alphabet-factory)]
|
|
(testing "It must have same order"
|
|
(is (= "абвгґдеєжзиіїйклмнопрстуфхцчшщьюя" symbols)))
|
|
|
|
(testing "It must have 33 letters"
|
|
(is (= 33 (count symbols))))))
|
|
|
|
(deftest ukrainian-alphabet-factory-test
|
|
(let [symbols (ukrainian-alphabet-factory)]
|
|
(testing "It must have same order"
|
|
(is (= "абвгґдеєжзиіїйклмнопрстуфхцчшщьюяАБВГҐДЕЄЖЗИІЇЙКЛМНОПРСТУФХЦЧШЩЬЮЯ" symbols)))
|
|
|
|
(testing "It must have 2*33 letters"
|
|
(is (= (* 2 33) (count symbols))))))
|
|
|
|
(deftest digit-set-factory-test
|
|
(let [symbols (digit-set-factory)]
|
|
(testing "It must have same order"
|
|
(is (= "0123456789" symbols)))
|
|
|
|
(testing "It must have 10 digits"
|
|
(is (= 10 (count symbols))))))
|
|
|