+++ /dev/null
-// Copyright (C) 2012 The Libphonenumber Authors
-//
-// 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.
-
-// Author: David Yonge-Mallo
-
-#include "phonenumbers/shortnumberutil.h"
-
-#include "phonenumbers/shortnumberinfo.h"
-
-namespace i18n {
-namespace phonenumbers {
-
-using std::string;
-
-ShortNumberUtil::ShortNumberUtil() {
-}
-
-bool ShortNumberUtil::ConnectsToEmergencyNumber(const string& number,
- const string& region_code) const {
- ShortNumberInfo short_info;
- return short_info.ConnectsToEmergencyNumber(number, region_code);
-}
-
-bool ShortNumberUtil::IsEmergencyNumber(const string& number,
- const string& region_code) const {
- ShortNumberInfo short_info;
- return short_info.IsEmergencyNumber(number, region_code);
-}
-
-} // namespace phonenumbers
-} // namespace i18n
+++ /dev/null
-// Copyright (C) 2012 The Libphonenumber Authors
-//
-// 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.
-
-// Utility for international short phone numbers, such as short codes and
-// emergency numbers. Note most commercial short numbers are not handled here,
-// but by the phonenumberutil.
-//
-// Author: David Yonge-Mallo
-//
-// This class is deprecated. Users should migrate to ShortNumberInfo instead for
-// this information.
-
-#ifndef I18N_PHONENUMBERS_SHORTNUMBERUTIL_H_
-#define I18N_PHONENUMBERS_SHORTNUMBERUTIL_H_
-
-#include <string>
-
-#include "phonenumbers/base/basictypes.h"
-
-namespace i18n {
-namespace phonenumbers {
-
-using std::string;
-
-// Deprecated - use ShortNumberInfo instead.
-class ShortNumberUtil {
- public:
- ShortNumberUtil();
-
- // Returns true if the number might be used to connect to an emergency service
- // in the given region.
- //
- // This method takes into account cases where the number might contain
- // formatting, or might have additional digits appended (when it is okay to do
- // that in the region specified).
- bool ConnectsToEmergencyNumber(const string& number,
- const string& region_code) const;
-
- // Returns true if the number exactly matches an emergency service number in
- // the given region.
- //
- // This method takes into account cases where the number might contain
- // formatting, but doesn't allow additional digits to be appended.
- bool IsEmergencyNumber(const string& number,
- const string& region_code) const;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(ShortNumberUtil);
-};
-
-} // namespace phonenumbers
-} // namespace i18n
-
-#endif // I18N_PHONENUMBERS_SHORTNUMBERUTIL_H_
+++ /dev/null
-// Copyright (C) 2009 The Libphonenumber Authors
-//
-// 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.
-
-// Author: David Yonge-Mallo
-
-#include <gtest/gtest.h>
-
-#include "phonenumbers/default_logger.h"
-#include "phonenumbers/phonenumberutil.h"
-#include "phonenumbers/shortnumberutil.h"
-#include "phonenumbers/test_util.h"
-
-namespace i18n {
-namespace phonenumbers {
-
-class ShortNumberUtilTest : public testing::Test {
- protected:
- ShortNumberUtilTest() : short_util_() {
- PhoneNumberUtil::GetInstance()->SetLogger(new StdoutLogger());
- }
-
- const ShortNumberUtil short_util_;
-
- private:
- DISALLOW_COPY_AND_ASSIGN(ShortNumberUtilTest);
-};
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumber_US) {
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("911", RegionCode::US()));
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("112", RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("999", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumberLongNumber_US) {
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("9116666666",
- RegionCode::US()));
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("1126666666",
- RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("9996666666",
- RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumberWithFormatting_US) {
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("9-1-1", RegionCode::US()));
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("1-1-2", RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("9-9-9",
- RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumberWithPlusSign_US) {
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("+911", RegionCode::US()));
- // This hex sequence is the full-width plus sign U+FF0B.
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("\xEF\xBC\x8B" "911",
- RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber(" +911",
- RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("+112", RegionCode::US()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("+999", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumber_BR) {
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("911", RegionCode::BR()));
- EXPECT_TRUE(short_util_.ConnectsToEmergencyNumber("190", RegionCode::BR()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("999", RegionCode::BR()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumberLongNumber_BR) {
- // Brazilian emergency numbers don't work when additional digits are appended.
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("9111", RegionCode::BR()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("1900", RegionCode::BR()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("9996", RegionCode::BR()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumber_AO) {
- // Angola doesn't have any metadata for emergency numbers in the test
- // metadata.
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("911", RegionCode::AO()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("222123456",
- RegionCode::AO()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("923123456",
- RegionCode::AO()));
-}
-
-TEST_F(ShortNumberUtilTest, ConnectsToEmergencyNumber_ZW) {
- // Zimbabwe doesn't have any metadata in the test metadata.
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("911", RegionCode::ZW()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("01312345",
- RegionCode::ZW()));
- EXPECT_FALSE(short_util_.ConnectsToEmergencyNumber("0711234567",
- RegionCode::ZW()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumber_US) {
- EXPECT_TRUE(short_util_.IsEmergencyNumber("911", RegionCode::US()));
- EXPECT_TRUE(short_util_.IsEmergencyNumber("112", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("999", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumberLongNumber_US) {
- EXPECT_FALSE(short_util_.IsEmergencyNumber("9116666666", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("1126666666", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("9996666666", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumberWithFormatting_US) {
- EXPECT_TRUE(short_util_.IsEmergencyNumber("9-1-1", RegionCode::US()));
- EXPECT_TRUE(short_util_.IsEmergencyNumber("*911", RegionCode::US()));
- EXPECT_TRUE(short_util_.IsEmergencyNumber("1-1-2", RegionCode::US()));
- EXPECT_TRUE(short_util_.IsEmergencyNumber("*112", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("9-9-9", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("*999", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumberWithPlusSign_US) {
- EXPECT_FALSE(short_util_.IsEmergencyNumber("+911", RegionCode::US()));
- // This hex sequence is the full-width plus sign U+FF0B.
- EXPECT_FALSE(short_util_.IsEmergencyNumber("\xEF\xBC\x8B" "911",
- RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber(" +911", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("+112", RegionCode::US()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("+999", RegionCode::US()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumber_BR) {
- EXPECT_TRUE(short_util_.IsEmergencyNumber("911", RegionCode::BR()));
- EXPECT_TRUE(short_util_.IsEmergencyNumber("190", RegionCode::BR()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("999", RegionCode::BR()));
-}
-
-TEST_F(ShortNumberUtilTest, EmergencyNumberLongNumber_BR) {
- EXPECT_FALSE(short_util_.IsEmergencyNumber("9111", RegionCode::BR()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("1900", RegionCode::BR()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("9996", RegionCode::BR()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumber_AO) {
- // Angola doesn't have any metadata for emergency numbers in the test
- // metadata.
- EXPECT_FALSE(short_util_.IsEmergencyNumber("911", RegionCode::AO()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("222123456", RegionCode::AO()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("923123456", RegionCode::AO()));
-}
-
-TEST_F(ShortNumberUtilTest, IsEmergencyNumber_ZW) {
- // Zimbabwe doesn't have any metadata in the test metadata.
- EXPECT_FALSE(short_util_.IsEmergencyNumber("911", RegionCode::ZW()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("01312345", RegionCode::ZW()));
- EXPECT_FALSE(short_util_.IsEmergencyNumber("0711234567", RegionCode::ZW()));
-}
-
-} // namespace phonenumbers
-} // namespace i18n