use of org.apache.connect.mongo.replicator.ReplicaSetsContext in project rocketmq-externals by apache.
the class ReplicaContextTest method before.
@Before
public void before() {
SourceTaskConfig sourceTaskConfig = new SourceTaskConfig();
context = new ReplicaSetsContext(sourceTaskConfig);
}
use of org.apache.connect.mongo.replicator.ReplicaSetsContext in project rocketmq-externals by apache.
the class MongoSourceTaskTest method testContextStart.
@Test
public void testContextStart() throws NoSuchFieldException, IllegalAccessException {
MongoSourceTask mongoSourceTask = new MongoSourceTask();
DefaultKeyValue defaultKeyValue = new DefaultKeyValue();
defaultKeyValue.put("mongoAddr", "test/127.0.0.1:27027");
defaultKeyValue.put("serverSelectionTimeoutMS", "10");
Field context = SourceTask.class.getDeclaredField("context");
context.setAccessible(true);
context.set(mongoSourceTask, TaskContext());
mongoSourceTask.start(defaultKeyValue);
Field replicaSetsContext = MongoSourceTask.class.getDeclaredField("replicaSetsContext");
replicaSetsContext.setAccessible(true);
ReplicaSetsContext setsContext = (ReplicaSetsContext) replicaSetsContext.get(mongoSourceTask);
Field replicaSets = ReplicaSetsContext.class.getDeclaredField("replicaSets");
replicaSets.setAccessible(true);
List<ReplicaSet> replicaSetList = (List<ReplicaSet>) replicaSets.get(setsContext);
Assert.assertTrue(replicaSetList.size() == 1);
ReplicaSet replicaSet = replicaSetList.get(0);
Field replicaSetConfig = ReplicaSet.class.getDeclaredField("replicaSetConfig");
replicaSetConfig.setAccessible(true);
ReplicaSetConfig replicaSetConfig1 = (ReplicaSetConfig) replicaSetConfig.get(replicaSet);
Assert.assertTrue(StringUtils.equals(replicaSetConfig1.getReplicaSetName(), "test"));
Assert.assertTrue(StringUtils.equals(replicaSetConfig1.getHost(), "127.0.0.1:27027"));
Assert.assertTrue(replicaSetConfig1.getPosition().getTimeStamp() == 22222222);
Assert.assertTrue(replicaSetConfig1.getPosition().getInc() == 222);
Assert.assertTrue(!replicaSetConfig1.getPosition().isInitSync());
}
Aggregations