var options = histsvc.getNewQueryOptions(); options.maxResults = 1; options.resultType = options.RESULTS_AS_URI var query = histsvc.getNewQuery(); query.uri = testURI; var result = histsvc.executeQuery(query, options); var root = result.root; root.containerOpen = true; do_check_eq(root.childCount, 1); root.containerOpen = false; 
do_check_true(uri_in_db(testURI)); 
function run_test() {  // add a visit  var testURI = uri("http://mozilla.com");  add_visit(testURI);  // now query for the visit, setting sorting and limit such that  // we should retrieve only the visit we just added  var options = histsvc.getNewQueryOptions();  options.sortingMode = options.SORT_BY_DATE_DESCENDING;  options.maxResults = 1;  // TODO: using full visit crashes in xpcshell test  //options.resultType = options.RESULTS_AS_FULL_VISIT;  options.resultType = options.RESULTS_AS_VISIT;  var query = histsvc.getNewQuery();  var result = histsvc.executeQuery(query, options);  var root = result.root;  root.containerOpen = true;  var cc = root.childCount;  for (var i=0; i < cc; ++i) {    var node = root.getChild(i);    // test node properties in RESULTS_AS_VISIT    do_check_eq(node.uri, testURI.spec);    do_check_eq(node.type, options.RESULTS_AS_VISIT);    // TODO: change query type to RESULTS_AS_FULL_VISIT and test this    //do_check_eq(node.transitionType, histsvc.TRANSITION_TYPED);  }  root.containerOpen = false;  // add another visit for the same URI, and a third visit for a different URI  var testURI2 = uri("http://google.com/");  add_visit(testURI);  add_visit(testURI2);  options.maxResults = 5;  options.resultType = options.RESULTS_AS_URI;  // test minVisits  query.minVisits = 0;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 2);  query.minVisits = 1;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 2);  query.minVisits = 2;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 1);  query.minVisits = 3;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 0);  // test maxVisits  query.minVisits = -1;  query.maxVisits = -1;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 2);  query.maxVisits = 0;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 0);  query.maxVisits = 1;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 1);  query.maxVisits = 2;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 2);  query.maxVisits = 3;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 2);    // test annotation-based queries  var annos = Cc["@mozilla.org/browser/annotation-service;1"].              getService(Ci.nsIAnnotationService);  annos.setPageAnnotation(uri("http://mozilla.com/"), "testAnno", 0, 0,                          Ci.nsIAnnotationService.EXPIRE_NEVER);  query.annotation = "testAnno";  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 1);  do_check_eq(result.root.getChild(0).uri, "http://mozilla.com/");  // test annotationIsNot  query.annotationIsNot = true;  result = histsvc.executeQuery(query, options);  result.root.containerOpen = true;  do_check_eq(result.root.childCount, 1);  do_check_eq(result.root.getChild(0).uri, "http://google.com/");  // by default, browser.history_expire_days is 9  do_check_true(!histsvc.historyDisabled);  // test getPageTitle  var title = histsvc.getPageTitle(uri("http://mozilla.com"));  do_check_eq(title, "mozilla.com");  // query for the visit  var options = histsvc.getNewQueryOptions();  options.maxResults = 1;  options.resultType = options.RESULTS_AS_URI  var query = histsvc.getNewQuery();  query.uri = testURI;  var result = histsvc.executeQuery(query, options);  var root = result.root;  root.containerOpen = true;  do_check_eq(root.childCount, 1);  root.containerOpen = false;  // test for schema changes in bug 373239  // get direct db connection  var store = Cc["@mozilla.org/storage/service;1"].    getService(Ci.mozIStorageService);  // get db file  var file = Cc["@mozilla.org/file/directory_service;1"].    getService(Ci.nsIProperties).    get("ProfD", Ci.nsILocalFile);  file.append("places.sqlite");  var db = store.openDatabase(file);  var q = "SELECT id FROM moz_bookmarks";  try {    var statement = db.createStatement(q);  } catch(ex) {    do_throw("bookmarks table does not have id field, schema is too old!");  }  // bug 394741 - regressed history text searches  add_visit(uri("http://mozilla.com"));  var options = histsvc.getNewQueryOptions();  //options.resultType = options.RESULTS_AS_VISIT;  var query = histsvc.getNewQuery();  query.searchTerms = "moz";  var result = histsvc.executeQuery(query, options);  var root = result.root;  root.containerOpen = true;  do_check_true(root.childCount > 0);}
5872	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5872/456602fe3000a8a13deb14e6edd60539b7fe42e3/test_history.js/buggy/toolkit/components/places/tests/unit/test_history.js