Search in sources :

Example 6 with BlockContainer

use of io.nuls.consensus.poc.container.BlockContainer in project nuls by nuls-io.

the class ConsensusPocServiceImpl method newBlock.

@Override
public Result newBlock(Block block, Node node) {
    BlockContainer blockContainer = new BlockContainer(block, node, BlockContainerStatus.RECEIVED);
    boolean success = blockQueueProvider.put(blockContainer);
    return new Result(success, null);
}
Also used : BlockContainer(io.nuls.consensus.poc.container.BlockContainer)

Example 7 with BlockContainer

use of io.nuls.consensus.poc.container.BlockContainer in project nuls by nuls-io.

the class BlockQueueProviderTest method testPut.

@Test
public void testPut() {
    assertNotNull(blockQueueProvider);
    assertEquals(0, blockQueueProvider.size());
    Block block = new Block();
    boolean result = blockQueueProvider.put(new BlockContainer(block, BlockContainerStatus.RECEIVED));
    assertTrue(result);
    assertEquals(1, blockQueueProvider.size());
}
Also used : BlockContainer(io.nuls.consensus.poc.container.BlockContainer) Block(io.nuls.kernel.model.Block) Test(org.junit.Test) BaseTest(io.nuls.consensus.poc.BaseTest)

Example 8 with BlockContainer

use of io.nuls.consensus.poc.container.BlockContainer in project nuls by nuls-io.

the class BlockQueueProviderTest method testGet.

@Test
public void testGet() {
    assertNotNull(blockQueueProvider);
    assertEquals(0, blockQueueProvider.size());
    if (downloadService.isDownloadSuccess().isSuccess()) {
        downloadService.setDownloadSuccess(false);
    }
    Block block = new Block();
    boolean result = blockQueueProvider.put(new BlockContainer(block, BlockContainerStatus.RECEIVED));
    assertTrue(result);
    assertEquals(1, blockQueueProvider.size());
    BlockContainer blockContainer = blockQueueProvider.get();
    assertNull(blockContainer);
    downloadService.setDownloadSuccess(true);
    blockContainer = blockQueueProvider.get();
    assertNotNull(blockContainer);
    assertEquals(blockContainer.getBlock(), block);
    assertEquals(blockContainer.getStatus(), BlockContainerStatus.DOWNLOADING);
    assertEquals(0, blockQueueProvider.size());
    block = new Block();
    result = blockQueueProvider.put(new BlockContainer(block, BlockContainerStatus.RECEIVED));
    assertTrue(result);
    blockContainer = blockQueueProvider.get();
    assertNotNull(blockContainer);
    assertEquals(blockContainer.getBlock(), block);
    assertEquals(blockContainer.getStatus(), BlockContainerStatus.RECEIVED);
}
Also used : BlockContainer(io.nuls.consensus.poc.container.BlockContainer) Block(io.nuls.kernel.model.Block) Test(org.junit.Test) BaseTest(io.nuls.consensus.poc.BaseTest)

Aggregations

BlockContainer (io.nuls.consensus.poc.container.BlockContainer)8 Block (io.nuls.kernel.model.Block)4 BaseTest (io.nuls.consensus.poc.BaseTest)3 Test (org.junit.Test)3 BlockHeader (io.nuls.kernel.model.BlockHeader)1 Transaction (io.nuls.kernel.model.Transaction)1 Node (io.nuls.network.model.Node)1