From f71a9a8267b0d407edb1f7c3035ca486f37eaa2b Mon Sep 17 00:00:00 2001 From: hagbard Date: Wed, 1 Apr 2015 15:43:04 +0200 Subject: [PATCH] Update asyoutypeformatter_test.js --- .../i18n/phonenumbers/asyoutypeformatter_test.js | 69 ++++++++++------------ 1 file changed, 31 insertions(+), 38 deletions(-) diff --git a/javascript/i18n/phonenumbers/asyoutypeformatter_test.js b/javascript/i18n/phonenumbers/asyoutypeformatter_test.js index b120f6d..f892c51 100644 --- a/javascript/i18n/phonenumbers/asyoutypeformatter_test.js +++ b/javascript/i18n/phonenumbers/asyoutypeformatter_test.js @@ -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} */ -- 2.7.4