mobile/android/tests/background/junit3/src/testhelpers/MockGlobalSession.java

branch
TOR_BUG_3246
changeset 4
fc2d59ddac77
equal deleted inserted replaced
-1:000000000000 0:5e5f18e9c80c
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
3
4 package org.mozilla.gecko.background.testhelpers;
5
6 import java.io.IOException;
7 import java.util.HashMap;
8
9 import org.json.simple.parser.ParseException;
10 import org.mozilla.gecko.sync.EngineSettings;
11 import org.mozilla.gecko.sync.NonObjectJSONException;
12 import org.mozilla.gecko.sync.SyncConfiguration;
13 import org.mozilla.gecko.sync.SyncConfigurationException;
14 import org.mozilla.gecko.sync.crypto.KeyBundle;
15 import org.mozilla.gecko.sync.delegates.GlobalSessionCallback;
16 import org.mozilla.gecko.sync.net.BasicAuthHeaderProvider;
17 import org.mozilla.gecko.sync.stage.CompletedStage;
18 import org.mozilla.gecko.sync.stage.GlobalSyncStage;
19 import org.mozilla.gecko.sync.stage.GlobalSyncStage.Stage;
20
21
22 public class MockGlobalSession extends MockPrefsGlobalSession {
23
24 public MockGlobalSession(String username, String password, KeyBundle keyBundle, GlobalSessionCallback callback) throws SyncConfigurationException, IllegalArgumentException, NonObjectJSONException, IOException, ParseException {
25 this(new SyncConfiguration(username, new BasicAuthHeaderProvider(username, password), new MockSharedPreferences(), keyBundle), callback);
26 }
27
28 public MockGlobalSession(SyncConfiguration config, GlobalSessionCallback callback)
29 throws SyncConfigurationException, IllegalArgumentException, IOException, ParseException, NonObjectJSONException {
30 super(config, callback, null, null);
31 }
32
33 @Override
34 public boolean isEngineRemotelyEnabled(String engine, EngineSettings engineSettings) {
35 return false;
36 }
37
38 @Override
39 protected void prepareStages() {
40 super.prepareStages();
41 HashMap<Stage, GlobalSyncStage> newStages = new HashMap<Stage, GlobalSyncStage>(this.stages);
42
43 for (Stage stage : this.stages.keySet()) {
44 newStages.put(stage, new MockServerSyncStage());
45 }
46
47 // This signals that the global session is complete.
48 newStages.put(Stage.completed, new CompletedStage());
49
50 this.stages = newStages;
51 }
52
53 public MockGlobalSession withStage(Stage stage, GlobalSyncStage syncStage) {
54 stages.put(stage, syncStage);
55
56 return this;
57 }
58 }

mercurial