DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (31ec81b5d7bb)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
<?xml version="1.0"?>

<!-- Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/ -->

<?xml-stylesheet type="text/css" href="chrome://global/skin"?>
<?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?>

<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        title="Mozilla Bug 781379">
  <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
  <script type="application/javascript" src="head.js"/>
  <!-- test results are displayed in the html:body -->
  <body xmlns="http://www.w3.org/1999/xhtml">
  <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=809213"
     target="_blank">Mozilla Bug 809213</a>
  </body>

<script type="application/javascript;version=1.8">

"use strict";

Components.utils.import("resource://gre/modules/Services.jsm");
Components.utils.import("resource://gre/modules/PhoneNumberUtils.jsm");

Services.prefs.setIntPref("dom.phonenumber.substringmatching.BR", 8);
Services.prefs.setCharPref("ril.lastKnownSimMcc", "724");

function CantParseWithMcc(dial, mcc) {
  var result = PhoneNumberUtils.parseWithMCC(dial, mcc);
  if (result) {
    ok(false, "Shouldn't parse!\n");
    dump("expected: does not parse");
    dump("got: " + dial + " " + mcc);
  } else {
    ok(true, "Parses");
  }
}

function ParseWithMcc(dial, mcc) {
  var result = PhoneNumberUtils.parseWithMCC(dial, mcc);
  if (result) {
    ok(true, "Parses!\n");
  } else {
    ok(false, "Should Parse");
    dump("expected: parses");
  }
}

function FuzzyMatch(number1, number2, expect) {
  var result = PhoneNumberUtils.fuzzyMatch(number1, number2);
  is(result, expect, "FuzzyMatch OK!");
}

// Unknown mcc
CantParseWithMcc("1234", 123);
ParseWithMcc("4165555555", 302);

is(PhoneNumberUtils.normalize("123abc", true), "123", "NumbersOnly");
is(PhoneNumberUtils.normalize("123abc", false), "123222", "NumbersOnly");

FuzzyMatch("123abc", "123222", true);
FuzzyMatch("123456789", "123456789", true);
FuzzyMatch("111", null, false);
FuzzyMatch("+552155555555", "2155555555", true);
FuzzyMatch("aaa123456789", "zzzzz123456789", true);
</script>
</window>