public void TestGetExpectedCost()
        {
            var premiumRateExample = ShortInfo.GetExampleShortNumberForCost(RegionCode.FR,
                                                                            ShortNumberInfo.ShortNumberCost.PREMIUM_RATE);

            Assert.Equal(ShortNumberInfo.ShortNumberCost.PREMIUM_RATE, ShortInfo.GetExpectedCostForRegion(
                             Parse(premiumRateExample, RegionCode.FR), RegionCode.FR));
            var premiumRateNumber = new PhoneNumber.Builder().SetCountryCode(33)
                                    .SetNationalNumber(ulong.Parse(premiumRateExample)).Build();

            Assert.Equal(ShortNumberInfo.ShortNumberCost.PREMIUM_RATE,
                         ShortInfo.GetExpectedCost(premiumRateNumber));

            var standardRateExample = ShortInfo.GetExampleShortNumberForCost(RegionCode.FR,
                                                                             ShortNumberInfo.ShortNumberCost.STANDARD_RATE);

            Assert.Equal(ShortNumberInfo.ShortNumberCost.STANDARD_RATE, ShortInfo.GetExpectedCostForRegion(
                             Parse(standardRateExample, RegionCode.FR), RegionCode.FR));
            var standardRateNumber = new PhoneNumber.Builder().SetCountryCode(33)
                                     .SetNationalNumber(ulong.Parse(standardRateExample)).Build();

            Assert.Equal(ShortNumberInfo.ShortNumberCost.STANDARD_RATE,
                         ShortInfo.GetExpectedCost(standardRateNumber));

            var tollFreeExample = ShortInfo.GetExampleShortNumberForCost(RegionCode.FR,
                                                                         ShortNumberInfo.ShortNumberCost.TOLL_FREE);

            Assert.Equal(ShortNumberInfo.ShortNumberCost.TOLL_FREE,
                         ShortInfo.GetExpectedCostForRegion(Parse(tollFreeExample, RegionCode.FR), RegionCode.FR));
            var tollFreeNumber = new PhoneNumber.Builder().SetCountryCode(33)
                                 .SetNationalNumber(ulong.Parse(tollFreeExample)).Build();

            Assert.Equal(ShortNumberInfo.ShortNumberCost.TOLL_FREE,
                         ShortInfo.GetExpectedCost(tollFreeNumber));

            Assert.Equal(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
                         ShortInfo.GetExpectedCostForRegion(Parse("12345", RegionCode.FR), RegionCode.FR));
            var unknownCostNumber = new PhoneNumber.Builder().SetCountryCode(33).SetNationalNumber(12345L);

            Assert.Equal(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
                         ShortInfo.GetExpectedCost(unknownCostNumber.Build()));

            // Test that an invalid number may nevertheless have a cost other than UNKNOWN_COST.
            Assert.False(
                ShortInfo.IsValidShortNumberForRegion(Parse("116123", RegionCode.FR), RegionCode.FR));
            Assert.Equal(ShortNumberInfo.ShortNumberCost.TOLL_FREE,
                         ShortInfo.GetExpectedCostForRegion(Parse("116123", RegionCode.FR), RegionCode.FR));
            var invalidNumber = new PhoneNumber.Builder().SetCountryCode(33).SetNationalNumber(116123L).Build();

            Assert.False(ShortInfo.IsValidShortNumber(invalidNumber));
            Assert.Equal(ShortNumberInfo.ShortNumberCost.TOLL_FREE,
                         ShortInfo.GetExpectedCost(invalidNumber));

            // Test a nonexistent country code.
            Assert.Equal(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
                         ShortInfo.GetExpectedCostForRegion(Parse("911", RegionCode.US), RegionCode.ZZ));
            unknownCostNumber.Clear();
            unknownCostNumber.SetCountryCode(123).SetNationalNumber(911L);
            Assert.Equal(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
                         ShortInfo.GetExpectedCost(unknownCostNumber.Build()));
        }