forked from mirrors/gecko-dev
		
	# ignore-this-changeset Differential Revision: https://phabricator.services.mozilla.com/D36042 --HG-- extra : source : d3afcafdce650a6f36cebbc126ee93b17f13cf52
		
			
				
	
	
		
			53 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* Any copyright is dedicated to the Public Domain.
 | 
						|
   http://creativecommons.org/publicdomain/zero/1.0/ */
 | 
						|
 | 
						|
// Tests the API for saving global session data.
 | 
						|
add_task(async function() {
 | 
						|
  const key1 = "Unique name 1: " + Date.now();
 | 
						|
  const key2 = "Unique name 2: " + Date.now();
 | 
						|
  const value1 = "Unique value 1: " + Math.random();
 | 
						|
  const value2 = "Unique value 2: " + Math.random();
 | 
						|
 | 
						|
  let global = {};
 | 
						|
  global[key1] = value1;
 | 
						|
 | 
						|
  const testState = {
 | 
						|
    windows: [
 | 
						|
      {
 | 
						|
        tabs: [
 | 
						|
          { entries: [{ url: "about:blank", triggeringPrincipal_base64 }] },
 | 
						|
        ],
 | 
						|
      },
 | 
						|
    ],
 | 
						|
    global,
 | 
						|
  };
 | 
						|
 | 
						|
  function testRestoredState() {
 | 
						|
    is(
 | 
						|
      ss.getCustomGlobalValue(key1),
 | 
						|
      value1,
 | 
						|
      "restored state has global value"
 | 
						|
    );
 | 
						|
  }
 | 
						|
 | 
						|
  function testGlobalStore() {
 | 
						|
    is(ss.getCustomGlobalValue(key2), "", "global value initially not set");
 | 
						|
 | 
						|
    ss.setCustomGlobalValue(key2, value1);
 | 
						|
    is(ss.getCustomGlobalValue(key2), value1, "retreived value matches stored");
 | 
						|
 | 
						|
    ss.setCustomGlobalValue(key2, value2);
 | 
						|
    is(
 | 
						|
      ss.getCustomGlobalValue(key2),
 | 
						|
      value2,
 | 
						|
      "previously stored value was overwritten"
 | 
						|
    );
 | 
						|
 | 
						|
    ss.deleteCustomGlobalValue(key2);
 | 
						|
    is(ss.getCustomGlobalValue(key2), "", "global value was deleted");
 | 
						|
  }
 | 
						|
 | 
						|
  await promiseBrowserState(testState);
 | 
						|
  testRestoredState();
 | 
						|
  testGlobalStore();
 | 
						|
});
 |