loopback-connector-cordova-sqlite
v0.9.0
Published
LoopBack connector for SQLite under Cordova
Downloads
5
Maintainers
Readme
loopback-connector-cordova-sqlite
LoopBack is a highly-extensible, open-source Node.js framework that enables you to create dynamic end-to-end REST APIs with little or no coding. It also enables you to access data from major relational databases, MongoDB, SOAP and REST APIs.
loopback-connector-cordova-sqlite is the (cordova) SQLite3 connector module for loopback-datasource-juggler.
Basic usage
You will require loopback-datasource-juggler and the SQLite Cordova plugin (io.litehelpers.cordova.sqlite) modules for using this connector. The SQLite3 database can be configured to operate in 2 ways: with a DB file name and anonymous in-memory DB. This connector needs 2 configuration parameters:
file_name
(string): A file name for SQLite DB file. It can have any string value for file based SQLite usage andnull
for in-memory usage.debug
(boolean): Used for disabling and enabling logging.
A DataSource with basic settings can be defined as shown below:
var DataSource = require('loopback-datasource-juggler').DataSource;
var dataSource = new DataSource(require('../index'), {
file_name: 'dev.sqlite3',
debug: false
});
Checkout examples\example.js
to get the idea of basic usage.
Run the example from the root directory as follows:
node examples/example.js
SQLite3 configuration for tests
The .loopbackrc
file holds the settings for the tests. It's in JSON format and has following content:
- For file based SQLite testing
{
"sqlite": {
"test": {
"file_name": "test.sqlite3",
"debug": false
}
}
}
- For anonymous in-memory SQLite testing
{
"sqlite": {
"test": {
"file_name": null,
"debug": false
}
}
}
The file_name
is the name of the sqlite3 DB file, which will be created, or, used if already present.
The debug
value is to set debugging mode.
Running the tests
- execute
npm install
for installing all the dependencies. - execute
npm test
to run all the tests.
Credits
- boscodsouza82 for creating the loopback-example-offline-sync for use with Cordova after a discussion on issue 858 on loopback
Caution
Although there is the illusion of having a test suite for this module, actually there isn't. All test files are taken from other sources. The initial thought was to draw some inspiration from them on how to properly test this module.
Having said that, this module is in use in a rather complex production application, and although the application has bugs (which app doesn't ;-) ) there are no known issues with this connector itself.