README-tests.md
1# Running tests
2
3Use the following command to run the unit tests.
4
5```
6atest ContactsProviderTests
7```
8
README.md
1# Debugging Tools
2## Enable all verbose logs
3Running `./logging.sh` will enable all verbose logs for the queries in the provider.
4More details in the script itself.
5
6## Querying the database
7There are 2 different ways to easily query the database, `qc` and `contatcsproviderutils.sh`.
8
9### QC usage
10`qc` queries the deivce directly. For usage, append the query in single quotes after the command:
11
12e.g.
13```
14qc/qc 'select * from raw_contacts'
15```
16
17or to get all the tables
18```
19qc/qc '.tables'
20```
21QC support SQLite language, but it might have some limitations working with complex nested queries.
22
23### contactsproviderutils.sh usage
24
25This script downlaods the database locally and logins into a local version. It is also possible to push any change back to the device.
26
27* Add tools to path
28 ```
29 source contactsproviderutils.sh
30 ```
31* Pull `contacts2.db` and query:
32 ```
33 sqlite3-pull
34 ```
35 This will open a sql terminal with `rlwrap` which can be easily used for queries.
36* Pull `contacts2.db` and query with a graphical interface:
37 ```
38 sqlitebrowser-pull
39 ```
40* Push local updates to the device:
41 ```
42 sqlite3-push
43 ```
44
45