mirror of
				https://github.com/musix-org/musix-oss
				synced 2025-11-04 06:49:31 +00:00 
			
		
		
		
	Updated
This commit is contained in:
		
							
								
								
									
										59
									
								
								node_modules/dom-storage/tests/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								node_modules/dom-storage/tests/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
(function () {
 | 
			
		||||
  "use strict";
 | 
			
		||||
 | 
			
		||||
  var assert = require('assert')
 | 
			
		||||
    , fs = require('fs')
 | 
			
		||||
    , Storage = require('../')
 | 
			
		||||
    , dbPath = './db.json'
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
  function runTest(storage) {
 | 
			
		||||
    // should not return prototype properties
 | 
			
		||||
    assert.strictEqual(null, storage.getItem('key'));
 | 
			
		||||
    
 | 
			
		||||
    assert.strictEqual(0, Object.keys(storage).length);
 | 
			
		||||
    assert.strictEqual(0, storage.length);
 | 
			
		||||
 | 
			
		||||
    // can't make assuptions about key positioning
 | 
			
		||||
    storage.setItem('a', 1);
 | 
			
		||||
    assert.strictEqual(storage.key(0), 'a');
 | 
			
		||||
 | 
			
		||||
    storage.setItem('b', '2');
 | 
			
		||||
    assert.strictEqual(storage.getItem('a'), 1);
 | 
			
		||||
    assert.strictEqual(storage.getItem('b'), '2');
 | 
			
		||||
    assert.strictEqual(storage.length, 2);
 | 
			
		||||
 | 
			
		||||
    assert.strictEqual(storage['c'], undefined);
 | 
			
		||||
    assert.strictEqual(storage.getItem('c'), null);
 | 
			
		||||
 | 
			
		||||
    storage.setItem('c');
 | 
			
		||||
    assert.strictEqual(storage.getItem('c'), null);
 | 
			
		||||
    assert.strictEqual(storage.length, 3);
 | 
			
		||||
 | 
			
		||||
    storage.removeItem('c');
 | 
			
		||||
    assert.strictEqual(storage.getItem('c'), null);
 | 
			
		||||
    assert.strictEqual(storage.length, 2);
 | 
			
		||||
 | 
			
		||||
    storage.clear();
 | 
			
		||||
    assert.strictEqual(storage.getItem('a'), null);
 | 
			
		||||
    assert.strictEqual(storage.getItem('b'), null);
 | 
			
		||||
    assert.strictEqual(storage.length, 0);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  function runAll() {
 | 
			
		||||
    var localStorage = new Storage(dbPath, { strict: false, ws: '  ' })
 | 
			
		||||
      , sessionStorage = new Storage(null, { strict: false })
 | 
			
		||||
      ;
 | 
			
		||||
 | 
			
		||||
    runTest(sessionStorage);
 | 
			
		||||
    runTest(localStorage);
 | 
			
		||||
 | 
			
		||||
    localStorage.setItem('a', 1);
 | 
			
		||||
    setTimeout(function () {
 | 
			
		||||
      assert.deepEqual({ a: 1 }, JSON.parse(fs.readFileSync(dbPath)));
 | 
			
		||||
      console.log('All tests passed');
 | 
			
		||||
    }, 100);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fs.unlink(dbPath, runAll);
 | 
			
		||||
}());
 | 
			
		||||
		Reference in New Issue
	
	Block a user