filer/tests/spec/regression/issue106.js

54 lines
1.2 KiB
JavaScript
Raw Normal View History

2014-02-07 01:54:30 +00:00
define(["Filer"], function(Filer) {
describe('fs.writeFile truncation - issue 106', function() {
beforeEach(function() {
this.db_name = mk_db_name();
this.fs = new Filer.FileSystem({
name: this.db_name,
flags: 'FORMAT'
});
});
afterEach(function() {
indexedDB.deleteDatabase(this.db_name);
delete this.fs;
});
it('should truncate an existing file', function() {
var fs = this.fs;
var filename = '/test';
var _complete = false;
var _size1, _size2;
fs.writeFile(filename, '1', function(err) {
if(err) throw err;
fs.stat(filename, function(err, stats) {
if(err) throw err;
_size1 = stats.size;
fs.writeFile(filename, '', function(err) {
if(err) throw err;
fs.stat(filename, function(err, stats) {
if(err) throw err;
_size2 = stats.size;
_complete = true;
});
});
});
});
waitsFor(function() {
return _complete;
}, 'test to complete', DEFAULT_TIMEOUT);
runs(function() {
expect(_size1).toEqual(1);
expect(_size2).toEqual(0);
});
});
});
});