def METHOD_NAME(self):
    priv_key = default_config["GENESIS_PRI_KEY"]
    sender = eth_utils.encode_hex(priv_to_addr(priv_key))
    # deploy storage test contract
    bytecode_file = os.path.join(os.path.dirname(os.path.realpath(__file__)), CONTRACT_PATH)
    assert(os.path.isfile(bytecode_file))
    bytecode = open(bytecode_file).read()
    _, contractAddr = self.deploy_contract(sender, priv_key, bytecode)
    # call contract throughout a few eras
    self.call_contract(sender, priv_key, contractAddr, encode_hex_0x(keccak(b"increment()")))
    self.rpc[FULLNODE0].generate_blocks(SNAPSHOT_EPOCH_COUNT)
    self.call_contract(sender, priv_key, contractAddr, encode_hex_0x(keccak(b"increment()")))
    self.rpc[FULLNODE0].generate_blocks(SNAPSHOT_EPOCH_COUNT)
    self.call_contract(sender, priv_key, contractAddr, encode_hex_0x(keccak(b"destroy()")))
    self.rpc[FULLNODE0].generate_blocks(SNAPSHOT_EPOCH_COUNT)
    # check storage root of non-existent contract
    root_full = self.rpc[FULLNODE0].get_storage_root("0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", epoch=hex(1))
    root_light = self.rpc[LIGHTNODE].get_storage_root("0x0f572e5295c57f15886f9b263e2f6d2d6c7b5ec6", epoch=hex(1))
    assert_equal(root_full, root_light)
    # make sure the storage roots are verifiable on the light node
    latest_epoch = self.rpc[FULLNODE0].epoch_number()
    self.rpc[FULLNODE0].generate_blocks(SNAPSHOT_EPOCH_COUNT)
    sync_blocks(self.nodes, sync_state=False)
    # check storage roots
    first_available_epoch = (latest_epoch - 1) // SNAPSHOT_EPOCH_COUNT \
                            * SNAPSHOT_EPOCH_COUNT - SNAPSHOT_EPOCH_COUNT * 2 + 1
    # After latest_epoch is obtained the test generated SNAPSHOT_EPOCH_COUNT more blocks.
    first_available_epoch += SNAPSHOT_EPOCH_COUNT
    # The proof is only available since the second available snapshot.
    first_available_epoch += SNAPSHOT_EPOCH_COUNT
    for epoch in range(first_available_epoch, latest_epoch):
        root_full = self.rpc[FULLNODE0].get_storage_root(contractAddr, epoch=hex(epoch))
        root_light = self.rpc[LIGHTNODE].get_storage_root(contractAddr, epoch=hex(epoch))
        assert_equal(root_full, root_light)
        self.log.info(f"Pass (epoch {epoch})")
    self.log.info("Pass")