Copyright © 2020, 2011, 2022, 2023 Pavel Tisnovsky
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Unit tests for validators module.
import math
import pytest
validators for numbers validators for numbers represented as strings validators for numbers represented as bytes or byte arrays validators for various hash values validators for ID representations validators for timestamps and durations validators related to rule selectors validators for specific URLs and paths other validators
from validators import (
BLAKE2Validator,
b64IdentityValidator,
domainInBytesValidator,
domainValidator,
emptyStringValidator,
floatTypeValidator,
hexaString32Validator,
intInBytesValidator,
intInStringValidator,
intTypeValidator,
isNaNValidator,
isNotNaNValidator,
jsonInStrValidator,
keyValueValidator,
md5Validator,
negFloatInBytesValidator,
negFloatInStringValidator,
negFloatOrZeroInBytesValidator,
negFloatOrZeroInStringValidator,
negFloatOrZeroValidator,
negFloatValidator,
negIntInBytesValidator,
negIntInStringValidator,
negIntOrZeroInBytesValidator,
negIntOrZeroInStringValidator,
negIntOrZeroValidator,
negIntValidator,
notEmptyStringValidator,
pathToCephInBytesValidator,
posFloatInBytesValidator,
posFloatInStringValidator,
posFloatOrZeroInBytesValidator,
posFloatOrZeroInStringValidator,
posFloatOrZeroValidator,
posFloatValidator,
posIntInBytesValidator,
posIntInStringValidator,
posIntOrZeroInBytesValidator,
posIntOrZeroInStringValidator,
posIntOrZeroValidator,
posIntValidator,
ruleFQDNInBytesValidator,
ruleFQDNValidator,
ruleIDInBytesValidator,
ruleIDValidator,
sha1Validator,
sha3_224Validator,
sha3_256Validator,
sha3_384Validator,
sha3_512Validator,
sha224Validator,
sha256Validator,
sha384Validator,
sha512Validator,
shake128Validator,
shake256Validator,
stringTypeValidator,
timestampValidator,
timestampValidatorMs,
timestampValidatorNoZ,
timestampValidatorOffset,
urlToAWSValidator,
uuidInBytesValidator,
uuidValidator,
versionInBytesValidator,
)
from voluptuous import Invalid
proper positive integers
positive_int_values = (1, 2, 3, 127, 128, 255, 256,
32767, 32768, 65535, 65536,
4294967295, 4294967296,
18446744073709551615, 18446744073709551616)
proper positive integers and a zero
positive_int_values_and_zero = positive_int_values + (0, )
improper positive integers
not_positive_int_values = (0, -1, -65535)
proper negative integers
negative_int_values = (-1, -2, -3, -127, -128, -255, -256,
-32767, -32768, -65535, -65536,
-4294967295, -4294967296,
-18446744073709551615, -18446744073709551616)
proper negative integers and a zero
negative_int_values_and_zero = negative_int_values + (0, )
improper negative integers
not_negative_int_values = (0, 1, 2, 255, 256, 32767, 65535)
improper integers
not_integer_type = ("", "0", "1", "-1", True, False, 3.14, (), [], None)
positive float values
positive_float_values = (1.0, 3.14, 1e10, 1e100, 1e-10, 1e-100)
not positive float values
not_positive_float_values = (0.0, -3.14, -1e10, -1e100, -1e-10, -1e-100)
positive float values and zero
positive_float_values_and_zero = positive_float_values + (0.0, )
negative float values
negative_float_values = (-1.0, -3.14, -1e10, -1e100, -1e-10, -1e-100)
not negative float values
not_negative_float_values = (0.0, 1.0, 3.14, 1e10, 1e100, 1e-10, 1e-100)
negative float values and zero
negative_float_values_and_zero = negative_float_values + (0.0, )
improper floats
not_float_type = ("", "0", "1", "-1", True, False, (), [], None)
proper string values
string_values = ("", " ", "non-empty", "ěščř")
proper string values
non_empty_string_values = (" ", "non-empty", "ěščř")
improper string values
not_string_type = (0, 3.14, True, False, None, 1+2j)
proper positive integers stored in string
positive_int_values_in_string = ("1", "2", "3", "127", "128", "255", "256",
"32767", "32768", "65535", "65536",
"4294967295", "4294967296",
"18446744073709551615", "18446744073709551616")
proper positive integers and a zero stored in string
positive_int_values_and_zero_in_string = positive_int_values_in_string + ("0", )
improper positive integers stored in string
not_positive_int_values_in_string = ("0", "-1", "-65535")
proper negative integers stored in string
negative_int_values_in_string = ("-1", "-2", "-3", "-127", "-128", "-255", "-256",
"-32767", "-32768", "-65535", "-65536",
"-4294967295", "-4294967296",
"-18446744073709551615", "-18446744073709551616")
proper negative integers and a zero stored in string
negative_int_values_and_zero_in_string = negative_int_values_in_string + ("0", )
improper negative integers stored in string
not_negative_int_values_in_string = ("0", "1", "127", "128", "255", "256", "65535")
positive float values stored in string
positive_float_values_in_string = ("1.0", "3.14", "1e10", "1e100", "1e-10", "1e-100")
not positive float values stored in string
not_positive_float_values_in_string = ("0.0", "-3.14", "-1e10", "-1e100", "-1e-10", "-1e-100")
positive float values and zero stored in string
positive_float_values_and_zero_in_string = positive_float_values_in_string + ("0.0", )
negative float values stored in string
negative_float_values_in_string = ("-1.0", "-3.14", "-1e10", "-1e100", "-1e-10", "-1e-100")
not negative float values stored in string
not_negative_float_values_in_string = ("0.0", "1.0", "3.14", "1e10", "1e100", "1e-10", "1e-100")
negative float values and zero stored in string
negative_float_values_and_zero_in_string = negative_float_values_in_string + ("0.0", )
strings with exactly 32 hexadecimal digits
hexa32_strings = (
"00000000000000000000000000000000",
"11111111111111111111111111111111",
"22222222222222222222222222222222",
"33333333333333333333333333333333",
"44444444444444444444444444444444",
"55555555555555555555555555555555",
"66666666666666666666666666666666",
"77777777777777777777777777777777",
"88888888888888888888888888888888",
"99999999999999999999999999999999",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
"cccccccccccccccccccccccccccccccc",
"dddddddddddddddddddddddddddddddd",
"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
"ffffffffffffffffffffffffffffffff",
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB",
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC",
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD",
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE",
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
"0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f",
"0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F",
"0123456789abcdef0123456789abcdef",
"0123456789ABCDEF0123456789abcdef",
"0123456789abcdef0123456789ABCDEF",
"0123456789ABCDEF0123456789ABCDEF",
"123456789abcdef0123456789abcdef0",
"123456789ABCDEF0123456789abcdef0",
"123456789abcdef0123456789ABCDEF0",
"123456789ABCDEF0123456789ABCDEF0",
)
strings that have not exactly 32 hexadecimal digits
not_hexa32_strings = (
"",
"0",
not hexa chars
"zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz",
"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ",
"0000000000000000000000000000000",
"x0000000000000000000000000000000",
"1x111111111111111111111111111111",
"22x22222222222222222222222222222",
"333x3333333333333333333333333333",
"4444x444444444444444444444444444",
"55555x55555555555555555555555555",
"666666x6666666666666666666666666",
"7777777x777777777777777777777777",
"88888888x88888888888888888888888",
"999999999x9999999999999999999999",
"aaaaaaaaaaxaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbxbbbbbbbbbbbbbbbbbbbb",
"ccccccccccccxccccccccccccccccccc",
"dddddddddddddxdddddddddddddddddd",
"eeeeeeeeeeeeeexeeeeeeeeeeeeeeeee",
"fffffffffffffffxffffffffffffffff",
shorter by one character
"fffffffffffffffffffffffffffffff",
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
"0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0",
"0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0",
"0123456789abcdef0123456789abcde",
"0123456789ABCDEF0123456789ABCDE",
longer by one character
"000000000000000000000000000000000",
"fffffffffffffffffffffffffffffffff",
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
"0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000",
"0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F000",
"0123456789abcdef0123456789abcdeee",
"0123456789ABCDEF0123456789ABCDEEE",
)
correct SHA1 sum values
sha1sum_correct_values = (
"da39a3ee5e6b4b0d3255bfef95601890afd80709", # ""
"b858cb282617fb0956d960215c8e84d1ccf909c6", # " "
"ac9231da4082430afe8f4d40127814c613648d8e", # "<Tab>"
"0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33", # "foo"
"62cdb7020ff920e5aa642c3d4066950dd1f01f4d", # "bar"
"bbe960a25ea311d21d40669e93df2003ba9b90a2", # "baz"
"01b307acba4f54f55aafc33bb06bbbf6ca803e9a", # "1234567890"
"feab40e1fca77c7360ccca1481bb8ba5f919ce3a", # "FOO"
"a5d5c1bba91fdb6c669e1ae0413820885bbfc455", # "BAR"
"8324feb44eda347289ca80c2cbf964a214ccd719", # "BAZ"
"3a52ce780950d4d969792a2559cd519d7ee8c727", # "."
"5bab61eb53176449e25c2c82f172b82cb13ffb9d", # "?"
"c0a0e1c81318f3d91f6b7b7b8dc12fc1220ed187", # "ěščřžýáíé"
"edc52dfb9088c992c272f2ec05226c6b3b57f87b", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA1 sum values
sha1sum_incorrect_values = (
"da39a3ee5e6b4b0d3255bfef95601890afd8070", # shorter
"b858cb282617fb0956d960215c8e84d1ccf909c6f", # longer
"ac9231da4082430afe8f4d40127814c613648d8Z", # invalid character
"" # empty (obviously)
"DA39A3EE5E6B4B0D3255BFEF95601890AFD80709", # changed to uppercase: ""
"B858CB282617FB0956D960215C8E84D1CCF909C6", # changed to uppercase: " "
"AC9231DA4082430AFE8F4D40127814C613648D8E", # changed to uppercase: "<TAB>"
"0BEEC7B5EA3F0FDBC95D0DD47F3C5BC275DA8A33", # changed to uppercase: "FOO"
"62CDB7020FF920E5AA642C3D4066950DD1F01F4D", # changed to uppercase: "BAR"
"BBE960A25EA311D21D40669E93DF2003BA9B90A2", # changed to uppercase: "BAZ"
"01B307ACBA4F54F55AAFC33BB06BBBF6CA803E9A", # changed to uppercase: "1234567890"
"FEAB40E1FCA77C7360CCCA1481BB8BA5F919CE3A", # changed to uppercase: "FOO"
"A5D5C1BBA91FDB6C669E1AE0413820885BBFC455", # changed to uppercase: "BAR"
"8324FEB44EDA347289CA80C2CBF964A214CCD719", # changed to uppercase: "BAZ"
"3A52CE780950D4D969792A2559CD519D7EE8C727", # changed to uppercase: "."
"5BAB61EB53176449E25C2C82F172B82CB13FFB9D", # changed to uppercase: "?"
"C0A0E1C81318F3D91F6B7B7B8DC12FC1220ED187", # changed to uppercase: "ĚŠČŘŽÝÁÍÉ"
"EDC52DFB9088C992C272F2EC05226C6B3B57F87B", # changed to uppercase: "АБВГДЕЖЛПРСТОУ"
)
correct SHA224 sum values
sha224sum_correct_values = (
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f", # ""
"ca17734c016e36b898af29c1aeb142e774abf4b70bac55ec98a27ba8", # " "
"c0a4e868a8a338b2457376faf371e5b41a367e3c162bb0cb1a06efc8", # "<Tab>"
"0808f64e60d58979fcb676c96ec938270dea42445aeefcd3a4e6f8db", # "foo"
"07daf010de7f7f0d8d76a76eb8d1eb40182c8d1e7a3877a6686c9bf0", # "bar"
"1846d1bd30922b6492a1a28bc940fd00efcd2d9bfb00e34e94bf8048", # "baz"
"b564e8a5cf20a254eb34e1ae98c3d957c351ce854491ccbeaeb220ea", # "1234567890"
"9245d41684c67df13d81a3600ab1f59c155eb8667929c2798c01bb62", # "FOO"
"b50a9be3c2ac5c2e7b732124f5aefc5e9c44e74009e7c2c493e1ae68", # "BAR"
"9e502a72e805a78cdf933f99259ad4576ccf3762d5151a262f44e7df", # "BAZ"
"2727e5a04d8acc225b3320799348e34eff9ac515e1130101baab751a", # "."
"a1d9840a7d6e6f9a6c13f2b7802f1f64bb01f0fb041f698244f207a1", # "?"
"b9da488e288ac2e28307cda16734d1030a865e372ea837f440b429a7", # "ěščřžýáíé"
"987771883fcf5b44bcf91d4ac18c7b89a4a8741299eaf78fbbff3009", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA224 sum values
sha224sum_incorrect_values = (
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42", # shorter
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42ff", # longer
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42Z", # invalid character
"", # empty (obviously)
)
correct SHA256 sum values
sha256sum_correct_values = (
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", # ""
"36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068", # " "
"2b4c342f5433ebe591a1da77e013d1b72475562d48578dca8b84bac6651c3cb9", # "<Tab>"
"2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae", # "foo"
"fcde2b2edba56bf408601fb721fe9b5c338d10ee429ea04fae5511b68fbf8fb9", # "bar"
"baa5a0964d3320fbc0c6a922140453c8513ea24ab8fd0577034804a967248096", # "baz"
"c775e7b757ede630cd0aa1113bd102661ab38829ca52a6422ab782862f268646", # "1234567890"
"9520437ce8902eb379a7d8aaa98fc4c94eeb07b6684854868fa6f72bf34b0fd3", # "FOO"
"81f5f5515e670645c30c6340fe397157bbd2d42caa6968fd296a725ec9fac4ed", # "BAR"
"9773f3684f996b2775eb5b05819b54674a6de538e1193c8c0db784f74ae14e63", # "BAZ"
"cdb4ee2aea69cc6a83331bbe96dc2caa9a299d21329efb0336fc02a82e1839a8", # "."
"8a8de823d5ed3e12746a62ef169bcf372be0ca44f0a1236abc35df05d96928e1", # "?"
"a05e42c7e14de716cd501e135f3f5e49545f71069de316a1e9f7bb153f9a7356", # "ěščřžýáíé"
"ee3b5d221780c973eb9a43805d696b7a201dbd159900acff9988a9ee41d54125", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA256 sum values
sha256sum_incorrect_values = (
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85", # shorter
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555", # longer
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85Z", # invalid character
"", # empty (obviously)
)
correct SHA384 sum values
sha384sum_correct_values = (
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b", # noqa: E501 ""
"588016eb10045dd85834d67d187d6b97858f38c58c690320c4a64e0c2f92eebd9f1bd74de256e8268815905159449566", # noqa: E501 " "
"1f04ac7ef36d8652363c75ce68109badf388ea06f2696924eb413eea47578a80f30a46deb7257dcce4779f7de8eef43b", # noqa: E501 "<Tab>"
"98c11ffdfdd540676b1a137cb1a22b2a70350c9a44171d6b1180c6be5cbb2ee3f79d532c8a1dd9ef2e8e08e752a3babb", # noqa: E501 "foo"
"14919aaff0da5efeb871fe8a438061c1996e88bfe199e2796b3b5c5c65714f61183adc53d48c3a32734ca6faf7d7fda8", # noqa: E501 "bar"
"967004d25de4abc1bd6a7c9a216254a5ac0733e8ad96dc9f1ea0fad9619da7c32d654ec8ad8ba2f9b5728fed6633bd91", # noqa: E501 "baz"
"ed845f8b4f2a6d5da86a3bec90352d916d6a66e3420d720e16439adf238f129182c8c64fc4ec8c1e6506bc2b4888baf9", # noqa: E501 "1234567890"
"e415991986b2e2c1d65e1ea66cbdbab71da0a28f5aa51fd693ca633d1ea26499bf57a79160b7396f16882f21e0cbc631", # noqa: E501 "FOO"
"710d1ad91688c9876d6b39f1b49290c01926a9c2a48d0cc6cf29ac0e9af0bb1d576374545c3f06ddd91a6701288f1edb", # noqa: E501 "BAR"
"849b220c87377ecc35db359115602f9d03b9f94b92065c8575afd8eefc174f044d55521a15970d65bc0e0e828e460418", # noqa: E501 "BAZ"
"7582368259da8769965446762440c16e3ff4d09dd3bc0e9073a2b4e3d7d87d672c6de61faa09b2795d33da3264b05bcc", # noqa: E501 "."
"000f49a27e6d5622a6e521df9355bb938c391c9a5c1871ce528d9088e1cda2223b4afe2aafaa481321d649082db6e547", # noqa: E501 "?"
"9c60a389c58d3ceffbc7838bbce12710d36ee28b84b75f2cf3433db9d51b8e3cfd305a20ed426a594fbca1f6ef0c306b", # noqa: E501 "ěščřžýáíé"
"7e9a4a2ae3fe0b910abc297f9a6e51acd1fed6252adb713b15bb1dda92b02fa78d80a315959f8fb707c8bfe104b4c317", # noqa: E501 "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA384 sum values
sha384sum_incorrect_values = (
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95", # noqa: E501 shorter
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95bb", # noqa: E501 longer
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95Z", # noqa: E501 invalid character
"", # noqa: E501 empty (obviously)
)
correct SHA512 sum values
sha512sum_correct_values = (
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e", # noqa: E501 ""
"f90ddd77e400dfe6a3fcf479b00b1ee29e7015c5bb8cd70f5f15b4886cc339275ff553fc8a053f8ddc7324f45168cffaf81f8c3ac93996f6536eef38e5e40768", # noqa: E501 " "
"f27b5bf8d35ea2bbbb6c0f9fef89d883415b5adbd6a84030cb1f35e6a6c026e65c60fb99f562f7eb9f77f3dec5001473441d2c5586b54d9b999cf4bd790e4c56", # noqa: E501 "<Tab>"
"f7fbba6e0636f890e56fbbf3283e524c6fa3204ae298382d624741d0dc6638326e282c41be5e4254d8820772c5518a2c5a8c0c7f7eda19594a7eb539453e1ed7", # noqa: E501 "foo"
"d82c4eb5261cb9c8aa9855edd67d1bd10482f41529858d925094d173fa662aa91ff39bc5b188615273484021dfb16fd8284cf684ccf0fc795be3aa2fc1e6c181", # noqa: E501 "bar"
"22b41602570746d784cef124fa6713eec180f93af02a1bfee05528e94a1b053e4136b446015161d04e9900849575bd8f95f857773868a205dbed42413cd054f1", # noqa: E501 "baz"
"12b03226a6d8be9c6e8cd5e55dc6c7920caaa39df14aab92d5e3ea9340d1c8a4d3d0b8e4314f1f6ef131ba4bf1ceb9186ab87c801af0d5c95b1befb8cedae2b9", # noqa: E501 "1234567890"
"9840f9826bba3ddfc3c4872884f51dcbe915a2d42c6a4d0d59ce564e7fe541f15b9a4271554065379709932bc99a71d85f05aacd62457fce5fd131f847de99ec", # noqa: E501 "FOO"
"d28acbb746e0b2b703739edc8b93602aa7d50d864e350248c520f895213207b25182c913892024a3de0b6306898911ff3b526fa8ad16c4f0565bd4bfa614ca06", # noqa: E501 "BAR"
"649e8d185da5490ebc0f78364f000dd31a2f2a18e8eb3d938148193b36101f2952e69bbbea78b3ebdb19c0b458ada878b1f047f0e3536136d581d6e857ae0d41", # noqa: E501 "BAZ"
"0b61241d7c17bcbb1baee7094d14b7c451efecc7ffcbd92598a0f13d313cc9ebc2a07e61f007baf58fbf94ff9a8695bdd5cae7ce03bbf1e94e93613a00f25f21", # noqa: E501 "."
"ca63c07ad35d8c9fb0c92d6146759b122d4ec5d3f67ebe2f30ddb69f9e6c9fd3bf31a5e408b08f1d4d9cd68120cced9e57f010bef3cde97653fed5470da7d1a0", # noqa: E501 "?"
"961933f57beedb78ae8984118bbca4919961a7ae324e554fd476de3f3e0676f1611adaebc5082cec3a8d47c9c7339d1f2c6a28fe92310b2726443da4a8ecb3bc", # noqa: E501 "ěščřžýáíé"
"2e3589a4eaa0187b35aa67b00c4f8744aa08f531d33816a630791de09075f1653dd2e58d439489fd2fbe3fcbf65297f552621e6137143eee2fb7993f723acc29", # noqa: E501 "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA512 sum values
sha512sum_incorrect_values = (
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3", # noqa: E501 shorter
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3ee", # noqa: E501 longer
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3Z", # noqa: E501 invalid character
"", # noqa: E501 empty (obviously)
)
correct SHA-3 224 sum values
sha3_224sum_correct_values = (
"6b4e03423667dbb73b6e15454f0eb1abd4597f9a1b078e3f5b5a6bc7", # ""
"4cb5f87b01b38adc0e6f13f915668c2394cb1fb7a2795635b894dda1", # " "
"afb459483f686e0e3e541fa96717c1886121e6270196c924fa8a067e", # "<Tab>"
"f4f6779e153c391bbd29c95e72b0708e39d9166c7cea51d1f10ef58a", # "foo"
"cd3e5cfe8c66f5cf9ab3b7867e4d752851d4a6a54d06bf6081429ca0", # "bar"
"35b4a09d436c7ec1768389749757e6d924751c5b5462211257f7ec07", # "baz"
"9877af03f5e1919851d0ef4ce6b23f1e85a40b446d93713f4c6e6dcd", # "1234567890"
"3be6ce866712576f7531c8a4ecc4dc7bcd34605dacc44fb0333f9e4a", # "FOO"
"f68a7709193f40271900ee0af123f53f19a3f7d63b28bb972096a480", # "BAR"
"868f8514afd2cb4a4ea47a2b60ea4611feb13a61f1ac7b22d8974d2d", # "BAZ"
"175f6a68d155bbb981487655627e09ddb9b27c3a5cec04cfd626f638", # "."
"490c6a2682fc57b15cae3b04798dca145e9e00466e52cf9343441c2d", # "?"
"c770e8542bad958c42d0ed15f37eac0bff07a58c8d8489bf3cf84a5a", # "ěščřžýáíé"
"2b2c672f6aa173425f613722c05e8bb8a2e82e083433dcad6fe049d1", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA-3 224 sum values
sha3_224sum_incorrect_values = (
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42", # shorter
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42ff", # longer
"d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42Z", # invalid character
"", # empty (obviously)
)
correct SHA-3 256 sum values
sha3_256sum_correct_values = (
"a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a", # ""
"60e893e6d54d8526e55a81f98bfac5da236bb203e84ed5967a8f527d5bf3d4a4", # " "
"8bf02b8b238233453488311be9b316e58ab7e1356ce948cb90dfef1af56992eb", # "<Tab>"
"76d3bc41c9f588f7fcd0d5bf4718f8f84b1c41b20882703100b9eb9413807c01", # "foo"
"cceefd7e0545bcf8b6d19f3b5750c8a3ee8350418877bc6fb12e32de28137355", # "bar"
"9713fc828dd6313c2975127f77e1681499b9d80c0bef9645837ed6555f24fb76", # "baz"
"01da8843e976913aa5c15a62d45f1c9267391dcbd0a76ad411919043f374a163", # "1234567890"
"841674cfd27cf225b4cb2cf79b8f6d4065cb374e17d0cf04ca160f1c8836d7ba", # "FOO"
"237aed288cafaada0fde7b2fcecf0c26b9638947a504ce8a20a78047e9fab294", # "BAR"
"3e2499206cc0d2643bbe9b301dc51e1f384f309cdb58aef05589d19cdaad7849", # "BAZ"
"6890427a1f51a3e7e1dfb1f57449c5f2a24a9bed6b5d82973df1d78e765ea227", # "."
"d827feb7bdb2df079c4d896ee5fdabad3b6258ad2049919bf822317e91d89bbf", # "?"
"fc5c5dc05616b236c008719e17e542977ad862d2db0c97c2ec3692ae557485ce", # "ěščřžýáíé"
"6a4ec5d268f3f04651e788a97a17708c428d062fb200b1de88fa0fe8cb574d94", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA-3 256 sum values
sha3_256sum_incorrect_values = (
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85", # shorter
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555", # longer
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85Z", # invalid character
"", # empty (obviously)
)
correct SHA-3 384 sum values
sha3_384sum_correct_values = (
"0c63a75b845e4f7d01107d852e4c2485c51a50aaaa94fc61995e71bbee983a2ac3713831264adb47fb6bd1e058d5f004", # noqa: E501 ""
"56cd53d48102c914e48813b23c82e168faac72ea78df8f9d88b6d7c4a20c0b9d42c67c9647560cc91031a2bd559a1a2b", # noqa: E501 " "
"634da3ecea77f875a073de435e5cf12b3c77ab55dbd95cde81d556af64abaaa68e91c221481793ba3b378b6e137fd61c", # noqa: E501 "<Tab>"
"665551928d13b7d84ee02734502b018d896a0fb87eed5adb4c87ba91bbd6489410e11b0fbcc06ed7d0ebad559e5d3bb5", # noqa: E501 "foo"
"11cfca1618a8cfad41c77c8e4af303d6c98de7424116e87b5cd533920a17c96b4948e83a9b509a70aa6440e3a7ccc5cb", # noqa: E501 "bar"
"043a768f02f081a34a99c561becad6306082d726ff2c758f96cb9c6c12f60bd92d152918ee93404e1cbabee14992402e", # noqa: E501 "baz"
"6fdddab7d670f202629531c1a51b32ca30696d0af4dd5b0fbb5f82c0aba5e505110455f37d7ef73950c2bb0495a38f56", # noqa: E501 "1234567890"
"1dfd2dad0a7e71f42743680b96e122faea17559a1da31b1404efbc665fc88e64ebfd3ba1542512169f01b10808855dc2", # noqa: E501 "FOO"
"458952226b5919c8a366fdb2d545e919888787baca3af383e493c34e27eb212611bce0351cdd99f40ba3350abdb20207", # noqa: E501 "BAR"
"243e51586cbf1c3df1e138b18a6196503a01a7ca69f5bc7e520497e22c2c3ca9562033de7d1f9bc02f403cdbb33dfdd3", # noqa: E501 "BAZ"
"ba4729848e50f0c964d716e7d39d0bc4cb28eaa66a9c5e696de904d55317faf187d4a6964fa2f9364458b2b237cdf57d", # noqa: E501 "."
"ce7a9f02603364934950707f03fb9af51afedd23941ce8bb97201dfe88b61102685aee236602370813cfa4a3cfb31773", # noqa: E501 "?"
"45f08e3dfd537c58c5e18d169cc7b0a3ab981f5108ffb85a9436207a83d5848a9e4eb09a6b0f9b0b2af5ae599db9a062", # noqa: E501 "ěščřžýáíé"
"3cd09bb3353f5a5d75bfd5944943ef66a7da489614cf9ab1abe4c83146d1d3042d7cc64779b4cf2868dea8f61a7f0bc3", # noqa: E501 "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA-3 384 sum values
sha3_384sum_incorrect_values = (
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95", # noqa: E501 shorter
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95bb", # noqa: E501 longer
"38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95Z", # noqa: E501 invalid character
"", # noqa: E501 empty (obviously)
)
correct SHA-3 512 sum values
sha3_512sum_correct_values = (
"a69f73cca23a9ac5c8b567dc185a756e97c982164fe25859e0d1dcc1475c80a615b2123af1f5f94c11e3e9402c3ac558f500199d95b6d3e301758586281dcd26", # noqa: E501 ""
"e307daea2f0168daa1318e2faa2d67791e9d8e03692a6f7d1eb974e664fe721e81a47b4cf3d0eb19ae5d57afa19a095941cad5a5c050774ad56a8e5e21105757", # noqa: E501 " "
"f219f3571fe6327ffddf3cc609c111b4c7eff2e39e405594e99979bea771df45358418482f8f184b01e2acc5869334a8cbba2b7789d1a70d310f73df2a7129d9", # noqa: E501 "<Tab>"
"4bca2b137edc580fe50a88983ef860ebaca36c857b1f492839d6d7392452a63c82cbebc68e3b70a2a1480b4bb5d437a7cba6ecf9d89f9ff3ccd14cd6146ea7e7", # noqa: E501 "foo"
"03457d23880d7847fc3f58780dd58cda7237a7144ac6758e76d45cec0e06ba69440a855e913ef03790c618777f5b0ec25fc34c4b82d7538151745b120b4f8b37", # noqa: E501 "bar"
"8600823e9544f65105a16c30ee786b9f14b477da92cc8308b3cbec0ce4e14cf737babb8a9546b571fcd43d3b8fa355bf842e39e24d6253f578736a06fc07f6be", # noqa: E501 "baz"
"36dde7d288a2166a651d51ec6ded9e70e72cf6b366293d6f513c75393c57d6f33b949879b9d5e7f7c21cd8c02ede75e74fc54ea15bd043b4df008533fc68ae69", # noqa: E501 "1234567890"
"556c3cdb0c4ae9d908579d98eae3e717a12cf1aae816b0f7c8fdac0148fe2cde19bdd68fe2b74a2ccba81c5ab3abe554a8df928998417cea3f6b5a064d7ea4c4", # noqa: E501 "FOO"
"e2e63561a6c322018bbee8a5d5604fb953c6983d37f2c4b1422b2931ad444bc8ed225f6fc100a376c81b96984e255a91505b3b331877c92a5864b3a1713df0e2", # noqa: E501 "BAR"
"213225c1c50370a0b6776ed1da67545d58464ac52ade91db086127aa7e8e03af55d91fd71aa3350d332f480772cf581724dae30ba06df12d48470d0833b7a7e0", # noqa: E501 "BAZ"
"d70294740dd11b05c90c40afea3794592d551c799076eddb846de5439c56510893f878fca115786f44e7c91bb1b32051606e9b843b3c26c56e4cef1f74cd3a12", # noqa: E501 "."
"cfb06fe8c2bda236cb35369e82ee3043d21bbab5d70696dd79fe27ae5f8b067e314411feebc75e0b0edb01e55d4195bf15317c7cb3e5128e1d77929c530b9d24", # noqa: E501 "?"
"b85f17b2db3e6e5afbea97740b0bcc591aa10c34394b1d737fab275c69727f8aa09c577f5bc84d2872d586225540195d3570f7f1e3ce5297306fe007d70a4de6", # noqa: E501 "ěščřžýáíé"
"7c2e33b1c3c0a91fea40f121fc36900e569e7a3d32771d40503ca3b2eeb30446307d19c24ea485fbc50af9f40e2f52fdfd8e90e8ae40a1571ddd535373f8cf52", # noqa: E501 "АБВГДЕЖЛПРСТОУ"
)
incorrect SHA-3 512 sum values
sha3_512sum_incorrect_values = (
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3", # noqa: E501 shorter
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3ee", # noqa: E501 longer
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3Z", # noqa: E501 invalid character
"", # noqa: E501 empty (obviously)
)
correct SHAKE128 sum values
shake128_correct_values = (
"7f9c2ba4e88f827d616045507605853ed73b8093f6efbc88eb1a6eacfa66ef26", # ""
"893f6542dcc9ccf5dbffbf6c3c28df39d30c39d74cd2d5a94aecdf343244f9a2", # " "
"19f62d035f07eafd9c46acec60fbeda2217a2d73259282e6d358afd58e12277d", # "<Tab>"
"f84e95cb5fbd2038863ab27d3cdeac295ad2d4ab96ad1f4b070c0bf36078ef08", # "foo"
"049d3001a053583fb27efab27ea80ffd934c478b9a0a7e12b0af4851bb7a0579", # "bar"
"2d069fa43c3abb23f6f2d8cc3e9ec4516e431858cb3cda33473785a3ecbd4131", # "baz"
"1cd2c71a52e3f2a620173e915f17648dcc43443ef78754302c6b44cf47daf527", # "1234567890"
"1bffd674ac82e428e0f9b5227bc9aa176835e5afbdf1570fe91fdd767fa9d102", # "FOO"
"138c82dec7955304190baa7193690eafbb70c45c2c8868955ae9912e8f2562f6", # "BAR"
"0b262c9fdac0fc5f02ad028716ea06b4a13b5e05fbe9739eadad317b7b35caff", # "BAZ"
"8419336160ea01d7d9b4955f270ec9d22d10f6bebdbd630e467cf443bc276c96", # "."
"543014bd654ac036b5bbb944bbefc15a87752e0bca766cbfa7eb2cd03dfce549", # "?"
"94377a69efd35308c636b8ac887ec6b34d9a9f26f1256f9ffbee65607e829586", # "ěščřžýáíé"
"b685d90be5f2bed25463ff13d8b7c8bb3756c2a15b52fac6526498040c80415c", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHAKE128 sum values
shake128_incorrect_values = (
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85", # shorter
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555", # longer
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85Z", # invalid character
"", # empty (obviously)
)
correct SHAKE256 sum values
shake256_correct_values = (
"46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762f", # ""
"d61ca51494bcd2e8c1390ec0ba947d656e488ded9f77c97d17d7f40412ecfb7b", # " "
"975e039030170b1c2141cf23e650e82c257f97e4f7913713a80cb2630b6469f5", # "<Tab>"
"1af97f7818a28edfdfce5ec66dbdc7e871813816d7d585fe1f12475ded5b6502", # "foo"
"a15163728ed24e1c7eddc03e92cb421940a0d1fe653bee3294358adf391d4da2", # "bar"
"40468c5255cf33baf329c5c4629ecd9dda9f035a83bc06f748ccd0040ba8dec3", # "baz"
"cd65a4e553405b50c2f37001ea81905f36d650cc775fdad898b2e343644cb3db", # "1234567890"
"56d96bdadec8137f726f936140f59d831cf63fcdd746dbfe9689aaf889fd3321", # "FOO"
"4883baf6168e0aa0114c96fb4850218a3e62c940411a0ea571e594ee8c963356", # "BAR"
"352ff18630a1849213baf41acbb9a40579234bff830c15fc88afd11842ca9f7f", # "BAZ"
"3001979e3455f7a084d3cc5de32ddfbc46f73c8c05c8453c169352e28346fa69", # "."
"92fba37288bb164cb6231489f837a1c5c5fe99542946f69936a60dffb8d8e9d9", # "?"
"76a7411e5612ce9cbac8acc6278924a8b4e5614fdefb62d8eee7f36735935db6", # "ěščřžýáíé"
"81b0bd1031ee23449e0232f85d381025785dd02a65d9984c1c07080ededcd768", # "АБВГДЕЖЛПРСТОУ"
)
incorrect SHAKE256 sum values
shake256_incorrect_values = (
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85", # shorter
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555", # longer
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85Z", # invalid character
"", # empty (obviously)
)
correct BLAKE2 sum values
blake2_correct_values = (
"786a02f742015903c6c6fd852552d272912f4740e15847618a86e217f71f5419d25e1031afee585313896444934eb04b903a685b1448b755d56f701afe9be2ce", # noqa: E501 ""
"ae3aa4b26b87ab60e8ef52430e992ad8c360d0a486153401b46a21096c96e2341dcc2ee584e36b2222016d1f120edc8944d5ab1022678466883fe9e8c0761a53", # noqa: E501 " "
"a508bcade5c56acb606817f39eb8dbf948728e6b34d643039fc3a529b7b1553065b62e8f68efb3542679e8d114acaa5545cf080e331c0e92db0276e942900651", # noqa: E501 "<Tab>"
"ca002330e69d3e6b84a46a56a6533fd79d51d97a3bb7cad6c2ff43b354185d6dc1e723fb3db4ae0737e120378424c714bb982d9dc5bbd7a0ab318240ddd18f8d", # noqa: E501 "foo"
"76aafe37ce69887569c3c1a51f14b639191fb2180cb0c87b566529496636712868556a9adf069d59769bf7e2393d215f195d8e7694f26fc7e20d92195973add8", # noqa: E501 "bar"
"2305476f21a28dd31ba7aaa4bcbd92780ff6c3ee77d45ea025dfec737e6bc725ce391585326dc22208f77c2643ca4afa34334042858a6f250e9094c8f77c82f6", # noqa: E501 "baz"
"68d6ef20266276f163541b9db63db73bc5e6351755b741dbf59c3dcdf6678951a65e0844e238d6d25ae7e4293fcf29f913d02cd68ba1925615865d1aaa50fe8e", # noqa: E501 "1234567890"
"5749fce80b4fef1325d6c20d5513cfe1674ccc111e9c15825f9bf4af814ccf74245518b521e304cbe171e54708011eebd247d87c1133efad77a344472ddc8500", # noqa: E501 "FOO"
"4bd9a4705508ce7655ef4fe2cf36497d18ff257a9e87d0668a4729da138c8b1283e122d044cc249f7339ddf943804315c1cf6b19a921ed8c15779b71fa4e7a51", # noqa: E501 "BAR"
"de2fbe60ad329d1820c88ccd573c0fbeafe025b0dc1ea848fdb1ce88f39aa200927acbf9525c2bd73eb51666282c794ad0ad8b1e2d285eae66aa9d8a51760ecb", # noqa: E501 "BAZ"
"6d242967e4c0285b237a3c6dafab0400719b4289ec97efb8afafc16351fb45b217e2a4443c860386870e552715f380eb8a8e6c93f75d067f4fdc109dca413c7e", # noqa: E501 "."
"6f80090eabe674fad334bd97352b7baea71ba8b3046fd1466e1b2e0c1ee7322780165de984b6688f5254064f5068e3e4f25e9ca502b6faf91cafdea474536dc4", # noqa: E501 "?"
"152e4b14b79f13114cd45ccec724a93e8f88e7c16185fa6e9da45f4eb5e3b0f66197a6030541733fbfb80e0cd0593d6b9be230975ad10a0314c3fc26cc2a45cc", # noqa: E501 "ěščřžýáíé"
"355e9791bd30d0e7e19f8738bd04faa679ce172915fcdfdb2264d39f2174436b04d870d25ffac28e23662bc79fb971c7c37e8f1c56fcf23132d42f914e22231b", # noqa: E501 "АБВГДЕЖЛПРСТОУ"
)
incorrect BLAKE2 sum values
blake2_incorrect_values = (
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3", # noqa: E501 shorter
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3ee", # noqa: E501 longer
"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3Z", # noqa: E501 invalid character
"", # noqa: E501 empty (obviously)
)
correct MD5 sum values
md5sum_correct_values = (
"d41d8cd98f00b204e9800998ecf8427e", # ""
"7215ee9c7d9dc229d2921a40e899ec5f", # " "
"5e732a1878be2342dbfeff5fe3ca5aa3", # "<Tab>"
"acbd18db4cc2f85cedef654fccc4a4d8", # "foo"
"37b51d194a7513e45b56f6524f2d51f2", # "bar"
"73feffa4b7f6bb68e44cf984c85f6e88", # "baz"
"e807f1fcf82d132f9bb018ca6738a19f", # "1234567890"
"901890a8e9c8cf6d5a1a542b229febff", # "FOO"
"3d75eec709b70a350e143492192a1736", # "BAR"
"f5aedf92178e1396cd4181962c8a9979", # "BAZ"
"5058f1af8388633f609cadb75a75dc9d", # "."
"d1457b72c3fb323a2671125aef3eab5d", # "?"
"b7feb6f62750ba2ea364c72d8b58a53e", # "ěščřžýáíé"
"b3307c094d02020507dea2960a293d90", # "АБВГДЕЖЛПРСТОУ"
)
incorrect MD5 sum values
md5sum_incorrect_values = (
"d41d8cd98f00b204e9800998ecf8427", # shorter
"d41d8cd98f00b204e9800998ecf8427ef", # longer
"d41d8cd98f00b204e9800998ecf8427Z", # "invalid character"
"", # noqa: E501 empty (obviously)
)
correct UUID values
uuid_correct_values = (
"90e1013c-a2f6-433b-af13-f7373dafa5ed",
"74fbc0e8-2948-401f-bc6f-830ae9f73e22",
"8089b58b-1803-40e1-9998-616c3ee91db7",
"b584365b-9a62-4879-aec1-893d0fb5ba3b",
"b87c7f88-87c4-4f7b-98b4-9f7fdc5ce8b1",
"060e525a-209f-48ca-8b34-ef70f7d4d7ee",
"dcaf8faf-cfd5-40d7-898e-25c5c904314a",
"f695231a-f48f-4f06-a771-ba357bd672ec",
"0293be3a-7a45-4e2d-9fa8-a64f43988257",
"79588e77-3db9-4599-88c3-a8be8657012b",
"c2068ad5-86cb-4871-b3ae-d31e038a8ce4",
"07328b51-c9c8-4a7c-b575-01594078d217",
"79a3f026-461c-4b5c-a31e-05656b4e45e6",
"c9540851-e036-4534-a82c-020f19ea2eb5",
"ac5c1ff4-53b4-4475-8645-01e0bca6ef56",
"732413c4-710f-41b0-b19b-5a82e231b333",
"dd371a0c-a640-49b3-8c6f-9e3dca257350",
"990331cb-a29e-4475-9549-79f0c9b681c3",
"aeb69680-e0a2-4793-ae53-fec76478efd3",
"6b77193c-abee-4dd0-8f1f-654f667a4e9f",
)
incorrect UUID values
uuid_incorrect_values = (
"90e1013c-a2f6-433b-af13-f7373dafa5e", # shorter
"90e1013c-a2f6-433b-af13-f7373dafa5edf", # longer
"90e1013c-a2f6-433b-af13-f7373dafa5eZ", # invalid character
"90e1013ca-2f6-433b-af13-f7373dafa5e", # wrong structure
"90e1013c-a2f-6433b-af13-f7373dafa5e", # wrong structure
"90e1013c-a2f6-433-baf13-f7373dafa5e", # wrong structure
"90e1013c-a2f6-43-3baf1-3f7373dafa5e", # wrong structure
"", # empty
)
valid timestamps
valid_timestamps = (
"2022-08-11T10:09:21Z", # UNIX time: 1660205361
"2004-08-20T15:53:38Z", # UNIX time: 1093010018
"2031-01-06T04:30:45Z", # UNIX time: 1925436645
"2011-08-02T13:28:26Z", # UNIX time: 1312284506
"1988-03-17T21:36:02Z", # UNIX time: 574634162
"2000-04-27T13:06:50Z", # UNIX time: 956833610
"2042-11-19T15:57:19Z", # UNIX time: 2300021839
"2013-01-09T14:42:55Z", # UNIX time: 1357738975
"2049-06-30T16:45:37Z", # UNIX time: 2508680737
"2099-01-26T15:21:12Z", # UNIX time: 4073120472
"1986-03-25T02:45:21Z", # UNIX time: 512099121
"2071-04-23T07:35:16Z", # UNIX time: 3196996516
"1973-07-23T14:10:16Z", # UNIX time: 112281016
"2018-10-17T16:08:10Z", # UNIX time: 1539785290
"2049-12-04T01:00:07Z", # UNIX time: 2522188807
"2044-02-21T03:39:34Z", # UNIX time: 2339635174
"2047-06-04T02:52:34Z", # UNIX time: 2443225954
"2104-12-18T08:43:41Z", # UNIX time: 4259029421
"2029-06-27T18:32:34Z", # UNIX time: 1877272354
"2083-06-25T19:56:38Z", # UNIX time: 3581175398
"2080-11-12T18:59:35Z", # UNIX time: 3498659975
"2046-10-02T01:00:31Z", # UNIX time: 2422051231
"2045-11-03T03:28:21Z", # UNIX time: 2393288901
"2035-07-29T01:20:52Z", # UNIX time: 2069277652
"1984-02-09T14:13:16Z", # UNIX time: 445180396
"2061-08-07T05:42:26Z", # UNIX time: 2890615346
"2056-01-24T00:54:51Z", # UNIX time: 2715897291
"1994-08-24T04:39:19Z", # UNIX time: 777695959
"2063-07-18T08:44:44Z", # UNIX time: 2951970284
"2026-03-31T09:43:43Z", # UNIX time: 1774943023
)
invalid timestamps
invalid_timestamps = (
"", # empty
"2022-08-11", # just date
"10:09:21", # just time
"2022-08-11 10:09:21Z", # no TZ separator
"2022-08-11T10:09:21", # no Z at the end
"2022-08-11 10:09:21", # no TZ separator, no Z at the end
"99999-03-31T09:43:43Z", # wrong year
"2026-999-31T09:43:43Z", # wrong month
"2026-99-391T09:43:43Z", # wrong day
"2026-03-31T99:43:43Z", # wrong hour
"2026-03-31T09:99:43Z", # wrong minute
"2026-03-31T09:43:99Z", # wrong second
)
valid timestamps with millisecond part
valid_timestamps_ms = (
"1984-12-30T14:25:20.000000", # UNIX time: 473261120
"1996-12-16T22:31:16.000000", # UNIX time: 850771876
"1978-01-06T07:40:52.000000", # UNIX time: 252916852
"2100-11-10T08:33:25.000000", # UNIX time: 4129515205
"2078-04-07T09:06:33.000000", # UNIX time: 3416544393
"2068-06-20T18:16:09.000000", # UNIX time: 3107438169
"2033-02-20T22:52:28.000000", # UNIX time: 1992549148
"2042-10-05T21:08:33.000000", # UNIX time: 2296152513
"2066-08-12T15:38:23.000000", # UNIX time: 3048849503
"2053-04-28T06:20:58.000000", # UNIX time: 2629430458
"2098-03-30T10:53:09.000000", # UNIX time: 4047011589
"2038-08-14T07:19:02.000000", # UNIX time: 2165375942
"1976-11-12T08:45:42.000000", # UNIX time: 216632742
"2089-02-22T21:32:02.000000", # UNIX time: 3759942722
"2065-10-22T19:40:59.000000", # UNIX time: 3023462459
"2091-11-24T10:00:05.000000", # UNIX time: 3846733205
"2062-08-08T15:40:04.000000", # UNIX time: 2922273604
"2102-02-14T17:50:30.000000", # UNIX time: 4169379030
"2069-11-07T18:03:41.000000", # UNIX time: 3151069421
"1999-09-29T14:24:30.000000", # UNIX time: 938607870
"2043-10-03T02:57:39.000000", # UNIX time: 2327450259
"2042-08-03T00:26:33.000000", # UNIX time: 2290634793
"1995-04-15T06:48:08.000000", # UNIX time: 797921288
"2096-03-13T04:10:53.000000", # UNIX time: 3982446653
"2058-02-24T02:02:49.000000", # UNIX time: 2781738169
"2091-08-13T23:53:56.000000", # UNIX time: 3837884036
"2042-01-07T23:58:07.000000", # UNIX time: 2272748287
"2007-03-12T09:31:21.000000", # UNIX time: 1173688281
"2003-05-08T18:07:30.000000", # UNIX time: 1052410050
"2059-07-25T11:00:54.000000", # UNIX time: 2826352854
)
valid timestamps with millisecond part + offset part
valid_timestamps_ms_offset = (
"1984-12-30T14:25:20.000000+00:00", # UNIX time: 473261120
"1996-12-16T22:31:16.000000+00:00", # UNIX time: 850771876
"1978-01-06T07:40:52.000000+00:00", # UNIX time: 252916852
"2100-11-10T08:33:25.000000+00:00", # UNIX time: 4129515205
"2078-04-07T09:06:33.000000+00:00", # UNIX time: 3416544393
"2068-06-20T18:16:09.000000+00:00", # UNIX time: 3107438169
"2033-02-20T22:52:28.000000+00:00", # UNIX time: 1992549148
"2042-10-05T21:08:33.000000+00:00", # UNIX time: 2296152513
"2066-08-12T15:38:23.000000+00:00", # UNIX time: 3048849503
"2053-04-28T06:20:58.000000+00:00", # UNIX time: 2629430458
"2098-03-30T10:53:09.000000+00:00", # UNIX time: 4047011589
"2038-08-14T07:19:02.000000+00:00", # UNIX time: 2165375942
"1976-11-12T08:45:42.000000+00:00", # UNIX time: 216632742
"2089-02-22T21:32:02.000000+00:00", # UNIX time: 3759942722
"2065-10-22T19:40:59.000000+00:00", # UNIX time: 3023462459
"2091-11-24T10:00:05.000000+00:00", # UNIX time: 3846733205
"2062-08-08T15:40:04.000000+00:00", # UNIX time: 2922273604
"2102-02-14T17:50:30.000000+00:00", # UNIX time: 4169379030
"2069-11-07T18:03:41.000000+00:00", # UNIX time: 3151069421
"1999-09-29T14:24:30.000000+00:00", # UNIX time: 938607870
"2043-10-03T02:57:39.000000+00:00", # UNIX time: 2327450259
"2042-08-03T00:26:33.000000+00:00", # UNIX time: 2290634793
"1995-04-15T06:48:08.000000+00:00", # UNIX time: 797921288
"2096-03-13T04:10:53.000000+00:00", # UNIX time: 3982446653
"2058-02-24T02:02:49.000000+00:00", # UNIX time: 2781738169
"2091-08-13T23:53:56.000000+00:00", # UNIX time: 3837884036
"2042-01-07T23:58:07.000000+00:00", # UNIX time: 2272748287
"2007-03-12T09:31:21.000000+00:00", # UNIX time: 1173688281
"2003-05-08T18:07:30.000000+00:00", # UNIX time: 1052410050
"2059-07-25T11:00:54.000000+00:00", # UNIX time: 2826352854
)
valid timestamps
valid_timestamps_no_z = (
"2022-08-11T10:09:21", # UNIX time: 1660205361
"2004-08-20T15:53:38", # UNIX time: 1093010018
"2031-01-06T04:30:45", # UNIX time: 1925436645
"2011-08-02T13:28:26", # UNIX time: 1312284506
"1988-03-17T21:36:02", # UNIX time: 574634162
"2000-04-27T13:06:50", # UNIX time: 956833610
"2042-11-19T15:57:19", # UNIX time: 2300021839
"2013-01-09T14:42:55", # UNIX time: 1357738975
"2049-06-30T16:45:37", # UNIX time: 2508680737
"2099-01-26T15:21:12", # UNIX time: 4073120472
"1986-03-25T02:45:21", # UNIX time: 512099121
"2071-04-23T07:35:16", # UNIX time: 3196996516
"1973-07-23T14:10:16", # UNIX time: 112281016
"2018-10-17T16:08:10", # UNIX time: 1539785290
"2049-12-04T01:00:07", # UNIX time: 2522188807
"2044-02-21T03:39:34", # UNIX time: 2339635174
"2047-06-04T02:52:34", # UNIX time: 2443225954
"2104-12-18T08:43:41", # UNIX time: 4259029421
"2029-06-27T18:32:34", # UNIX time: 1877272354
"2083-06-25T19:56:38", # UNIX time: 3581175398
"2080-11-12T18:59:35", # UNIX time: 3498659975
"2046-10-02T01:00:31", # UNIX time: 2422051231
"2045-11-03T03:28:21", # UNIX time: 2393288901
"2035-07-29T01:20:52", # UNIX time: 2069277652
"1984-02-09T14:13:16", # UNIX time: 445180396
"2061-08-07T05:42:26", # UNIX time: 2890615346
"2056-01-24T00:54:51", # UNIX time: 2715897291
"1994-08-24T04:39:19", # UNIX time: 777695959
"2063-07-18T08:44:44", # UNIX time: 2951970284
"2026-03-31T09:43:43", # UNIX time: 1774943023
)
invalid timestamps
invalid_timestamps_no_z = (
"", # empty
"2022-08-11", # just date
"10:09:21", # just time
"2022-08-11 10:09:21Z", # no TZ separator
"99999-03-31T09:43:43Z", # wrong year
"2026-999-31T09:43:43Z", # wrong month
"2026-99-391T09:43:43Z", # wrong day
"2026-03-31T99:43:43Z", # wrong hour
"2026-03-31T09:99:43Z", # wrong minute
"2026-03-31T09:43:99Z", # wrong second
)
invalid timestamps with millisecond part
invalid_timestamps_ms = (
"", # empty
"2022-08-11", # just date
"10:09:21", # just time
"10:09:21.000000", # just time + milliseconds
"1984-12-30 14:25:20.000000", # no TZ separator
"1984-12-30T14:25:20", # no milliseconds
"-12-30T14:25:20", # no year
"1984-12-30 14:25:20", # no TZ separator, no milliseconds
"99999-12-30T14:25:20.000000", # wrong year
"1984-99-30T14:25:20.000000", # wrong month
"1984-12-99T14:25:20.000000", # wrong day
"1984-12-30T99:25:20.000000", # wrong hour
"1984-12-30T14:99:20.000000", # wrong minute
"1984-12-30T14:25:99.000000", # wrong second
)
valid URLs to AWS
valid_aws_urls = (
"https://zzzzzzzzzzzzzzzzzzzzzzzz.s3.amazonaws.com/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
"?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential="
"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&X-Amz-Date=19700101T000000Z"
"&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature="
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"https://foo.s3.amazonaws.com/upload-service-1-abcdefghijklmnop-000144/"
"Z0ThU1Jyxc-000004?X-Amz-Algorithm=AWS4-HMAC-SHA256&"
"X-Amz-Credential=BAQ2GEXO117FVBVXWDMK%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&",
"http://minio:9000/insights-upload-perma/hpe.hpe2.foo.bar.com/"
"Z0ThU1Jyxc-000004?X-Amz-Algorithm=AWS4-HMAC-SHA256&"
"X-Amz-Credential=BAQ2GEXO117FVBVXWDMK%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&"
"X-Amz-Date=20200520T140918Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&"
"X-Amz-Signature=1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
"https://s3.us-east-1.amazonaws.com/insights-ingress-prod/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
"?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential="
"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ&X-Amz-Date=20201201T210535Z&"
"X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature="
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
)
invalid URLs to AWS
invalid_aws_urls = (
"https://foo.s3.NOT-AMAZON.com/upload-service-1-abcdefghijklmnop-000144/"
"Z0ThU1Jyxc-000004?X-Amz-Algorithm=AWS4-HMAC-SHA256&"
"X-Amz-Credential=BAQ2GEXO117FVBVXWDMK%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&",
"https://foo.s3.amazonaws.com/upload-service-1-abcdefghijklmnop-000144/",
"https://foo.s3.NOT-AMAZON.com/upload-service-1-abcdefghijklmnop-000144/"
"X-Amz-Credential=BAQ2GEXO117FVBVXWDMK%2F20200520%2Fus-east-1%2Fs3%2Faws4_request&",
"https://foo.s3.NOT-AMAZON.com/upload-service-1-abcdefghijklmnop-000144/"
"Z0ThU1Jyxc-000004?X-Amz-Algorithm=AWS4-HMAC-SHA256&",
)
not a proper BASE64 values
not_base64_values = (
" ",
"A",
"ěščřžýáíé",
)
proper BASE64 values that don’t contain JSONs
base64_values_not_json = (
"Zm9v", # "foo"
"YmFy", # "bar"
"YmF6", # "baz"
"Rk9P", # "FOO"
"QkFS", # "BAR"
"QkFa", # "BAZ"
"Lg==", # "."
"Pw==", # "?"
"xJvFocSNxZnFvsO9w6HDrcOp", # "ěščřžýáíé"
"0JDQkdCS0JPQlNCV0JbQm9Cf0KDQodCi0J7Qow==", # "АБВГДЕЖЛПРСТОУ"
)
proper BASE64 values that contain JSONs
base64_values_json = (
"IA==", # " "
"CQ==", # "<Tab>"
"MTIzNDU2Nzg5MA==", # "1234567890"
"W10K", # []
"e30K", # {}
"WzEsIDIsIDNdCg==", # [1, 2, 3]
"eyJmb28iOjEsImJhcjoyfQo=", # {"foo":1,"bar:2}
)
proper JSON values
json_values = (
"{}",
'{"a":"b"}',
)
not a proper JSON values
not_json_values = (
" ",
"A",
"ěščřžýáíé",
None,
)
proper key values
key_values = (
"A_B",
"AB_CD",
"ABC_DEF")
improper key values
not_key_values = (
"",
"a_b",
"ab_cd",
"abc_def",
"AB_",
"_BC",
"_")
proper FQDN values
proper_fqdn_values = (
"a.b",
"abc.b",
"abc.def",
"a_b.d_f",
"a_b.x")
improper FQDN values
improper_fqdn_values = (
"",
"a_b",
"ab_cd",
"abc_def",
"AB_",
"_BC",
"_",
"__",
".",
"..",
"a.",
"aa.",
".b",
".bb")
proper ID values
proper_id_values = (
"aa_a|B_B",
"a1_b|C_Z",
"a_000|A_000",
"a_b_c_d|A_B_C_D",
"foo_bar_baz|FOO_BAR_BAZ")
improper ID values
improper_id_values = (
"",
"X",
"x|Y",
"0|Y",
"x|Y_x",
"x|y_X",
" | ")
proper versions
version_correct_values = (
"4.3.2",
"40.3.2",
"4.30.2",
"4.3.20",
"1.2.0",
"1.2.0-ci-1234",
"1.2.0-whatever")
improper versions
version_incorrect_values = (
"4",
"4.3",
"1.2.-ci-1234",
"1.2-whatever")
improper paths to Ceph
path_to_ceph_incorrect_values = (
"archive/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compresse/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/f/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5-1234-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-123-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-456-89ab-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89a-61ff59fb8298/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb829/202102/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/20210/08/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/0/000359.tar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/000359.ar.gz",
"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/00035.tar.g",
)
Check if proper integer values are validated.
@pytest.mark.parametrize("value", positive_int_values+negative_int_values_and_zero)
def test_intTypeValidator_correct_values(value):
no exception is expected
intTypeValidator(value)
Check if proper integer values are validated.
@pytest.mark.parametrize("value", positive_int_values+negative_int_values_and_zero)
def test_intTypeValidator_incorrect_values(value):
no exception is expected
intTypeValidator(value)
Check if inproper positive integer values are validated.
@pytest.mark.parametrize("value", not_integer_type)
def test_posIntValidator_correct_values(value):
exception is expected
with pytest.raises(Invalid):
intTypeValidator(value)
Check if improper positive integer values are not validated.
@pytest.mark.parametrize("value", not_positive_int_values)
def test_posIntValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
posIntValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_integer_type)
def test_posIntValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
posIntValidator(value)
Check if proper positive integer or zero values are validated.
@pytest.mark.parametrize("value", positive_int_values_and_zero)
def test_posIntOrZeroValidator_correct_values(value):
no exception is expected
posIntOrZeroValidator(value)
Check if improper positive integer values are not validated.
@pytest.mark.parametrize("value", negative_int_values)
def test_posIntOrZeroValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
posIntOrZeroValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_integer_type)
def test_posIntOrZeroValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
posIntOrZeroValidator(value)
Check if proper negative integer values are validated.
@pytest.mark.parametrize("value", negative_int_values)
def test_negIntValidator_correct_values(value):
no exception is expected
negIntValidator(value)
Check if improper negative integer values are not validated.
@pytest.mark.parametrize("value", not_negative_int_values)
def test_negIntValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
negIntValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_integer_type)
def test_negIntValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
negIntValidator(value)
Check if proper negative integer values or zero are validated.
@pytest.mark.parametrize("value", negative_int_values_and_zero)
def test_negIntOrZeroValidator_correct_values(value):
no exception is expected
negIntOrZeroValidator(value)
Check if improper negative integer values are not validated.
@pytest.mark.parametrize("value", positive_int_values)
def test_negIntOrZeroValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
negIntOrZeroValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_integer_type)
def test_negIntOrZeroValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
negIntOrZeroValidator(value)
Check if proper float values are validated.
@pytest.mark.parametrize("value", positive_float_values+negative_float_values_and_zero)
def test_floatTypeValidator_correct_values(value):
no exception is expected
floatTypeValidator(value)
Check if improper float values are validated.
@pytest.mark.parametrize("value", not_float_type)
def test_floatTypeValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
floatTypeValidator(value)
Check if proper positive float values are validated.
@pytest.mark.parametrize("value", positive_float_values)
def test_posFloatValidator_correct_values(value):
no exception is expected
posFloatValidator(value)
Check if improper positive float values are not validated.
@pytest.mark.parametrize("value", not_positive_float_values)
def test_posFloatValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_float_type)
def test_PosFloatValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatValidator(value)
Check if NaN is not validated.
def test_PosFloatValidator_nan():
exception is expected
with pytest.raises(Invalid):
posFloatValidator(math.nan)
Check if proper positive float values are validated.
@pytest.mark.parametrize("value", positive_float_values_and_zero)
def test_posFloatOrZeroValidator_correct_values(value):
no exception is expected
posFloatOrZeroValidator(value)
Check if improper positive float values are not validated.
@pytest.mark.parametrize("value", negative_float_values)
def test_PosFloatOrZeroValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatOrZeroValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_float_type)
def test_PosFloatOrZeroValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatOrZeroValidator(value)
Check if NaN is not validated.
def test_PosFloatOrZeroValidator_nan():
exception is expected
with pytest.raises(Invalid):
posFloatOrZeroValidator(math.nan)
Check if proper negative float values are validated.
@pytest.mark.parametrize("value", negative_float_values)
def test_negFloatValidator_correct_values(value):
no exception is expected
negFloatValidator(value)
Check if improper negative float values are not validated.
@pytest.mark.parametrize("value", not_negative_float_values)
def test_negFloatValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_float_type)
def test_negFloatValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatValidator(value)
Check if NaN is not validated.
def test_NegFloatValidator_nan():
exception is expected
with pytest.raises(Invalid):
negFloatValidator(math.nan)
Check if proper negative float values are validated.
@pytest.mark.parametrize("value", negative_float_values_and_zero)
def test_negFloatOrZeroValidator_correct_values(value):
no exception is expected
negFloatOrZeroValidator(value)
Check if improper negative float values are not validated.
@pytest.mark.parametrize("value", positive_float_values)
def test_negFloatOrZeroValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatOrZeroValidator(value)
Check if improper types are not validated.
@pytest.mark.parametrize("value", not_float_type)
def test_negFloatOrZeroValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatOrZeroValidator(value)
Check if NaN is not validated.
def test_NegFloatOrZeroValidator_nan():
exception is expected
with pytest.raises(Invalid):
negFloatOrZeroValidator(math.nan)
Check if NaN value is validated properly.
def test_isNaNValidator():
exception is not expected
isNaNValidator(math.nan)
Check if NaN value is validated properly.
@pytest.mark.parametrize("value", positive_float_values+negative_float_values_and_zero)
def test_isNaNValidator_wrong_values(value):
exception is expected
with pytest.raises(Invalid):
isNaNValidator(value)
Check if NaN value is validated properly.
@pytest.mark.parametrize("value", not_float_type)
def test_isNaNValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
isNaNValidator(value)
Check if NaN value is validated properly.
def test_isNotNaNValidator():
exception is expected
with pytest.raises(Invalid):
isNotNaNValidator(math.nan)
Check if NaN value is validated properly.
@pytest.mark.parametrize("value", positive_float_values+negative_float_values_and_zero)
def test_isNotNaNValidator_wrong_values(value):
exception is not expected
isNotNaNValidator(value)
Check if NaN value is validated properly.
@pytest.mark.parametrize("value", not_float_type)
def test_isNotNaNValidator_wrong_types(value):
exception is expected
with pytest.raises(Invalid):
isNotNaNValidator(value)
Check if proper string values are validated.
@pytest.mark.parametrize("value", string_values)
def test_stringTypeValidator_correct_values(value):
no exception is expected
stringTypeValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_stringTypeValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
stringTypeValidator(value)
Check if proper empty string value is validated.
def test_emptyStringValidator_correct_value():
no exception is expected
emptyStringValidator("")
Check if improper empty string values are validated.
@pytest.mark.parametrize("value", non_empty_string_values)
def test_emptyStringValidator_correct_values(value):
exception is expected
with pytest.raises(Invalid):
emptyStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_emptyStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
emptyStringValidator(value)
Check if proper non empty string values are validated.
@pytest.mark.parametrize("value", non_empty_string_values)
def test_notEmptyStringValidator_correct_values(value):
no exception is expected
notEmptyStringValidator(value)
Check if improper non empty string values are validated.
def test_notEmptyStringValidator_incorrect_value():
exception is expected
with pytest.raises(Invalid):
notEmptyStringValidator("")
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_notEmptyStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
notEmptyStringValidator(value)
Check the parsing and validating integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string + negative_int_values_in_string)
def test_intInStringValidator_correct_values(value):
no exception is expected
intInStringValidator(value)
Check the parsing and validating integers stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_intInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(ValueError):
intInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_intInStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
intInStringValidator(value)
Check the parsing and validating positive integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string)
def test_posIntInStringValidator_correct_values(value):
no exception is expected
posIntInStringValidator(value)
Check the parsing and validating positive integers stored in string.
@pytest.mark.parametrize("value", negative_int_values_and_zero_in_string)
def test_posIntInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posIntInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posIntInStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posIntInStringValidator(value)
Check the parsing and validating positive integers or a zero stored in string.
@pytest.mark.parametrize("value", positive_int_values_and_zero_in_string)
def test_posIntOrZeroInStringValidator_correct_values(value):
no exception is expected
posIntOrZeroInStringValidator(value)
Check the parsing and validating positive integers or a zero stored in string.
@pytest.mark.parametrize("value", negative_int_values_in_string)
def test_posIntOrZeroInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posIntInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posIntInOrZeroStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posIntOrZeroInStringValidator(value)
Check the parsing and validating negative integers stored in string.
@pytest.mark.parametrize("value", negative_int_values_in_string)
def test_negIntInStringValidator_correct_values(value):
no exception is expected
negIntInStringValidator(value)
Check the parsing and validating negative integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_and_zero_in_string)
def test_negIntInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negIntInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negIntInStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negIntInStringValidator(value)
Check the parsing and validating negative integers or a zero stored in string.
@pytest.mark.parametrize("value", negative_int_values_and_zero_in_string)
def test_negIntOrZeroInStringValidator_correct_values(value):
no exception is expected
negIntOrZeroInStringValidator(value)
Check the parsing and validating negative integers or a zero stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string)
def test_negIntOrZeroInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negIntInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negIntInOrZeroStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negIntOrZeroInStringValidator(value)
Check the parsing and validating positive floats stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_posFloatInStringValidator_correct_values(value):
no exception is expected
posFloatInStringValidator(value)
Check the parsing and validating positive floats stored in string.
@pytest.mark.parametrize("value", negative_float_values_and_zero_in_string)
def test_posFloatInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posFloatInStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatInStringValidator(value)
Check the parsing and validating positive floats or a zero stored in string.
@pytest.mark.parametrize("value", positive_float_values_and_zero_in_string)
def test_posFloatOrZeroInStringValidator_correct_values(value):
no exception is expected
posFloatOrZeroInStringValidator(value)
Check the parsing and validating positive floats or a zero stored in string.
@pytest.mark.parametrize("value", negative_float_values_in_string)
def test_posFloatOrZeroInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posFloatInOrZeroStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatOrZeroInStringValidator(value)
Check the parsing and validating negative floats stored in string.
@pytest.mark.parametrize("value", negative_float_values_in_string)
def test_negFloatInStringValidator_correct_values(value):
no exception is expected
negFloatInStringValidator(value)
Check the parsing and validating negative floats stored in string.
@pytest.mark.parametrize("value", positive_float_values_and_zero_in_string)
def test_negFloatInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negFloatInStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatInStringValidator(value)
Check the parsing and validating negative floats or a zero stored in string.
@pytest.mark.parametrize("value", negative_float_values_and_zero_in_string)
def test_negFloatOrZeroInStringValidator_correct_values(value):
no exception is expected
negFloatOrZeroInStringValidator(value)
Check the parsing and validating negative floats or a zero stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_negFloatOrZeroInStringValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatInStringValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negFloatInOrZeroStringValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatOrZeroInStringValidator(value)
Check the parsing and validating integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string + negative_int_values_in_string)
def test_intInBytesValidator_correct_values(value):
no exception is expected
intInBytesValidator(value.encode("utf-8"))
Check the parsing and validating integers stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_intInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(ValueError):
intInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_intInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
intInBytesValidator(value)
Check the parsing and validating positive integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string)
def test_posIntInBytesValidator_correct_values(value):
no exception is expected
posIntInBytesValidator(value.encode("utf-8"))
Check the parsing and validating positive integers stored in string.
@pytest.mark.parametrize("value", negative_int_values_and_zero_in_string)
def test_posIntInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posIntInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posIntInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posIntInBytesValidator(value)
Check the parsing and validating positive integers or a zero stored in string.
@pytest.mark.parametrize("value", positive_int_values_and_zero_in_string)
def test_posIntOrZeroInBytesValidator_correct_values(value):
no exception is expected
posIntOrZeroInBytesValidator(value.encode("utf-8"))
Check the parsing and validating positive integers or a zero stored in string.
@pytest.mark.parametrize("value", negative_int_values_in_string)
def test_posIntOrZeroInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posIntInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posIntInOrZeroBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posIntOrZeroInBytesValidator(value)
Check the parsing and validating negative integers stored in string.
@pytest.mark.parametrize("value", negative_int_values_in_string)
def test_negIntInBytesValidator_correct_values(value):
no exception is expected
negIntInBytesValidator(value.encode("utf-8"))
Check the parsing and validating negative integers stored in string.
@pytest.mark.parametrize("value", positive_int_values_and_zero_in_string)
def test_negIntInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negIntInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negIntInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negIntInBytesValidator(value)
Check the parsing and validating negative integers or a zero stored in string.
@pytest.mark.parametrize("value", negative_int_values_and_zero_in_string)
def test_negIntOrZeroInBytesValidator_correct_values(value):
no exception is expected
negIntOrZeroInBytesValidator(value.encode("utf-8"))
Check the parsing and validating negative integers or a zero stored in string.
@pytest.mark.parametrize("value", positive_int_values_in_string)
def test_negIntOrZeroInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negIntInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negIntInOrZeroBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negIntOrZeroInBytesValidator(value)
Check the parsing and validating positive floats stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_posFloatInBytesValidator_correct_values(value):
no exception is expected
posFloatInBytesValidator(value.encode("utf-8"))
Check the parsing and validating positive floats stored in string.
@pytest.mark.parametrize("value", negative_float_values_and_zero_in_string)
def test_posFloatInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posFloatInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatInBytesValidator(value)
Check the parsing and validating positive floats or a zero stored in string.
@pytest.mark.parametrize("value", positive_float_values_and_zero_in_string)
def test_posFloatOrZeroInBytesValidator_correct_values(value):
no exception is expected
posFloatOrZeroInBytesValidator(value.encode("utf-8"))
Check the parsing and validating positive floats or a zero stored in string.
@pytest.mark.parametrize("value", negative_float_values_in_string)
def test_posFloatOrZeroInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
posFloatInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_posFloatInOrZeroBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
posFloatOrZeroInBytesValidator(value)
Check the parsing and validating negative floats stored in string.
@pytest.mark.parametrize("value", negative_float_values_in_string)
def test_negFloatInBytesValidator_correct_values(value):
no exception is expected
negFloatInBytesValidator(value.encode("utf-8"))
Check the parsing and validating negative floats stored in string.
@pytest.mark.parametrize("value", positive_float_values_and_zero_in_string)
def test_negFloatInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negFloatInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatInBytesValidator(value)
Check the parsing and validating negative floats or a zero stored in string.
@pytest.mark.parametrize("value", negative_float_values_and_zero_in_string)
def test_negFloatOrZeroInBytesValidator_correct_values(value):
no exception is expected
negFloatOrZeroInBytesValidator(value.encode("utf-8"))
Check the parsing and validating negative floats or a zero stored in string.
@pytest.mark.parametrize("value", positive_float_values_in_string)
def test_negFloatOrZeroInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
negFloatInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_negFloatInOrZeroInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
negFloatOrZeroInBytesValidator(value)
Check the parsing and validating strings with 32 hexa characters.
@pytest.mark.parametrize("value", hexa32_strings)
def test_hexaString32Validator_correct_values(value):
no exception is expected
hexaString32Validator(value)
Check the parsing and validating strings with 32 hexa characters.
@pytest.mark.parametrize("value", not_hexa32_strings)
def test_hexaString32Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
hexaString32Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_hexaString32Validator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
hexaString32Validator(value)
Check the parsing and validating SHA1 sums.
@pytest.mark.parametrize("value", sha1sum_correct_values)
def test_sha1Validator_correct_values(value):
exception is not expected
sha1Validator(value)
Check the parsing and validating SHA1 sums.
@pytest.mark.parametrize("value", sha1sum_incorrect_values)
def test_sha1Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha1Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha1ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha1Validator(value)
Check the parsing and validating SHA224 sums.
@pytest.mark.parametrize("value", sha224sum_correct_values)
def test_sha224Validator_correct_values(value):
exception is not expected
sha224Validator(value)
Check the parsing and validating SHA224 sums.
@pytest.mark.parametrize("value", sha224sum_incorrect_values)
def test_sha224Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha224Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha224ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha224Validator(value)
Check the parsing and validating SHA256 sums.
@pytest.mark.parametrize("value", sha256sum_correct_values)
def test_sha256Validator_correct_values(value):
exception is not expected
sha256Validator(value)
Check the parsing and validating SHA256 sums.
@pytest.mark.parametrize("value", sha256sum_incorrect_values)
def test_sha256Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha256Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha256ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha256Validator(value)
Check the parsing and validating SHA384 sums.
@pytest.mark.parametrize("value", sha384sum_correct_values)
def test_sha384Validator_correct_values(value):
exception is not expected
sha384Validator(value)
Check the parsing and validating SHA384 sums.
@pytest.mark.parametrize("value", sha384sum_incorrect_values)
def test_sha384Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha384Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha384ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha384Validator(value)
Check the parsing and validating SHA512 sums.
@pytest.mark.parametrize("value", sha512sum_correct_values)
def test_sha512Validator_correct_values(value):
exception is not expected
sha512Validator(value)
Check the parsing and validating SHA512 sums.
@pytest.mark.parametrize("value", sha512sum_incorrect_values)
def test_sha512Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha512Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha512ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha512Validator(value)
Check the parsing and validating SHA-3 224 sums.
@pytest.mark.parametrize("value", sha3_224sum_correct_values)
def test_sha3_224Validator_correct_values(value):
exception is not expected
sha3_224Validator(value)
Check the parsing and validating SHA-3 224 sums.
@pytest.mark.parametrize("value", sha3_224sum_incorrect_values)
def test_sha3_224Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha3_224Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha3_224ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha3_224Validator(value)
Check the parsing and validating SHA-3 256 sums.
@pytest.mark.parametrize("value", sha3_256sum_correct_values)
def test_sha3_256Validator_correct_values(value):
exception is not expected
sha3_256Validator(value)
Check the parsing and validating SHA-3 256 sums.
@pytest.mark.parametrize("value", sha3_256sum_incorrect_values)
def test_sha3_256Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha3_256Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha3_256ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha3_256Validator(value)
Check the parsing and validating SHA-3 384 sums.
@pytest.mark.parametrize("value", sha3_384sum_correct_values)
def test_sha3_384Validator_correct_values(value):
exception is not expected
sha3_384Validator(value)
Check the parsing and validating SHA-3 384 sums.
@pytest.mark.parametrize("value", sha3_384sum_incorrect_values)
def test_sha3_384Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha3_384Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha3_384ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha3_384Validator(value)
Check the parsing and validating SHA-3 512 sums.
@pytest.mark.parametrize("value", sha3_512sum_correct_values)
def test_sha3_512Validator_correct_values(value):
exception is not expected
sha3_512Validator(value)
Check the parsing and validating SHA-3 512 sums.
@pytest.mark.parametrize("value", sha3_512sum_incorrect_values)
def test_sha3_512Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
sha3_512Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_sha3_512ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
sha3_512Validator(value)
Check the parsing and validating shake128 sums.
@pytest.mark.parametrize("value", shake128_correct_values)
def test_shake128Validator_correct_values(value):
exception is not expected
shake128Validator(value)
Check the parsing and validating shake128 sums.
@pytest.mark.parametrize("value", shake128_incorrect_values)
def test_shake128Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
shake128Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_shake128ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
shake128Validator(value)
Check the parsing and validating shake256 sums.
@pytest.mark.parametrize("value", shake256_correct_values)
def test_shake256Validator_correct_values(value):
exception is not expected
shake256Validator(value)
Check the parsing and validating shake256 sums.
@pytest.mark.parametrize("value", shake256_incorrect_values)
def test_shake256Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
shake256Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_shake256ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
shake256Validator(value)
Check the parsing and validating BLAKE2 sums.
@pytest.mark.parametrize("value", blake2_correct_values)
def test_BLAKE2Validator_correct_values(value):
exception is not expected
BLAKE2Validator(value)
Check the parsing and validating BLAKE2 sums.
@pytest.mark.parametrize("value", blake2_incorrect_values)
def test_BLAKE2Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
BLAKE2Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_BLAKE2ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
BLAKE2Validator(value)
Check the parsing and validating MD5 sums.
@pytest.mark.parametrize("value", md5sum_correct_values)
def test_md5Validator_correct_values(value):
exception is not expected
md5Validator(value)
Check the parsing and validating MD5 sums.
@pytest.mark.parametrize("value", md5sum_incorrect_values)
def test_md5Validator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
md5Validator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_md5ValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
md5Validator(value)
Check the parsing and validating UUID values.
@pytest.mark.parametrize("value", uuid_correct_values)
def test_UUIDValidator_correct_values(value):
exception is not expected
uuidValidator(value)
Check the parsing and validating UUID values.
@pytest.mark.parametrize("value", uuid_incorrect_values)
def test_UUIDValidator_incorrect_values(value):
exception is expected
with pytest.raises(ValueError):
uuidValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_UUIDValidatorValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
uuidValidator(value)
Check the parsing and validating UUID values.
@pytest.mark.parametrize("value", uuid_correct_values)
def test_UUIDInBytesValidator_correct_values(value):
exception is not expected
uuidInBytesValidator(value.encode("utf-8"))
Check the parsing and validating UUID values.
@pytest.mark.parametrize("value", uuid_incorrect_values)
def test_UUIDInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(ValueError):
uuidInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_UUIDInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
uuidInBytesValidator(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", valid_timestamps)
def test_timestampValidator_correct_values(value):
exception is not expected
timestampValidator(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", invalid_timestamps)
def test_timestampValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
timestampValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_timestampValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
timestampValidator(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", valid_timestamps_ms_offset)
def test_timestampValidatorOffset_correct_values(value):
exception is not expected
timestampValidatorOffset(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", invalid_timestamps)
def test_timestampValidatorOffset_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorOffset(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_timestampValidatorOffset_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorOffset(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", valid_timestamps_no_z)
def test_timestampValidatorNoZ_correct_values(value):
exception is not expected
timestampValidatorNoZ(value)
Check the parsing and validating timestamps.
@pytest.mark.parametrize("value", invalid_timestamps_no_z)
def test_timestampValidatorNoZ_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorNoZ(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_timestampValidatorNoZ_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorNoZ(value)
Check the parsing and validating timestamps with milliseconds part.
@pytest.mark.parametrize("value", valid_timestamps_ms)
def test_timestampMsValidator_correct_values(value):
exception is not expected
timestampValidatorMs(value)
Check the parsing and validating timestamps with milliseconds part.
@pytest.mark.parametrize("value", invalid_timestamps_ms)
def test_timestampMsValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorMs(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_timestampMsValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
timestampValidatorMs(value)
Check the parsing and validating URLs to AWS with milliseconds part.
@pytest.mark.parametrize("value", valid_aws_urls)
def test_urlToAWSValidator_correct_values(value):
exception is not expected
urlToAWSValidator(value)
Check the parsing and validating URLs to AWS with milliseconds part.
@pytest.mark.parametrize("value", invalid_aws_urls)
def test_urlToAWSValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
urlToAWSValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_urlToAWSValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
urlToAWSValidator(value)
Check if improper values (not base64-based) are validated.
@pytest.mark.parametrize("value", not_base64_values)
def test_b64IdentityValidator_incorrect_base64values(value):
schema = None # not needed right now
exception is expected
with pytest.raises(ValueError):
b64IdentityValidator(schema, value)
Check if improper values (not JSON) are validated.
@pytest.mark.parametrize("value", base64_values_not_json)
def test_b64IdentityValidator_not_JSON(value):
schema = None # not needed right now
exception is expected
with pytest.raises(ValueError):
b64IdentityValidator(schema, value)
Check if proper values are validated.
@pytest.mark.parametrize("value", base64_values_json)
def test_b64IdentityValidator_proper_JSON(value):
schema = None # not needed right now
exception is expected
with pytest.raises((ValueError, TypeError)):
b64IdentityValidator(schema, value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_b64IdentityValidator_incorrect_types(value):
schema = None # not needed right now
exception is expected
with pytest.raises(Invalid):
b64IdentityValidator(schema, value)
Check if proper values are validated.
@pytest.mark.parametrize("value", key_values)
def test_keyValueValidator_proper_values(value):
exception is not expected
keyValueValidator(value)
Check if impproper values are validated.
@pytest.mark.parametrize("value", not_key_values)
def test_keyValueValidator_improper_values(value):
exception is expected
with pytest.raises(Invalid):
keyValueValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_keyValueValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
keyValueValidator(value)
Check if proper values are validated.
@pytest.mark.parametrize("value", proper_fqdn_values)
def test_ruleFQDNValueValidator_proper_values(value):
exception is not expected
ruleFQDNValidator(value)
Check if impproper values are validated.
@pytest.mark.parametrize("value", improper_fqdn_values)
def test_ruleFQDNValueValidator_improper_values(value):
exception is expected
with pytest.raises(Invalid):
ruleFQDNValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_ruleFQDNValueValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
ruleFQDNValidator(value)
Check if proper values are validated.
@pytest.mark.parametrize("value", proper_fqdn_values)
def test_ruleFQDNInBytesValueValidator_proper_values(value):
exception is not expected
ruleFQDNInBytesValidator(value.encode("utf-8"))
Check if impproper values are validated.
@pytest.mark.parametrize("value", improper_fqdn_values)
def test_ruleFQDNInBytesValueValidator_improper_values(value):
exception is expected
with pytest.raises(Invalid):
ruleFQDNInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_ruleFQDNInBytesValueValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
ruleFQDNInBytesValidator(value)
Check if proper values are validated.
@pytest.mark.parametrize("value", proper_id_values)
def test_ruleIDValueValidator_proper_values(value):
exception is not expected
ruleIDValidator(value)
Check if impproper values are validated.
@pytest.mark.parametrize("value", improper_id_values)
def test_ruleIDValueValidator_improper_values(value):
exception is expected
with pytest.raises(Invalid):
ruleIDValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_ruleIDValueValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
ruleIDValidator(value)
Check if proper values are validated.
@pytest.mark.parametrize("value", proper_id_values)
def test_ruleIDInBytesValueValidator_proper_values(value):
exception is not expected
ruleIDInBytesValidator(value.encode("utf-8"))
Check if impproper values are validated.
@pytest.mark.parametrize("value", improper_id_values)
def test_ruleIDInBytesValueValidator_improper_values(value):
exception is expected
with pytest.raises(Invalid):
ruleIDInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_ruleIDInBytesValueValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
ruleIDInBytesValidator(value)
Check if proper values JSON are validated.
@pytest.mark.parametrize("value", json_values)
def test_jsonInStrValidatorValidator_correct_json_values(value):
exception is expected
jsonInStrValidator(value)
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_jsonInStrValidatorValidator_not_string_type(value):
exception is expected
with pytest.raises(Invalid):
jsonInStrValidator(value)
Check if improper values JSON are validated.
@pytest.mark.parametrize("value", not_json_values)
def test_jsonInStrValidatorValidator_incorrect_json_values(value):
exception is expected
with pytest.raises((Invalid, ValueError)):
jsonInStrValidator(value)
Check the parsing and validating Version values.
@pytest.mark.parametrize("value", version_correct_values)
def test_versionInBytesValidator_correct_values(value):
exception is not expected
versionInBytesValidator(value.encode("utf-8"))
Check the parsing and validating Version values.
@pytest.mark.parametrize("value", version_incorrect_values)
def test_versionInBytesValidator_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
versionInBytesValidator(value.encode("utf-8"))
Check if improper values (with wrong type) are validated.
@pytest.mark.parametrize("value", not_string_type)
def test_versionInBytesValidator_incorrect_types(value):
exception is expected
with pytest.raises(Invalid):
versionInBytesValidator(value)
Check the validator for path to Ceph.
def test_path_to_ceph_correct_values():
path = b"archives/compressed/ff/ff32df5f-1234-4567-89ab-61ff59fb8298/202102/08/000359.tar.gz"
exception is not expected
pathToCephInBytesValidator(path)
Check the validator for path to Ceph.
@pytest.mark.parametrize("value", path_to_ceph_incorrect_values)
def test_path_to_ceph_incorrect_values(value):
exception is expected
with pytest.raises(Invalid):
pathToCephInBytesValidator(value.encode("utf-8"))
Check the validator domainValidator.
def test_domain_validator():
exception is not expected
domainValidator("test.gov")
Check the validator domainValidator.
def test_domain_validator_wrong_input():
exception is expected
with pytest.raises(Invalid):
domainValidator("test")
exception is expected
with pytest.raises(Invalid):
domainValidator(".")
Check the validator domainInBytesValidator.
def test_domain_in_bytes_validator():
exception is not expected
domainInBytesValidator(b"test.gov")
Check the validator domainInBytesValidator.
def test_domain_in_bytes_validator_wrong_input():
exception is expected
with pytest.raises(Invalid):
domainInBytesValidator(b"test")
exception is expected
with pytest.raises(Invalid):
domainInBytesValidator(b".")