@Test public void assertPersistShardingInfoTransactionExecutionCallback() throws Exception { CuratorTransactionFinal curatorTransactionFinal = mock(CuratorTransactionFinal.class); TransactionCreateBuilder transactionCreateBuilder = mock(TransactionCreateBuilder.class); TransactionDeleteBuilder transactionDeleteBuilder = mock(TransactionDeleteBuilder.class); CuratorTransactionBridge curatorTransactionBridge = mock(CuratorTransactionBridge.class); when(curatorTransactionFinal.create()).thenReturn(transactionCreateBuilder); when(transactionCreateBuilder.forPath("/testJob/servers/host0/sharding", "0,1,2".getBytes())).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); when(curatorTransactionFinal.delete()).thenReturn(transactionDeleteBuilder); when(transactionDeleteBuilder.forPath("/testJob/leader/sharding/necessary")).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); when(curatorTransactionFinal.delete()).thenReturn(transactionDeleteBuilder); when(transactionDeleteBuilder.forPath("/testJob/leader/sharding/processing")).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); Map<String, List<Integer>> shardingItems = new HashMap<String, List<Integer>>(1); shardingItems.put("host0", Arrays.asList(0, 1, 2)); ShardingService.PersistShardingInfoTransactionExecutionCallback actual = shardingService.new PersistShardingInfoTransactionExecutionCallback(shardingItems); actual.execute(curatorTransactionFinal); verify(curatorTransactionFinal).create(); verify(transactionCreateBuilder).forPath("/testJob/servers/host0/sharding", "0,1,2".getBytes()); verify(curatorTransactionFinal, times(2)).delete(); verify(transactionDeleteBuilder).forPath("/testJob/leader/sharding/necessary"); verify(transactionDeleteBuilder).forPath("/testJob/leader/sharding/processing"); verify(curatorTransactionBridge, times(3)).and(); }
@Test public void assertPersistShardingInfoTransactionExecutionCallback() throws Exception { CuratorTransactionFinal curatorTransactionFinal = mock(CuratorTransactionFinal.class); TransactionCreateBuilder transactionCreateBuilder = mock(TransactionCreateBuilder.class); TransactionDeleteBuilder transactionDeleteBuilder = mock(TransactionDeleteBuilder.class); CuratorTransactionBridge curatorTransactionBridge = mock(CuratorTransactionBridge.class); when(curatorTransactionFinal.create()).thenReturn(transactionCreateBuilder); when(transactionCreateBuilder.forPath("/testJob/servers/host0/sharding", "0,1,2".getBytes())).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); when(curatorTransactionFinal.delete()).thenReturn(transactionDeleteBuilder); when(transactionDeleteBuilder.forPath("/testJob/leader/sharding/necessary")).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); when(curatorTransactionFinal.delete()).thenReturn(transactionDeleteBuilder); when(transactionDeleteBuilder.forPath("/testJob/leader/sharding/processing")).thenReturn(curatorTransactionBridge); when(curatorTransactionBridge.and()).thenReturn(curatorTransactionFinal); Map<String, List<Integer>> shardingItems = new HashMap<>(1); shardingItems.put("host0", Arrays.asList(0, 1, 2)); ShardingService.PersistShardingInfoTransactionExecutionCallback actual = shardingService.new PersistShardingInfoTransactionExecutionCallback(shardingItems); actual.execute(curatorTransactionFinal); verify(curatorTransactionFinal).create(); verify(transactionCreateBuilder).forPath("/testJob/servers/host0/sharding", "0,1,2".getBytes()); verify(curatorTransactionFinal, times(2)).delete(); verify(transactionDeleteBuilder).forPath("/testJob/leader/sharding/necessary"); verify(transactionDeleteBuilder).forPath("/testJob/leader/sharding/processing"); verify(curatorTransactionBridge, times(3)).and(); }
@Override public TransactionCreateBuilder create() { TestCreate operation = new TestCreate(this); operations.add(operation); return operation; }
@Override public TransactionCreateBuilder create() { ensureNotCommitted(); return new MockTransactionCreateBuilder(); }
@Override public TransactionCreateBuilder<CuratorOp> create() { ExtractingCuratorOp op = new ExtractingCuratorOp(); return new CreateBuilderImpl(client).<CuratorOp>asTransactionCreateBuilder(op, op.getRecord()); }