Bump version number
[platform/upstream/libsecret.git] / libsecret / tests / test-lookup-password.js
1
2 const Mock = imports.gi.MockService;
3 const Secret = imports.gi.Secret;
4 const GLib = imports.gi.GLib;
5
6 const JsUnit = imports.jsUnit;
7 const assertEquals = JsUnit.assertEquals;
8 const assertRaises = JsUnit.assertRaises;
9 const assertTrue = JsUnit.assertTrue;
10
11 Mock.start("mock-service-normal.py");
12
13 const STORE_SCHEMA = new Secret.Schema.new("org.mock.Schema",
14         Secret.SchemaFlags.NONE,
15         {
16                 "number": Secret.SchemaAttributeType.INTEGER,
17                 "string": Secret.SchemaAttributeType.STRING,
18                 "even": Secret.SchemaAttributeType.BOOLEAN,
19         }
20 );
21
22 /* Synchronous */
23
24 var password = Secret.password_lookup_sync (STORE_SCHEMA, { "number": "1", "even": "false" }, null);
25 assertEquals("111", password);
26
27 var password = Secret.password_lookup_sync (STORE_SCHEMA, { "number": "5", "even": "true" }, null);
28 assertEquals(null, password);
29
30 /* Asynchronous */
31
32 var loop = new GLib.MainLoop.new(null, false);
33
34 Secret.password_lookup (STORE_SCHEMA, { "number": "2", "string": "two" },
35                         null, function(source, result) {
36         loop.quit();
37         var password = Secret.password_lookup_finish(result);
38         assertEquals("222", password);
39 });
40
41 loop.run();
42
43 Secret.password_lookup (STORE_SCHEMA, { "number": "7", "string": "five" },
44         null, function(source, result) {
45         loop.quit();
46         var password = Secret.password_lookup_finish(result);
47         assertEquals(null, password);
48 });
49
50 loop.run();
51
52 Mock.stop();