From a11dfd3bfae7b4b812ebf8b4c6621fedc14a2ff4 Mon Sep 17 00:00:00 2001 From: Emil Thies Date: Sun, 1 Sep 2024 13:27:26 +0200 Subject: [PATCH] libphonenumber 8.13.43 made change to German mobile 017x number range length check. (#74) Previously all have been identified as variable 10 or 11. Now 0176 is identified as 11 but not 10 - while all the others are still variable identified, but then only 10 would be correct. Addapted tests. Preparing new Release 1.2.6 --- pom.xml | 6 +- .../IsPossibleNumberWithReasonTest.groovy | 371 +++++++++--------- .../PhoneNumberUtil/IsValidNumberTest.groovy | 336 ++++++++-------- 3 files changed, 370 insertions(+), 343 deletions(-) diff --git a/pom.xml b/pom.xml index eee0951..a8fcdb2 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ normalizer Phonenumber Normalizer Library to work with phonenumbers, especially to fix googles PhoneLib ignoring German Landline specifics. - 1.2.6-SNAPSHOT + 1.2.6 jar https://github.com/telekom/phonenumber-normalizer @@ -86,7 +86,7 @@ com.googlecode.libphonenumber libphonenumber - 8.13.40 + 8.13.44 @@ -150,7 +150,7 @@ com.googlecode.libphonenumber geocoder - 2.234 + 2.238 test diff --git a/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsPossibleNumberWithReasonTest.groovy b/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsPossibleNumberWithReasonTest.groovy index fb78f75..1948c2f 100644 --- a/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsPossibleNumberWithReasonTest.groovy +++ b/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsPossibleNumberWithReasonTest.groovy @@ -1691,13 +1691,26 @@ class IsPossibleNumberWithReasonTest extends Specification { PhoneNumberUtil.ValidationResult[] expectedResults = [PhoneNumberUtil.ValidationResult.TOO_SHORT, PhoneNumberUtil.ValidationResult.IS_POSSIBLE, - PhoneNumberUtil.ValidationResult.IS_POSSIBLE, + PhoneNumberUtil.ValidationResult.TOO_LONG, PhoneNumberUtil.ValidationResult.TOO_LONG, PhoneNumberUtil.ValidationResult.TOO_SHORT, PhoneNumberUtil.ValidationResult.IS_POSSIBLE, - PhoneNumberUtil.ValidationResult.IS_POSSIBLE, + PhoneNumberUtil.ValidationResult.TOO_LONG, PhoneNumberUtil.ValidationResult.TOO_LONG] + // https://www.bundesnetzagentur.de/DE/Fachthemen/Telekommunikation/Nummerierung/MobileDienste/LaengeRufnummernbloecke/start.html + // x: 6 length 8 otherwise 7 + if (numberUntilInfix.startsWith("0176")) { + expectedResults = [PhoneNumberUtil.ValidationResult.TOO_SHORT, + PhoneNumberUtil.ValidationResult.TOO_SHORT, + PhoneNumberUtil.ValidationResult.IS_POSSIBLE, + PhoneNumberUtil.ValidationResult.TOO_LONG, + PhoneNumberUtil.ValidationResult.TOO_SHORT, + PhoneNumberUtil.ValidationResult.TOO_SHORT, + PhoneNumberUtil.ValidationResult.IS_POSSIBLE, + PhoneNumberUtil.ValidationResult.TOO_LONG] + } + when: PhoneNumberUtil.ValidationResult[] results = [] for (number in numbersToTest) { @@ -1719,232 +1732,232 @@ class IsPossibleNumberWithReasonTest extends Specification { // // 0170 // - "01700" | "DE" | [true, false, false, true, true, false, false, true] - "017010" | "DE" | [true, false, false, true, true, false, false, true] - "017011" | "DE" | [true, false, false, true, true, false, false, true] - "017012" | "DE" | [true, false, false, true, true, false, false, true] + "01700" | "DE" | [true, false, true, true, true, false, true, true] + "017010" | "DE" | [true, false, true, true, true, false, true, true] + "017011" | "DE" | [true, false, true, true, true, false, true, true] + "017012" | "DE" | [true, false, true, true, true, false, true, true] // 017013 is reserved for voicemail - see tests below - "017014" | "DE" | [true, false, false, true, true, false, false, true] - "017015" | "DE" | [true, false, false, true, true, false, false, true] - "017016" | "DE" | [true, false, false, true, true, false, false, true] - "017017" | "DE" | [true, false, false, true, true, false, false, true] - "017018" | "DE" | [true, false, false, true, true, false, false, true] - "017019" | "DE" | [true, false, false, true, true, false, false, true] - "01702" | "DE" | [true, false, false, true, true, false, false, true] - "01703" | "DE" | [true, false, false, true, true, false, false, true] - "01704" | "DE" | [true, false, false, true, true, false, false, true] - "01705" | "DE" | [true, false, false, true, true, false, false, true] - "01706" | "DE" | [true, false, false, true, true, false, false, true] - "01707" | "DE" | [true, false, false, true, true, false, false, true] - "01708" | "DE" | [true, false, false, true, true, false, false, true] - "01709" | "DE" | [true, false, false, true, true, false, false, true] + "017014" | "DE" | [true, false, true, true, true, false, true, true] + "017015" | "DE" | [true, false, true, true, true, false, true, true] + "017016" | "DE" | [true, false, true, true, true, false, true, true] + "017017" | "DE" | [true, false, true, true, true, false, true, true] + "017018" | "DE" | [true, false, true, true, true, false, true, true] + "017019" | "DE" | [true, false, true, true, true, false, true, true] + "01702" | "DE" | [true, false, true, true, true, false, true, true] + "01703" | "DE" | [true, false, true, true, true, false, true, true] + "01704" | "DE" | [true, false, true, true, true, false, true, true] + "01705" | "DE" | [true, false, true, true, true, false, true, true] + "01706" | "DE" | [true, false, true, true, true, false, true, true] + "01707" | "DE" | [true, false, true, true, true, false, true, true] + "01708" | "DE" | [true, false, true, true, true, false, true, true] + "01709" | "DE" | [true, false, true, true, true, false, true, true] // // 0171 // - "01710" | "DE" | [true, false, false, true, true, false, false, true] - "017110" | "DE" | [true, false, false, true, true, false, false, true] - "017111" | "DE" | [true, false, false, true, true, false, false, true] - "017112" | "DE" | [true, false, false, true, true, false, false, true] + "01710" | "DE" | [true, false, true, true, true, false, true, true] + "017110" | "DE" | [true, false, true, true, true, false, true, true] + "017111" | "DE" | [true, false, true, true, true, false, true, true] + "017112" | "DE" | [true, false, true, true, true, false, true, true] // 017113 is reserved for voicemail - see tests below - "017114" | "DE" | [true, false, false, true, true, false, false, true] - "017115" | "DE" | [true, false, false, true, true, false, false, true] - "017116" | "DE" | [true, false, false, true, true, false, false, true] - "017117" | "DE" | [true, false, false, true, true, false, false, true] - "017118" | "DE" | [true, false, false, true, true, false, false, true] - "017119" | "DE" | [true, false, false, true, true, false, false, true] - "01712" | "DE" | [true, false, false, true, true, false, false, true] - "01713" | "DE" | [true, false, false, true, true, false, false, true] - "01714" | "DE" | [true, false, false, true, true, false, false, true] - "01715" | "DE" | [true, false, false, true, true, false, false, true] - "01716" | "DE" | [true, false, false, true, true, false, false, true] - "01717" | "DE" | [true, false, false, true, true, false, false, true] - "01718" | "DE" | [true, false, false, true, true, false, false, true] - "01719" | "DE" | [true, false, false, true, true, false, false, true] + "017114" | "DE" | [true, false, true, true, true, false, true, true] + "017115" | "DE" | [true, false, true, true, true, false, true, true] + "017116" | "DE" | [true, false, true, true, true, false, true, true] + "017117" | "DE" | [true, false, true, true, true, false, true, true] + "017118" | "DE" | [true, false, true, true, true, false, true, true] + "017119" | "DE" | [true, false, true, true, true, false, true, true] + "01712" | "DE" | [true, false, true, true, true, false, true, true] + "01713" | "DE" | [true, false, true, true, true, false, true, true] + "01714" | "DE" | [true, false, true, true, true, false, true, true] + "01715" | "DE" | [true, false, true, true, true, false, true, true] + "01716" | "DE" | [true, false, true, true, true, false, true, true] + "01717" | "DE" | [true, false, true, true, true, false, true, true] + "01718" | "DE" | [true, false, true, true, true, false, true, true] + "01719" | "DE" | [true, false, true, true, true, false, true, true] // // 0172 // - "01720" | "DE" | [true, false, false, true, true, false, false, true] - "01721" | "DE" | [true, false, false, true, true, false, false, true] - "01722" | "DE" | [true, false, false, true, true, false, false, true] - "01723" | "DE" | [true, false, false, true, true, false, false, true] - "01724" | "DE" | [true, false, false, true, true, false, false, true] + "01720" | "DE" | [true, false, true, true, true, false, true, true] + "01721" | "DE" | [true, false, true, true, true, false, true, true] + "01722" | "DE" | [true, false, true, true, true, false, true, true] + "01723" | "DE" | [true, false, true, true, true, false, true, true] + "01724" | "DE" | [true, false, true, true, true, false, true, true] // 017250 is reserved for voicemail - see tests below - "017251" | "DE" | [true, false, false, true, true, false, false, true] - "017252" | "DE" | [true, false, false, true, true, false, false, true] - "017253" | "DE" | [true, false, false, true, true, false, false, true] - "017254" | "DE" | [true, false, false, true, true, false, false, true] + "017251" | "DE" | [true, false, true, true, true, false, true, true] + "017252" | "DE" | [true, false, true, true, true, false, true, true] + "017253" | "DE" | [true, false, true, true, true, false, true, true] + "017254" | "DE" | [true, false, true, true, true, false, true, true] // 017255 is reserved for voicemail - see tests below - "017256" | "DE" | [true, false, false, true, true, false, false, true] - "017257" | "DE" | [true, false, false, true, true, false, false, true] - "017258" | "DE" | [true, false, false, true, true, false, false, true] - "017259" | "DE" | [true, false, false, true, true, false, false, true] - "01726" | "DE" | [true, false, false, true, true, false, false, true] - "01727" | "DE" | [true, false, false, true, true, false, false, true] - "01728" | "DE" | [true, false, false, true, true, false, false, true] - "01729" | "DE" | [true, false, false, true, true, false, false, true] + "017256" | "DE" | [true, false, true, true, true, false, true, true] + "017257" | "DE" | [true, false, true, true, true, false, true, true] + "017258" | "DE" | [true, false, true, true, true, false, true, true] + "017259" | "DE" | [true, false, true, true, true, false, true, true] + "01726" | "DE" | [true, false, true, true, true, false, true, true] + "01727" | "DE" | [true, false, true, true, true, false, true, true] + "01728" | "DE" | [true, false, true, true, true, false, true, true] + "01729" | "DE" | [true, false, true, true, true, false, true, true] // // 0173 // - "01730" | "DE" | [true, false, false, true, true, false, false, true] - "01731" | "DE" | [true, false, false, true, true, false, false, true] - "01732" | "DE" | [true, false, false, true, true, false, false, true] - "01733" | "DE" | [true, false, false, true, true, false, false, true] - "01734" | "DE" | [true, false, false, true, true, false, false, true] + "01730" | "DE" | [true, false, true, true, true, false, true, true] + "01731" | "DE" | [true, false, true, true, true, false, true, true] + "01732" | "DE" | [true, false, true, true, true, false, true, true] + "01733" | "DE" | [true, false, true, true, true, false, true, true] + "01734" | "DE" | [true, false, true, true, true, false, true, true] // 017350 is reserved for voicemail - see tests below - "017351" | "DE" | [true, false, false, true, true, false, false, true] - "017352" | "DE" | [true, false, false, true, true, false, false, true] - "017353" | "DE" | [true, false, false, true, true, false, false, true] - "017354" | "DE" | [true, false, false, true, true, false, false, true] + "017351" | "DE" | [true, false, true, true, true, false, true, true] + "017352" | "DE" | [true, false, true, true, true, false, true, true] + "017353" | "DE" | [true, false, true, true, true, false, true, true] + "017354" | "DE" | [true, false, true, true, true, false, true, true] // 017355 is reserved for voicemail - see tests below - "017356" | "DE" | [true, false, false, true, true, false, false, true] - "017357" | "DE" | [true, false, false, true, true, false, false, true] - "017358" | "DE" | [true, false, false, true, true, false, false, true] - "017359" | "DE" | [true, false, false, true, true, false, false, true] - "01736" | "DE" | [true, false, false, true, true, false, false, true] - "01737" | "DE" | [true, false, false, true, true, false, false, true] - "01738" | "DE" | [true, false, false, true, true, false, false, true] - "01739" | "DE" | [true, false, false, true, true, false, false, true] + "017356" | "DE" | [true, false, true, true, true, false, true, true] + "017357" | "DE" | [true, false, true, true, true, false, true, true] + "017358" | "DE" | [true, false, true, true, true, false, true, true] + "017359" | "DE" | [true, false, true, true, true, false, true, true] + "01736" | "DE" | [true, false, true, true, true, false, true, true] + "01737" | "DE" | [true, false, true, true, true, false, true, true] + "01738" | "DE" | [true, false, true, true, true, false, true, true] + "01739" | "DE" | [true, false, true, true, true, false, true, true] // // 0174 // - "01740" | "DE" | [true, false, false, true, true, false, false, true] - "01741" | "DE" | [true, false, false, true, true, false, false, true] - "01742" | "DE" | [true, false, false, true, true, false, false, true] - "01743" | "DE" | [true, false, false, true, true, false, false, true] - "01744" | "DE" | [true, false, false, true, true, false, false, true] + "01740" | "DE" | [true, false, true, true, true, false, true, true] + "01741" | "DE" | [true, false, true, true, true, false, true, true] + "01742" | "DE" | [true, false, true, true, true, false, true, true] + "01743" | "DE" | [true, false, true, true, true, false, true, true] + "01744" | "DE" | [true, false, true, true, true, false, true, true] // 017450 is reserved for voicemail - see tests below - "017451" | "DE" | [true, false, false, true, true, false, false, true] - "017452" | "DE" | [true, false, false, true, true, false, false, true] - "017453" | "DE" | [true, false, false, true, true, false, false, true] - "017454" | "DE" | [true, false, false, true, true, false, false, true] + "017451" | "DE" | [true, false, true, true, true, false, true, true] + "017452" | "DE" | [true, false, true, true, true, false, true, true] + "017453" | "DE" | [true, false, true, true, true, false, true, true] + "017454" | "DE" | [true, false, true, true, true, false, true, true] // 017455 is reserved for voicemail - see tests below - "017456" | "DE" | [true, false, false, true, true, false, false, true] - "017457" | "DE" | [true, false, false, true, true, false, false, true] - "017458" | "DE" | [true, false, false, true, true, false, false, true] - "017459" | "DE" | [true, false, false, true, true, false, false, true] - "01746" | "DE" | [true, false, false, true, true, false, false, true] - "01747" | "DE" | [true, false, false, true, true, false, false, true] - "01748" | "DE" | [true, false, false, true, true, false, false, true] - "01749" | "DE" | [true, false, false, true, true, false, false, true] + "017456" | "DE" | [true, false, true, true, true, false, true, true] + "017457" | "DE" | [true, false, true, true, true, false, true, true] + "017458" | "DE" | [true, false, true, true, true, false, true, true] + "017459" | "DE" | [true, false, true, true, true, false, true, true] + "01746" | "DE" | [true, false, true, true, true, false, true, true] + "01747" | "DE" | [true, false, true, true, true, false, true, true] + "01748" | "DE" | [true, false, true, true, true, false, true, true] + "01749" | "DE" | [true, false, true, true, true, false, true, true] // // 0175 // - "01750" | "DE" | [true, false, false, true, true, false, false, true] - "017510" | "DE" | [true, false, false, true, true, false, false, true] - "017511" | "DE" | [true, false, false, true, true, false, false, true] - "017512" | "DE" | [true, false, false, true, true, false, false, true] + "01750" | "DE" | [true, false, true, true, true, false, true, true] + "017510" | "DE" | [true, false, true, true, true, false, true, true] + "017511" | "DE" | [true, false, true, true, true, false, true, true] + "017512" | "DE" | [true, false, true, true, true, false, true, true] // 017513 is reserved for voicemail - see tests below - "017514" | "DE" | [true, false, false, true, true, false, false, true] - "017515" | "DE" | [true, false, false, true, true, false, false, true] - "017516" | "DE" | [true, false, false, true, true, false, false, true] - "017517" | "DE" | [true, false, false, true, true, false, false, true] - "017518" | "DE" | [true, false, false, true, true, false, false, true] - "017519" | "DE" | [true, false, false, true, true, false, false, true] - "01752" | "DE" | [true, false, false, true, true, false, false, true] - "01753" | "DE" | [true, false, false, true, true, false, false, true] - "01754" | "DE" | [true, false, false, true, true, false, false, true] - "01755" | "DE" | [true, false, false, true, true, false, false, true] - "01756" | "DE" | [true, false, false, true, true, false, false, true] - "01757" | "DE" | [true, false, false, true, true, false, false, true] - "01758" | "DE" | [true, false, false, true, true, false, false, true] - "01759" | "DE" | [true, false, false, true, true, false, false, true] + "017514" | "DE" | [true, false, true, true, true, false, true, true] + "017515" | "DE" | [true, false, true, true, true, false, true, true] + "017516" | "DE" | [true, false, true, true, true, false, true, true] + "017517" | "DE" | [true, false, true, true, true, false, true, true] + "017518" | "DE" | [true, false, true, true, true, false, true, true] + "017519" | "DE" | [true, false, true, true, true, false, true, true] + "01752" | "DE" | [true, false, true, true, true, false, true, true] + "01753" | "DE" | [true, false, true, true, true, false, true, true] + "01754" | "DE" | [true, false, true, true, true, false, true, true] + "01755" | "DE" | [true, false, true, true, true, false, true, true] + "01756" | "DE" | [true, false, true, true, true, false, true, true] + "01757" | "DE" | [true, false, true, true, true, false, true, true] + "01758" | "DE" | [true, false, true, true, true, false, true, true] + "01759" | "DE" | [true, false, true, true, true, false, true, true] // // 0176 // - "01760" | "DE" | [true, false, false, true, true, false, false, true] - "01761" | "DE" | [true, false, false, true, true, false, false, true] - "01762" | "DE" | [true, false, false, true, true, false, false, true] - "017630" | "DE" | [true, false, false, true, true, false, false, true] - "017631" | "DE" | [true, false, false, true, true, false, false, true] - "017632" | "DE" | [true, false, false, true, true, false, false, true] + "01760" | "DE" | [true, true, false, true, true, true, false, true] + "01761" | "DE" | [true, true, false, true, true, true, false, true] + "01762" | "DE" | [true, true, false, true, true, true, false, true] + "017630" | "DE" | [true, true, false, true, true, true, false, true] + "017631" | "DE" | [true, true, false, true, true, true, false, true] + "017632" | "DE" | [true, true, false, true, true, true, false, true] // 017633 is reserved for voicemail - see tests below - "017634" | "DE" | [true, false, false, true, true, false, false, true] - "017635" | "DE" | [true, false, false, true, true, false, false, true] - "017636" | "DE" | [true, false, false, true, true, false, false, true] - "017637" | "DE" | [true, false, false, true, true, false, false, true] - "017638" | "DE" | [true, false, false, true, true, false, false, true] - "017639" | "DE" | [true, false, false, true, true, false, false, true] - "01764" | "DE" | [true, false, false, true, true, false, false, true] - "01765" | "DE" | [true, false, false, true, true, false, false, true] - "01766" | "DE" | [true, false, false, true, true, false, false, true] - "01767" | "DE" | [true, false, false, true, true, false, false, true] - "01768" | "DE" | [true, false, false, true, true, false, false, true] - "01769" | "DE" | [true, false, false, true, true, false, false, true] + "017634" | "DE" | [true, true, false, true, true, true, false, true] + "017635" | "DE" | [true, true, false, true, true, true, false, true] + "017636" | "DE" | [true, true, false, true, true, true, false, true] + "017637" | "DE" | [true, true, false, true, true, true, false, true] + "017638" | "DE" | [true, true, false, true, true, true, false, true] + "017639" | "DE" | [true, true, false, true, true, true, false, true] + "01764" | "DE" | [true, true, false, true, true, true, false, true] + "01765" | "DE" | [true, true, false, true, true, true, false, true] + "01766" | "DE" | [true, true, false, true, true, true, false, true] + "01767" | "DE" | [true, true, false, true, true, true, false, true] + "01768" | "DE" | [true, true, false, true, true, true, false, true] + "01769" | "DE" | [true, true, false, true, true, true, false, true] // // 0177 // - "01770" | "DE" | [true, false, false, true, true, false, false, true] - "01771" | "DE" | [true, false, false, true, true, false, false, true] - "01772" | "DE" | [true, false, false, true, true, false, false, true] - "01773" | "DE" | [true, false, false, true, true, false, false, true] - "01774" | "DE" | [true, false, false, true, true, false, false, true] - "01775" | "DE" | [true, false, false, true, true, false, false, true] - "01776" | "DE" | [true, false, false, true, true, false, false, true] - "01777" | "DE" | [true, false, false, true, true, false, false, true] - "01778" | "DE" | [true, false, false, true, true, false, false, true] - "017790" | "DE" | [true, false, false, true, true, false, false, true] - "017791" | "DE" | [true, false, false, true, true, false, false, true] - "017792" | "DE" | [true, false, false, true, true, false, false, true] - "017793" | "DE" | [true, false, false, true, true, false, false, true] - "017794" | "DE" | [true, false, false, true, true, false, false, true] - "017795" | "DE" | [true, false, false, true, true, false, false, true] - "017796" | "DE" | [true, false, false, true, true, false, false, true] - "017797" | "DE" | [true, false, false, true, true, false, false, true] - "017798" | "DE" | [true, false, false, true, true, false, false, true] + "01770" | "DE" | [true, false, true, true, true, false, true, true] + "01771" | "DE" | [true, false, true, true, true, false, true, true] + "01772" | "DE" | [true, false, true, true, true, false, true, true] + "01773" | "DE" | [true, false, true, true, true, false, true, true] + "01774" | "DE" | [true, false, true, true, true, false, true, true] + "01775" | "DE" | [true, false, true, true, true, false, true, true] + "01776" | "DE" | [true, false, true, true, true, false, true, true] + "01777" | "DE" | [true, false, true, true, true, false, true, true] + "01778" | "DE" | [true, false, true, true, true, false, true, true] + "017790" | "DE" | [true, false, true, true, true, false, true, true] + "017791" | "DE" | [true, false, true, true, true, false, true, true] + "017792" | "DE" | [true, false, true, true, true, false, true, true] + "017793" | "DE" | [true, false, true, true, true, false, true, true] + "017794" | "DE" | [true, false, true, true, true, false, true, true] + "017795" | "DE" | [true, false, true, true, true, false, true, true] + "017796" | "DE" | [true, false, true, true, true, false, true, true] + "017797" | "DE" | [true, false, true, true, true, false, true, true] + "017798" | "DE" | [true, false, true, true, true, false, true, true] // 017799 is reserved for voicemail - see tests below // // 0178 // - "01780" | "DE" | [true, false, false, true, true, false, false, true] - "01781" | "DE" | [true, false, false, true, true, false, false, true] - "01782" | "DE" | [true, false, false, true, true, false, false, true] - "01783" | "DE" | [true, false, false, true, true, false, false, true] - "01784" | "DE" | [true, false, false, true, true, false, false, true] - "01785" | "DE" | [true, false, false, true, true, false, false, true] - "01786" | "DE" | [true, false, false, true, true, false, false, true] - "01787" | "DE" | [true, false, false, true, true, false, false, true] - "01788" | "DE" | [true, false, false, true, true, false, false, true] - "017890" | "DE" | [true, false, false, true, true, false, false, true] - "017891" | "DE" | [true, false, false, true, true, false, false, true] - "017892" | "DE" | [true, false, false, true, true, false, false, true] - "017893" | "DE" | [true, false, false, true, true, false, false, true] - "017894" | "DE" | [true, false, false, true, true, false, false, true] - "017895" | "DE" | [true, false, false, true, true, false, false, true] - "017896" | "DE" | [true, false, false, true, true, false, false, true] - "017897" | "DE" | [true, false, false, true, true, false, false, true] - "017898" | "DE" | [true, false, false, true, true, false, false, true] + "01780" | "DE" | [true, false, true, true, true, false, true, true] + "01781" | "DE" | [true, false, true, true, true, false, true, true] + "01782" | "DE" | [true, false, true, true, true, false, true, true] + "01783" | "DE" | [true, false, true, true, true, false, true, true] + "01784" | "DE" | [true, false, true, true, true, false, true, true] + "01785" | "DE" | [true, false, true, true, true, false, true, true] + "01786" | "DE" | [true, false, true, true, true, false, true, true] + "01787" | "DE" | [true, false, true, true, true, false, true, true] + "01788" | "DE" | [true, false, true, true, true, false, true, true] + "017890" | "DE" | [true, false, true, true, true, false, true, true] + "017891" | "DE" | [true, false, true, true, true, false, true, true] + "017892" | "DE" | [true, false, true, true, true, false, true, true] + "017893" | "DE" | [true, false, true, true, true, false, true, true] + "017894" | "DE" | [true, false, true, true, true, false, true, true] + "017895" | "DE" | [true, false, true, true, true, false, true, true] + "017896" | "DE" | [true, false, true, true, true, false, true, true] + "017897" | "DE" | [true, false, true, true, true, false, true, true] + "017898" | "DE" | [true, false, true, true, true, false, true, true] // 017899 is reserved for voicemail - see tests below // // 0179 // - "01790" | "DE" | [true, false, false, true, true, false, false, true] - "01791" | "DE" | [true, false, false, true, true, false, false, true] - "01792" | "DE" | [true, false, false, true, true, false, false, true] - "017930" | "DE" | [true, false, false, true, true, false, false, true] - "017931" | "DE" | [true, false, false, true, true, false, false, true] - "017932" | "DE" | [true, false, false, true, true, false, false, true] + "01790" | "DE" | [true, false, true, true, true, false, true, true] + "01791" | "DE" | [true, false, true, true, true, false, true, true] + "01792" | "DE" | [true, false, true, true, true, false, true, true] + "017930" | "DE" | [true, false, true, true, true, false, true, true] + "017931" | "DE" | [true, false, true, true, true, false, true, true] + "017932" | "DE" | [true, false, true, true, true, false, true, true] // 017933 is reserved for voicemail - see tests below - "017934" | "DE" | [true, false, false, true, true, false, false, true] - "017935" | "DE" | [true, false, false, true, true, false, false, true] - "017936" | "DE" | [true, false, false, true, true, false, false, true] - "017937" | "DE" | [true, false, false, true, true, false, false, true] - "017938" | "DE" | [true, false, false, true, true, false, false, true] - "017939" | "DE" | [true, false, false, true, true, false, false, true] - "01794" | "DE" | [true, false, false, true, true, false, false, true] - "01795" | "DE" | [true, false, false, true, true, false, false, true] - "01796" | "DE" | [true, false, false, true, true, false, false, true] - "01797" | "DE" | [true, false, false, true, true, false, false, true] - "01798" | "DE" | [true, false, false, true, true, false, false, true] - "01799" | "DE" | [true, false, false, true, true, false, false, true] + "017934" | "DE" | [true, false, true, true, true, false, true, true] + "017935" | "DE" | [true, false, true, true, true, false, true, true] + "017936" | "DE" | [true, false, true, true, true, false, true, true] + "017937" | "DE" | [true, false, true, true, true, false, true, true] + "017938" | "DE" | [true, false, true, true, true, false, true, true] + "017939" | "DE" | [true, false, true, true, true, false, true, true] + "01794" | "DE" | [true, false, true, true, true, false, true, true] + "01795" | "DE" | [true, false, true, true, true, false, true, true] + "01796" | "DE" | [true, false, true, true, true, false, true, true] + "01797" | "DE" | [true, false, true, true, true, false, true, true] + "01798" | "DE" | [true, false, true, true, true, false, true, true] + "01799" | "DE" | [true, false, true, true, true, false, true, true] } def "check if original lib fixed isPossibleNumberWithReason for German Mobile 17 range with voicemail infix"(String numberUntilInfix, regionCode, boolean[] expectingFails) { diff --git a/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsValidNumberTest.groovy b/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsValidNumberTest.groovy index 8687095..06ef306 100644 --- a/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsValidNumberTest.groovy +++ b/src/test/groovy/de/telekom/phonenumbernormalizer/extern/libphonenumber/PhoneNumberUtil/IsValidNumberTest.groovy @@ -1640,8 +1640,20 @@ class IsValidNumberTest extends Specification { numberUntilInfix + "9999999"] } - Boolean[] expectedResults = [false, true, true, false, - false, true, true, false] + + // see https://www.bundesnetzagentur.de/DE/Fachthemen/Telekommunikation/Nummerierung/MobileDienste/LaengeRufnummernbloecke/start.html + // 176 is only 11 digit rest 10 + + Boolean[] expectedResults = [false, true, false, false, + false, true, false, false] + + // https://www.bundesnetzagentur.de/DE/Fachthemen/Telekommunikation/Nummerierung/MobileDienste/LaengeRufnummernbloecke/start.html + // x: 6 length 8 otherwise 7 + if (numberUntilInfix.startsWith("0176")) { + expectedResults = [false, false, true, false, + false, false, true, false] + } + when: Boolean[] results = [] @@ -1660,144 +1672,146 @@ class IsValidNumberTest extends Specification { // see https://www.bundesnetzagentur.de/DE/Fachthemen/Telekommunikation/Nummerierung/MobileDienste/start.html // especially https://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Nummerierung/Rufnummern/Mobile%20Dienste/Nummernplan-2018-03-02.pdf?__blob=publicationFile&v=1 // 017xyyyyyyy(y) x = block code, yyyyyyy(y) variable line lenx of 7 - 8 digits + // https://www.bundesnetzagentur.de/DE/Fachthemen/Telekommunikation/Nummerierung/MobileDienste/LaengeRufnummernbloecke/start.html + // x: 6 length 8 otherwise 7 // // 0170 // - "01700" | "DE" | [false, false, false, false, false, false, false, false] - "017010" | "DE" | [false, false, false, false, false, false, false, false] - "017011" | "DE" | [false, false, false, false, false, false, false, false] - "017012" | "DE" | [false, false, false, false, false, false, false, false] + "01700" | "DE" | [false, false, true, false, false, false, true, false] + "017010" | "DE" | [false, false, true, false, false, false, true, false] + "017011" | "DE" | [false, false, true, false, false, false, true, false] + "017012" | "DE" | [false, false, true, false, false, false, true, false] // 017013 is reserved for voicemail - see tests below - "017014" | "DE" | [false, false, false, false, false, false, false, false] - "017015" | "DE" | [false, false, false, false, false, false, false, false] - "017016" | "DE" | [false, false, false, false, false, false, false, false] - "017017" | "DE" | [false, false, false, false, false, false, false, false] - "017018" | "DE" | [false, false, false, false, false, false, false, false] - "017019" | "DE" | [false, false, false, false, false, false, false, false] - "01702" | "DE" | [false, false, false, false, false, false, false, false] - "01703" | "DE" | [false, false, false, false, false, false, false, false] - "01704" | "DE" | [false, false, false, false, false, false, false, false] - "01705" | "DE" | [false, false, false, false, false, false, false, false] - "01706" | "DE" | [false, false, false, false, false, false, false, false] - "01707" | "DE" | [false, false, false, false, false, false, false, false] - "01708" | "DE" | [false, false, false, false, false, false, false, false] - "01709" | "DE" | [false, false, false, false, false, false, false, false] + "017014" | "DE" | [false, false, true, false, false, false, true, false] + "017015" | "DE" | [false, false, true, false, false, false, true, false] + "017016" | "DE" | [false, false, true, false, false, false, true, false] + "017017" | "DE" | [false, false, true, false, false, false, true, false] + "017018" | "DE" | [false, false, true, false, false, false, true, false] + "017019" | "DE" | [false, false, true, false, false, false, true, false] + "01702" | "DE" | [false, false, true, false, false, false, true, false] + "01703" | "DE" | [false, false, true, false, false, false, true, false] + "01704" | "DE" | [false, false, true, false, false, false, true, false] + "01705" | "DE" | [false, false, true, false, false, false, true, false] + "01706" | "DE" | [false, false, true, false, false, false, true, false] + "01707" | "DE" | [false, false, true, false, false, false, true, false] + "01708" | "DE" | [false, false, true, false, false, false, true, false] + "01709" | "DE" | [false, false, true, false, false, false, true, false] // // 0171 // - "01710" | "DE" | [false, false, false, false, false, false, false, false] - "017110" | "DE" | [false, false, false, false, false, false, false, false] - "017111" | "DE" | [false, false, false, false, false, false, false, false] - "017112" | "DE" | [false, false, false, false, false, false, false, false] + "01710" | "DE" | [false, false, true, false, false, false, true, false] + "017110" | "DE" | [false, false, true, false, false, false, true, false] + "017111" | "DE" | [false, false, true, false, false, false, true, false] + "017112" | "DE" | [false, false, true, false, false, false, true, false] // 017113 is reserved for voicemail - see tests below - "017114" | "DE" | [false, false, false, false, false, false, false, false] - "017115" | "DE" | [false, false, false, false, false, false, false, false] - "017116" | "DE" | [false, false, false, false, false, false, false, false] - "017117" | "DE" | [false, false, false, false, false, false, false, false] - "017118" | "DE" | [false, false, false, false, false, false, false, false] - "017119" | "DE" | [false, false, false, false, false, false, false, false] - "01712" | "DE" | [false, false, false, false, false, false, false, false] - "01713" | "DE" | [false, false, false, false, false, false, false, false] - "01714" | "DE" | [false, false, false, false, false, false, false, false] - "01715" | "DE" | [false, false, false, false, false, false, false, false] - "01716" | "DE" | [false, false, false, false, false, false, false, false] - "01717" | "DE" | [false, false, false, false, false, false, false, false] - "01718" | "DE" | [false, false, false, false, false, false, false, false] - "01719" | "DE" | [false, false, false, false, false, false, false, false] + "017114" | "DE" | [false, false, true, false, false, false, true, false] + "017115" | "DE" | [false, false, true, false, false, false, true, false] + "017116" | "DE" | [false, false, true, false, false, false, true, false] + "017117" | "DE" | [false, false, true, false, false, false, true, false] + "017118" | "DE" | [false, false, true, false, false, false, true, false] + "017119" | "DE" | [false, false, true, false, false, false, true, false] + "01712" | "DE" | [false, false, true, false, false, false, true, false] + "01713" | "DE" | [false, false, true, false, false, false, true, false] + "01714" | "DE" | [false, false, true, false, false, false, true, false] + "01715" | "DE" | [false, false, true, false, false, false, true, false] + "01716" | "DE" | [false, false, true, false, false, false, true, false] + "01717" | "DE" | [false, false, true, false, false, false, true, false] + "01718" | "DE" | [false, false, true, false, false, false, true, false] + "01719" | "DE" | [false, false, true, false, false, false, true, false] // // 0172 // - "01720" | "DE" | [false, false, false, false, false, false, false, false] - "01721" | "DE" | [false, false, false, false, false, false, false, false] - "01722" | "DE" | [false, false, false, false, false, false, false, false] - "01723" | "DE" | [false, false, false, false, false, false, false, false] - "01724" | "DE" | [false, false, false, false, false, false, false, false] + "01720" | "DE" | [false, false, true, false, false, false, true, false] + "01721" | "DE" | [false, false, true, false, false, false, true, false] + "01722" | "DE" | [false, false, true, false, false, false, true, false] + "01723" | "DE" | [false, false, true, false, false, false, true, false] + "01724" | "DE" | [false, false, true, false, false, false, true, false] // 017250 is reserved for voicemail - see tests below - "017251" | "DE" | [false, false, false, false, false, false, false, false] - "017252" | "DE" | [false, false, false, false, false, false, false, false] - "017253" | "DE" | [false, false, false, false, false, false, false, false] - "017254" | "DE" | [false, false, false, false, false, false, false, false] + "017251" | "DE" | [false, false, true, false, false, false, true, false] + "017252" | "DE" | [false, false, true, false, false, false, true, false] + "017253" | "DE" | [false, false, true, false, false, false, true, false] + "017254" | "DE" | [false, false, true, false, false, false, true, false] // 017255 is reserved for voicemail - see tests below - "017256" | "DE" | [false, false, false, false, false, false, false, false] - "017257" | "DE" | [false, false, false, false, false, false, false, false] - "017258" | "DE" | [false, false, false, false, false, false, false, false] - "017259" | "DE" | [false, false, false, false, false, false, false, false] - "01726" | "DE" | [false, false, false, false, false, false, false, false] - "01727" | "DE" | [false, false, false, false, false, false, false, false] - "01728" | "DE" | [false, false, false, false, false, false, false, false] - "01729" | "DE" | [false, false, false, false, false, false, false, false] + "017256" | "DE" | [false, false, true, false, false, false, true, false] + "017257" | "DE" | [false, false, true, false, false, false, true, false] + "017258" | "DE" | [false, false, true, false, false, false, true, false] + "017259" | "DE" | [false, false, true, false, false, false, true, false] + "01726" | "DE" | [false, false, true, false, false, false, true, false] + "01727" | "DE" | [false, false, true, false, false, false, true, false] + "01728" | "DE" | [false, false, true, false, false, false, true, false] + "01729" | "DE" | [false, false, true, false, false, false, true, false] // // 0173 // - "01730" | "DE" | [false, false, false, false, false, false, false, false] - "01731" | "DE" | [false, false, false, false, false, false, false, false] - "01732" | "DE" | [false, false, false, false, false, false, false, false] - "01733" | "DE" | [false, false, false, false, false, false, false, false] - "01734" | "DE" | [false, false, false, false, false, false, false, false] + "01730" | "DE" | [false, false, true, false, false, false, true, false] + "01731" | "DE" | [false, false, true, false, false, false, true, false] + "01732" | "DE" | [false, false, true, false, false, false, true, false] + "01733" | "DE" | [false, false, true, false, false, false, true, false] + "01734" | "DE" | [false, false, true, false, false, false, true, false] // 017350 is reserved for voicemail - see tests below - "017351" | "DE" | [false, false, false, false, false, false, false, false] - "017352" | "DE" | [false, false, false, false, false, false, false, false] - "017353" | "DE" | [false, false, false, false, false, false, false, false] - "017354" | "DE" | [false, false, false, false, false, false, false, false] + "017351" | "DE" | [false, false, true, false, false, false, true, false] + "017352" | "DE" | [false, false, true, false, false, false, true, false] + "017353" | "DE" | [false, false, true, false, false, false, true, false] + "017354" | "DE" | [false, false, true, false, false, false, true, false] // 017355 is reserved for voicemail - see tests below - "017356" | "DE" | [false, false, false, false, false, false, false, false] - "017357" | "DE" | [false, false, false, false, false, false, false, false] - "017358" | "DE" | [false, false, false, false, false, false, false, false] - "017359" | "DE" | [false, false, false, false, false, false, false, false] - "01736" | "DE" | [false, false, false, false, false, false, false, false] - "01737" | "DE" | [false, false, false, false, false, false, false, false] - "01738" | "DE" | [false, false, false, false, false, false, false, false] - "01739" | "DE" | [false, false, false, false, false, false, false, false] + "017356" | "DE" | [false, false, true, false, false, false, true, false] + "017357" | "DE" | [false, false, true, false, false, false, true, false] + "017358" | "DE" | [false, false, true, false, false, false, true, false] + "017359" | "DE" | [false, false, true, false, false, false, true, false] + "01736" | "DE" | [false, false, true, false, false, false, true, false] + "01737" | "DE" | [false, false, true, false, false, false, true, false] + "01738" | "DE" | [false, false, true, false, false, false, true, false] + "01739" | "DE" | [false, false, true, false, false, false, true, false] // // 0174 // - "01740" | "DE" | [false, false, false, false, false, false, false, false] - "01741" | "DE" | [false, false, false, false, false, false, false, false] - "01742" | "DE" | [false, false, false, false, false, false, false, false] - "01743" | "DE" | [false, false, false, false, false, false, false, false] - "01744" | "DE" | [false, false, false, false, false, false, false, false] + "01740" | "DE" | [false, false, true, false, false, false, true, false] + "01741" | "DE" | [false, false, true, false, false, false, true, false] + "01742" | "DE" | [false, false, true, false, false, false, true, false] + "01743" | "DE" | [false, false, true, false, false, false, true, false] + "01744" | "DE" | [false, false, true, false, false, false, true, false] // 017450 is reserved for voicemail - see tests below - "017451" | "DE" | [false, false, false, false, false, false, false, false] - "017452" | "DE" | [false, false, false, false, false, false, false, false] - "017453" | "DE" | [false, false, false, false, false, false, false, false] - "017454" | "DE" | [false, false, false, false, false, false, false, false] + "017451" | "DE" | [false, false, true, false, false, false, true, false] + "017452" | "DE" | [false, false, true, false, false, false, true, false] + "017453" | "DE" | [false, false, true, false, false, false, true, false] + "017454" | "DE" | [false, false, true, false, false, false, true, false] // 017455 is reserved for voicemail - see tests below - "017456" | "DE" | [false, false, false, false, false, false, false, false] - "017457" | "DE" | [false, false, false, false, false, false, false, false] - "017458" | "DE" | [false, false, false, false, false, false, false, false] - "017459" | "DE" | [false, false, false, false, false, false, false, false] - "01746" | "DE" | [false, false, false, false, false, false, false, false] - "01747" | "DE" | [false, false, false, false, false, false, false, false] - "01748" | "DE" | [false, false, false, false, false, false, false, false] - "01749" | "DE" | [false, false, false, false, false, false, false, false] + "017456" | "DE" | [false, false, true, false, false, false, true, false] + "017457" | "DE" | [false, false, true, false, false, false, true, false] + "017458" | "DE" | [false, false, true, false, false, false, true, false] + "017459" | "DE" | [false, false, true, false, false, false, true, false] + "01746" | "DE" | [false, false, true, false, false, false, true, false] + "01747" | "DE" | [false, false, true, false, false, false, true, false] + "01748" | "DE" | [false, false, true, false, false, false, true, false] + "01749" | "DE" | [false, false, true, false, false, false, true, false] // // 0175 // - "01750" | "DE" | [false, false, false, false, false, false, false, false] - "017510" | "DE" | [false, false, false, false, false, false, false, false] - "017511" | "DE" | [false, false, false, false, false, false, false, false] - "017512" | "DE" | [false, false, false, false, false, false, false, false] + "01750" | "DE" | [false, false, true, false, false, false, true, false] + "017510" | "DE" | [false, false, true, false, false, false, true, false] + "017511" | "DE" | [false, false, true, false, false, false, true, false] + "017512" | "DE" | [false, false, true, false, false, false, true, false] // 017513 is reserved for voicemail - see tests below - "017514" | "DE" | [false, false, false, false, false, false, false, false] - "017515" | "DE" | [false, false, false, false, false, false, false, false] - "017516" | "DE" | [false, false, false, false, false, false, false, false] - "017517" | "DE" | [false, false, false, false, false, false, false, false] - "017518" | "DE" | [false, false, false, false, false, false, false, false] - "017519" | "DE" | [false, false, false, false, false, false, false, false] - "01752" | "DE" | [false, false, false, false, false, false, false, false] - "01753" | "DE" | [false, false, false, false, false, false, false, false] - "01754" | "DE" | [false, false, false, false, false, false, false, false] - "01755" | "DE" | [false, false, false, false, false, false, false, false] - "01756" | "DE" | [false, false, false, false, false, false, false, false] - "01757" | "DE" | [false, false, false, false, false, false, false, false] - "01758" | "DE" | [false, false, false, false, false, false, false, false] - "01759" | "DE" | [false, false, false, false, false, false, false, false] + "017514" | "DE" | [false, false, true, false, false, false, true, false] + "017515" | "DE" | [false, false, true, false, false, false, true, false] + "017516" | "DE" | [false, false, true, false, false, false, true, false] + "017517" | "DE" | [false, false, true, false, false, false, true, false] + "017518" | "DE" | [false, false, true, false, false, false, true, false] + "017519" | "DE" | [false, false, true, false, false, false, true, false] + "01752" | "DE" | [false, false, true, false, false, false, true, false] + "01753" | "DE" | [false, false, true, false, false, false, true, false] + "01754" | "DE" | [false, false, true, false, false, false, true, false] + "01755" | "DE" | [false, false, true, false, false, false, true, false] + "01756" | "DE" | [false, false, true, false, false, false, true, false] + "01757" | "DE" | [false, false, true, false, false, false, true, false] + "01758" | "DE" | [false, false, true, false, false, false, true, false] + "01759" | "DE" | [false, false, true, false, false, false, true, false] // // 0176 @@ -1825,71 +1839,71 @@ class IsValidNumberTest extends Specification { // // 0177 // - "01770" | "DE" | [false, false, false, false, false, false, false, false] - "01771" | "DE" | [false, false, false, false, false, false, false, false] - "01772" | "DE" | [false, false, false, false, false, false, false, false] - "01773" | "DE" | [false, false, false, false, false, false, false, false] - "01774" | "DE" | [false, false, false, false, false, false, false, false] - "01775" | "DE" | [false, false, false, false, false, false, false, false] - "01776" | "DE" | [false, false, false, false, false, false, false, false] - "01777" | "DE" | [false, false, false, false, false, false, false, false] - "01778" | "DE" | [false, false, false, false, false, false, false, false] - "017790" | "DE" | [false, false, false, false, false, false, false, false] - "017791" | "DE" | [false, false, false, false, false, false, false, false] - "017792" | "DE" | [false, false, false, false, false, false, false, false] - "017793" | "DE" | [false, false, false, false, false, false, false, false] - "017794" | "DE" | [false, false, false, false, false, false, false, false] - "017795" | "DE" | [false, false, false, false, false, false, false, false] - "017796" | "DE" | [false, false, false, false, false, false, false, false] - "017797" | "DE" | [false, false, false, false, false, false, false, false] - "017798" | "DE" | [false, false, false, false, false, false, false, false] + "01770" | "DE" | [false, false, true, false, false, false, true, false] + "01771" | "DE" | [false, false, true, false, false, false, true, false] + "01772" | "DE" | [false, false, true, false, false, false, true, false] + "01773" | "DE" | [false, false, true, false, false, false, true, false] + "01774" | "DE" | [false, false, true, false, false, false, true, false] + "01775" | "DE" | [false, false, true, false, false, false, true, false] + "01776" | "DE" | [false, false, true, false, false, false, true, false] + "01777" | "DE" | [false, false, true, false, false, false, true, false] + "01778" | "DE" | [false, false, true, false, false, false, true, false] + "017790" | "DE" | [false, false, true, false, false, false, true, false] + "017791" | "DE" | [false, false, true, false, false, false, true, false] + "017792" | "DE" | [false, false, true, false, false, false, true, false] + "017793" | "DE" | [false, false, true, false, false, false, true, false] + "017794" | "DE" | [false, false, true, false, false, false, true, false] + "017795" | "DE" | [false, false, true, false, false, false, true, false] + "017796" | "DE" | [false, false, true, false, false, false, true, false] + "017797" | "DE" | [false, false, true, false, false, false, true, false] + "017798" | "DE" | [false, false, true, false, false, false, true, false] // 017799 is reserved for voicemail - see tests below // // 0178 // - "01780" | "DE" | [false, false, false, false, false, false, false, false] - "01781" | "DE" | [false, false, false, false, false, false, false, false] - "01782" | "DE" | [false, false, false, false, false, false, false, false] - "01783" | "DE" | [false, false, false, false, false, false, false, false] - "01784" | "DE" | [false, false, false, false, false, false, false, false] - "01785" | "DE" | [false, false, false, false, false, false, false, false] - "01786" | "DE" | [false, false, false, false, false, false, false, false] - "01787" | "DE" | [false, false, false, false, false, false, false, false] - "01788" | "DE" | [false, false, false, false, false, false, false, false] - "017890" | "DE" | [false, false, false, false, false, false, false, false] - "017891" | "DE" | [false, false, false, false, false, false, false, false] - "017892" | "DE" | [false, false, false, false, false, false, false, false] - "017893" | "DE" | [false, false, false, false, false, false, false, false] - "017894" | "DE" | [false, false, false, false, false, false, false, false] - "017895" | "DE" | [false, false, false, false, false, false, false, false] - "017896" | "DE" | [false, false, false, false, false, false, false, false] - "017897" | "DE" | [false, false, false, false, false, false, false, false] - "017898" | "DE" | [false, false, false, false, false, false, false, false] + "01780" | "DE" | [false, false, true, false, false, false, true, false] + "01781" | "DE" | [false, false, true, false, false, false, true, false] + "01782" | "DE" | [false, false, true, false, false, false, true, false] + "01783" | "DE" | [false, false, true, false, false, false, true, false] + "01784" | "DE" | [false, false, true, false, false, false, true, false] + "01785" | "DE" | [false, false, true, false, false, false, true, false] + "01786" | "DE" | [false, false, true, false, false, false, true, false] + "01787" | "DE" | [false, false, true, false, false, false, true, false] + "01788" | "DE" | [false, false, true, false, false, false, true, false] + "017890" | "DE" | [false, false, true, false, false, false, true, false] + "017891" | "DE" | [false, false, true, false, false, false, true, false] + "017892" | "DE" | [false, false, true, false, false, false, true, false] + "017893" | "DE" | [false, false, true, false, false, false, true, false] + "017894" | "DE" | [false, false, true, false, false, false, true, false] + "017895" | "DE" | [false, false, true, false, false, false, true, false] + "017896" | "DE" | [false, false, true, false, false, false, true, false] + "017897" | "DE" | [false, false, true, false, false, false, true, false] + "017898" | "DE" | [false, false, true, false, false, false, true, false] // 017899 is reserved for voicemail - see tests below // // 0179 // - "01790" | "DE" | [false, false, false, false, false, false, false, false] - "01791" | "DE" | [false, false, false, false, false, false, false, false] - "01792" | "DE" | [false, false, false, false, false, false, false, false] - "017930" | "DE" | [false, false, false, false, false, false, false, false] - "017931" | "DE" | [false, false, false, false, false, false, false, false] - "017932" | "DE" | [false, false, false, false, false, false, false, false] + "01790" | "DE" | [false, false, true, false, false, false, true, false] + "01791" | "DE" | [false, false, true, false, false, false, true, false] + "01792" | "DE" | [false, false, true, false, false, false, true, false] + "017930" | "DE" | [false, false, true, false, false, false, true, false] + "017931" | "DE" | [false, false, true, false, false, false, true, false] + "017932" | "DE" | [false, false, true, false, false, false, true, false] // 017933 is reserved for voicemail - see tests below - "017934" | "DE" | [false, false, false, false, false, false, false, false] - "017935" | "DE" | [false, false, false, false, false, false, false, false] - "017936" | "DE" | [false, false, false, false, false, false, false, false] - "017937" | "DE" | [false, false, false, false, false, false, false, false] - "017938" | "DE" | [false, false, false, false, false, false, false, false] - "017939" | "DE" | [false, false, false, false, false, false, false, false] - "01794" | "DE" | [false, false, false, false, false, false, false, false] - "01795" | "DE" | [false, false, false, false, false, false, false, false] - "01796" | "DE" | [false, false, false, false, false, false, false, false] - "01797" | "DE" | [false, false, false, false, false, false, false, false] - "01798" | "DE" | [false, false, false, false, false, false, false, false] - "01799" | "DE" | [false, false, false, false, false, false, false, false] + "017934" | "DE" | [false, false, true, false, false, false, true, false] + "017935" | "DE" | [false, false, true, false, false, false, true, false] + "017936" | "DE" | [false, false, true, false, false, false, true, false] + "017937" | "DE" | [false, false, true, false, false, false, true, false] + "017938" | "DE" | [false, false, true, false, false, false, true, false] + "017939" | "DE" | [false, false, true, false, false, false, true, false] + "01794" | "DE" | [false, false, true, false, false, false, true, false] + "01795" | "DE" | [false, false, true, false, false, false, true, false] + "01796" | "DE" | [false, false, true, false, false, false, true, false] + "01797" | "DE" | [false, false, true, false, false, false, true, false] + "01798" | "DE" | [false, false, true, false, false, false, true, false] + "01799" | "DE" | [false, false, true, false, false, false, true, false] } def "check if original lib fixed isValid for German Mobile 17 range with voicemail infix"(String numberUntilInfix, regionCode, boolean[] expectingFails) {