node-testdata-generator
Version:
Generates testdata with a schema that is read from a file.
52 lines (51 loc) • 1.82 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var DataHandle = /** @class */ (function () {
function DataHandle() {
this.hasNextCalled = false;
this.hasNextString = "";
}
DataHandle.prototype.getNext = function () {
var _this = this;
return new Promise(function (resolve, reject) {
if (_this.hasNextCalled) {
_this.hasNextCalled = false;
resolve(_this.hasNextString);
}
_this.db.get("SELECT rowid as id, value FROM temp_out ORDER BY ROWID ASC LIMIT 1", function (err, row) {
if (err != undefined || row == undefined) {
reject();
}
else {
_this.deleteRow(row.id);
resolve(row.value);
}
});
});
};
DataHandle.prototype.hasNext = function () {
var _this = this;
return new Promise(function (resolve, reject) {
_this.db.get("SELECT rowid as id, value FROM temp_out ORDER BY ROWID ASC LIMIT 1", function (err, row) {
if (err != undefined)
reject();
if (row == undefined) {
resolve(false);
}
else {
_this.hasNextCalled = true;
_this.hasNextString = row.value;
_this.deleteRow(row.id);
resolve(true);
}
});
});
};
DataHandle.prototype.deleteRow = function (rowId) {
var stmt = this.db.prepare("DELETE FROM temp_out WHERE rowid = $id");
stmt.run({ $id: rowId });
stmt.finalize();
};
return DataHandle;
}());
exports.DataHandle = DataHandle;