1package com.android.server.content;
2
3import android.os.Bundle;
4
5import junit.framework.TestCase;
6
7public class SyncManagerTest extends TestCase {
8
9    final String KEY_1 = "key_1";
10    final String KEY_2 = "key_2";
11
12    public void testSyncExtrasEquals_WithNull() throws Exception {
13        Bundle b1 = new Bundle();
14        Bundle b2 = new Bundle();
15
16        b1.putString(KEY_1, null);
17        b2.putString(KEY_1, null);
18
19        assertTrue("Null extra not properly compared between bundles.",
20                SyncManager.syncExtrasEquals(b1, b2, false /* don't care about system extras */));
21    }
22
23    public void testSyncExtrasEqualsBigger_WithNull() throws Exception {
24        Bundle b1 = new Bundle();
25        Bundle b2 = new Bundle();
26
27        b1.putString(KEY_1, null);
28        b2.putString(KEY_1, null);
29
30        b1.putString(KEY_2, "bla");
31        b2.putString(KEY_2, "bla");
32
33        assertTrue("Extras not properly compared between bundles.",
34                SyncManager.syncExtrasEquals(b1, b2, false /* don't care about system extras */));
35    }
36
37    public void testSyncExtrasEqualsFails_differentValues() throws Exception {
38        Bundle b1 = new Bundle();
39        Bundle b2 = new Bundle();
40
41        b1.putString(KEY_1, null);
42        b2.putString(KEY_1, null);
43
44        b1.putString(KEY_2, "bla");
45        b2.putString(KEY_2, "ble");  // different key
46
47        assertFalse("Extras considered equal when they are different.",
48                SyncManager.syncExtrasEquals(b1, b2, false /* don't care about system extras */));
49    }
50
51    public void testSyncExtrasEqualsFails_differentNulls() throws Exception {
52        Bundle b1 = new Bundle();
53        Bundle b2 = new Bundle();
54
55        b1.putString(KEY_1, null);
56        b2.putString(KEY_1, "bla");  // different key
57
58        b1.putString(KEY_2, "ble");
59        b2.putString(KEY_2, "ble");
60
61        assertFalse("Extras considered equal when they are different.",
62                SyncManager.syncExtrasEquals(b1, b2, false /* don't care about system extras */));
63    }
64}
65