Update asyoutypeformatter_test.js
authorhagbard <david.beaumont+github@gmail.com>
Wed, 1 Apr 2015 13:43:04 +0000 (15:43 +0200)
committerYoungjae Shin <yj99.shin@samsung.com>
Tue, 9 Jun 2015 11:43:27 +0000 (20:43 +0900)
javascript/i18n/phonenumbers/asyoutypeformatter_test.js

index b120f6d..f892c51 100644 (file)
@@ -1150,44 +1150,37 @@ function testAYTFShortNumberFormattingFix_US() {
   assertEquals('1 22', f.inputDigit('2'));
 }
 
-// https://github.com/googlei18n/libphonenumber/issues/658
-// TODO: Re-enable this test when it can be run from a git repository without:
-// [exec] i18n/phonenumbers/asyoutypeformatter_test.js:1164:
-//     ERROR - Access to private property getExtractedNationalPrefix_ of
-//     i18n.phonenumbers.AsYouTypeFormatter not allowed here.
-// [exec]   assertEquals('0', f.getExtractedNationalPrefix_());
-//
-//function testAYTFClearNDDAfterIddExtraction() {
-//  /** @type {i18n.phonenumbers.AsYouTypeFormatter} */
-//  var f = new i18n.phonenumbers.AsYouTypeFormatter(RegionCode.KR);
-//
-//  // Check that when we have successfully extracted an IDD, the previously
-//  // extracted NDD is cleared since it is no longer valid.
-//  assertEquals('0', f.inputDigit('0'));
-//  assertEquals('00', f.inputDigit('0'));
-//  assertEquals('007', f.inputDigit('7'));
-//  assertEquals('0070', f.inputDigit('0'));
-//  assertEquals('00700', f.inputDigit('0'));
-//  assertEquals('0', f.getExtractedNationalPrefix_());
-//  assertEquals('00700 1 ', f.inputDigit('1'));
-//  assertEquals('', f.getExtractedNationalPrefix_());
-//  assertEquals('00700 1 2', f.inputDigit('2'));
-//  assertEquals('00700 1 23', f.inputDigit('3'));
-//  assertEquals('00700 1 234', f.inputDigit('4'));
-//  assertEquals('00700 1 234 5', f.inputDigit('5'));
-//  assertEquals('00700 1 234 56', f.inputDigit('6'));
-//  assertEquals('00700 1 234 567', f.inputDigit('7'));
-//  assertEquals('00700 1 234 567 8', f.inputDigit('8'));
-//  assertEquals('00700 1 234 567 89', f.inputDigit('9'));
-//  assertEquals('00700 1 234 567 890', f.inputDigit('0'));
-//  assertEquals('00700 1 234 567 8901', f.inputDigit('1'));
-//  assertEquals('00700123456789012', f.inputDigit('2'));
-//  assertEquals('007001234567890123', f.inputDigit('3'));
-//  assertEquals('0070012345678901234', f.inputDigit('4'));
-//  assertEquals('00700123456789012345', f.inputDigit('5'));
-//  assertEquals('007001234567890123456', f.inputDigit('6'));
-//  assertEquals('0070012345678901234567', f.inputDigit('7'));
-//}
+function testAYTFClearNDDAfterIddExtraction() {
+  /** @type {i18n.phonenumbers.AsYouTypeFormatter} */
+  var f = new i18n.phonenumbers.AsYouTypeFormatter(RegionCode.KR);
+
+  assertEquals('0', f.inputDigit('0'));
+  assertEquals('00', f.inputDigit('0'));
+  assertEquals('007', f.inputDigit('7'));
+  assertEquals('0070', f.inputDigit('0'));
+  assertEquals('00700', f.inputDigit('0'));
+  // NDD should be '0' at this stage.
+  assertEquals('00700 1 ', f.inputDigit('1'));
+  // NDD should be cleared here because IDD '1' was extracted.
+  assertEquals('00700 1 2', f.inputDigit('2'));
+  // The remaining long sequence of inputs is because the original bug that
+  // this test if for only triggered after a lot of subsequent inputs.
+  assertEquals('00700 1 23', f.inputDigit('3'));
+  assertEquals('00700 1 234', f.inputDigit('4'));
+  assertEquals('00700 1 234 5', f.inputDigit('5'));
+  assertEquals('00700 1 234 56', f.inputDigit('6'));
+  assertEquals('00700 1 234 567', f.inputDigit('7'));
+  assertEquals('00700 1 234 567 8', f.inputDigit('8'));
+  assertEquals('00700 1 234 567 89', f.inputDigit('9'));
+  assertEquals('00700 1 234 567 890', f.inputDigit('0'));
+  assertEquals('00700 1 234 567 8901', f.inputDigit('1'));
+  assertEquals('00700123456789012', f.inputDigit('2'));
+  assertEquals('007001234567890123', f.inputDigit('3'));
+  assertEquals('0070012345678901234', f.inputDigit('4'));
+  assertEquals('00700123456789012345', f.inputDigit('5'));
+  assertEquals('007001234567890123456', f.inputDigit('6'));
+  assertEquals('0070012345678901234567', f.inputDigit('7'));
+}
 
 function testAYTFNumberPatternsBecomingInvalidShouldNotResultInDigitLoss() {
   /** @type {i18n.phonenumbers.AsYouTypeFormatter} */