var checkResults = function(err, inData) {
		//console.log("!--------------  Checking Results", options.name, "Error: ", err, "Data:", inData);
		var passed = true;
		if (err) {
			console.log("!------------ Error", err.toString());
			data.push({name: options.name + " test failed with: ", css: 'one'});
			data.push({name: "  " + err.toString(), css:'one'});
			return callback(false);
		}
		if (!inData || inData.length !== options.results.length) {

			console.dir(inData);
			console.log("!----------- No Data");
			data.push({name: options.name + " test failed with different results length", css: 'one'});
			return callback(false);
		}
		if (inData.length === 0) {
			console.log("!-------- No Data Returned");
			return callback(passed);
		}
		//console.log("!------------ Data Returned", inData.length, inData);
		for (var i=0;i<inData.length;i++) {
			var result = checkRowOfData(inData[i], options.results[i]);
			if (!result.status) {
				passed = false;
				data.push({name: options.name + " test failed on row: "+i+", field: "+result.field, css: 'one'});
				console.log("$$$$$ Failure:", inData[i], options.results[i], typeof inData[i][result.field], typeof options.results[i][result.field]);
				break;
			}
		}
		callback(passed);
	};
	var checkEachResults = function(err, inData) {
		if (!checksPassed) return;
		if (err) {
			data.push({name: options.name + " test failed with "+err.toString(), css: 'one'});
			console.log(options.name + " test failed with ",err.toString());
			checksPassed = false;
			return;
		}
		var result = checkRowOfData(inData, options.results[checkRow]);
		if (!result.status) {
			checksPassed = false;
			data.push({name: options.name + " test failed on row: "+checkRow+", field: "+result.field, css: 'one'});
			console.log("$$$$ Failure: ", inData, options.results[checkRow], typeof inData[result.field], typeof options.results[checkRow][result.field]);
		}
		checkRow++;
	};
function setupTests(callback) {
	data.push({name: 'Creating tables and data...', css: 'one'});
	db.execSQL('drop table if exists tests;', function(err) {
		if (err) { console.log("!---- Drop Err", err); }
		db.execSQL('create table tests (`int_field` integer, `num_field` numeric, `real_field` real, `text_field` text)', function(err) {
			if (err) {
				data.push({name: 'Failed to create tables and data...', css: 'one'});
				console.log("!---- Create Table err", err);
				return;
			}
			db.execSQL('insert into tests (int_field, num_field, real_field, text_field) values (1,1.2,2.4,"Text1")', function (err) {
				if (err) {
					data.push({name: 'Failed to create tables and data...', css: 'one'});
					console.log("!---- Insert err", err);
					return;
				}
				db.execSQL('insert into tests (int_field, num_field, real_field, text_field) values (2,4.8,5.6,"Text2")').then(() => {
					callback();
				}).catch((err) => {
					if (err) {
						data.push({name: 'Failed to insert data into tests', css: 'one'}); 
						console.log("!---- Insert err2:", err);
						return;
					}
					callback(err);
				});
			});
		});
	});
}
 db.execSQL(['drop table if exists preparetests;','create table preparetests (`int_field` integer, `num_field` numeric, `real_field` real, `text_field` text)'], function (err) {
     if (err) {
         data.push({name: 'Failed to create tables and data...', css: 'one'});
         console.log("!---- Create Table err", err);
         return;
     }
     callback();
 });
				}).catch((err) => {
					if (err) {
						data.push({name: 'Failed to insert data into tests', css: 'one'}); 
						console.log("!---- Insert err2:", err);
						return;
					}
					callback(err);
				});
	const runTest = function(status) {
		if (!status) {
			return callback(false);
		} else if (runningTest > -1) {
			data.push({name: "Passed: " + tests[runningTest].name, 'css':'two'});
		}
		runningTest++;
		if (runningTest >= tests.length) {
			return callback(status);
		}
		runATest(tests[runningTest], runTest);
	};
		prepared.execute([[2,2.4,3.6,"Text2"], [3,3.6,4.8,"Text3"]], function(err2) {
			if (err2) {
				data.push({name: 'Failed to create tables and data...', css: 'one'});
				console.log("!---- Insert err", err, err && err.stack);
				return;
			}
			if (rollback) {
				db.rollback();
			} else {
				db.commit();
			}
			prepared.finished();
			callback();
		});
		setTimeout( function() {
			data.push({name: 'Created tables & data...', css: 'one'});
			runNativeArrayTest(function () {
				runNativeObjectTest(function () {
					runStringArrayTest(function () {
						runStringObjectTest(function () {
							runPreparedTests(function () {
								data.push({name: "-----------------------------", css: 'two'});
								data.push({name: 'Tests completed...', css: 'two'});
							});
						});
					});
				});
			});
		},10);
	db.all('select name from names', function (err, loadedData) {
		data.length = 0;
		if (err) {
			console.log(err);
		} else {
			for (var i=0;i<loadedData.length;i++) {
				if (i % 2 === 0) {
					loadedData[i].css = "one";
				} else {
					loadedData[i].css = "two";
				}
				data.push(loadedData[i]);
			}
		}
	});
Esempio n. 10
0
			db.execSQL('insert into tests (int_field, num_field, real_field, text_field) values (1,1.2,2.4,"Text1")', function (err) {
				if (err) {
					data.push({name: 'Failed to create tables and data...', css: 'one'});
					console.log("!---- Insert err", err);
					return;
				}
				db.execSQL('insert into tests (int_field, num_field, real_field, text_field) values (2,4.8,5.6,"Text2")').then(() => {
					callback();
				}).catch((err) => {
					if (err) {
						data.push({name: 'Failed to insert data into tests', css: 'one'}); 
						console.log("!---- Insert err2:", err);
						return;
					}
					callback(err);
				});
			});
Esempio n. 11
0
function runTests() {
	data.length = 0;
	data.push({name: 'Running SQLite tests...', css: 'one'});
	setupTests(function() {
		setTimeout( function() {
			data.push({name: 'Created tables & data...', css: 'one'});
			runNativeArrayTest(function () {
				runNativeObjectTest(function () {
					runStringArrayTest(function () {
						runStringObjectTest(function () {
							runPreparedTests(function () {
								data.push({name: "-----------------------------", css: 'two'});
								data.push({name: 'Tests completed...', css: 'two'});
							});
						});
					});
				});
			});
		},10);
	});
}
Esempio n. 12
0
							runPreparedTests(function () {
								data.push({name: "-----------------------------", css: 'two'});
								data.push({name: 'Tests completed...', css: 'two'});
							});
Esempio n. 13
0
const sqlite = require('nativescript-sqlite');
const ObservableArray = require("tns-core-modules/data/observable-array").ObservableArray;


//var Tracing = require('./tracing.js');
//Tracing(sqlite, {ignore: ["close", "resultType", "valueType", "_toStringArray", "_getResultEngine"], disableAddedFunction: true});


var dbname = 'name_db.sqlite';
var db = null;
var enc_db = null;
var page = null;

var data = new ObservableArray();

if (sqlite.HAS_COMMERCIAL) {
	console.log("Using Commercial");
	data.push({name:'Commercial Support', css:'one'});
} else {
	console.log("No Commercial Support");
}

if (sqlite.HAS_ENCRYPTION) {
	console.log("Using Encryption");
	//dbname = 'encrypted.sqlite';
	data.push({name:'Encryption Support', css:'one'});
} else {
	console.log("No Encryption");
}
data.push({name: 'Loading...', css: 'one'});