More of 11740

This commit is contained in:
UdjinM6 2020-02-29 22:44:29 +03:00 committed by Pasta
parent 131d8f5cf5
commit 0c3df75e62
No known key found for this signature in database
GPG Key ID: 52527BEDABE87984
2 changed files with 11 additions and 11 deletions

View File

@ -293,7 +293,7 @@ enum ServiceFlags : uint64_t {
// If this is turned off then the node will not service nor make xthin requests // If this is turned off then the node will not service nor make xthin requests
NODE_XTHIN = (1 << 4), NODE_XTHIN = (1 << 4),
// NODE_NETWORK_LIMITED means the same as NODE_NETWORK with the limitation of only // NODE_NETWORK_LIMITED means the same as NODE_NETWORK with the limitation of only
// serving the last 288 (2 day) blocks // serving the last 288 blocks
// See BIP159 for details on how this is implemented. // See BIP159 for details on how this is implemented.
NODE_NETWORK_LIMITED = (1 << 10), NODE_NETWORK_LIMITED = (1 << 10),

View File

@ -6,17 +6,17 @@ from test_framework.test_framework import BitcoinTestFramework
from test_framework.util import * from test_framework.util import *
from test_framework.mininode import * from test_framework.mininode import *
class BaseNode(P2PInterface): class BaseNode(NodeConnCB):
nServices = 0 nServices = 0
firstAddrnServices = 0 firstAddrnServices = 0
def on_version(self, message): def on_version(self, conn, message):
self.nServices = message.nServices self.nServices = message.nServices
class NodeNetworkLimitedTest(BitcoinTestFramework): class NodeNetworkLimitedTest(BitcoinTestFramework):
def set_test_params(self): def set_test_params(self):
self.setup_clean_chain = True self.setup_clean_chain = True
self.num_nodes = 1 self.num_nodes = 1
self.extra_args = [['-prune=550']] self.extra_args = [['-prune=550', '-txindex=0']]
def getSignaledServiceFlags(self): def getSignaledServiceFlags(self):
node = self.nodes[0].add_p2p_connection(BaseNode()) node = self.nodes[0].add_p2p_connection(BaseNode())
@ -46,11 +46,11 @@ class NodeNetworkLimitedTest(BitcoinTestFramework):
node.wait_for_disconnect() node.wait_for_disconnect()
def run_test(self): def run_test(self):
#NODE_BLOOM & NODE_WITNESS & NODE_NETWORK_LIMITED must now be signaled #NODE_BLOOM & NODE_NETWORK_LIMITED must now be signaled
assert_equal(self.getSignaledServiceFlags(), 1036) #1036 == 0x40C == 0100 0000 1100 assert_equal(self.getSignaledServiceFlags(), 1028) # 1028 == 0x404 == 0100 0000 0100
# | || # | |
# | |^--- NODE_BLOOM # | ^--- NODE_BLOOM
# | ^---- NODE_WITNESS # |
# ^-- NODE_NETWORK_LIMITED # ^-- NODE_NETWORK_LIMITED
#now mine some blocks over the NODE_NETWORK_LIMITED + 2(racy buffer ext.) target #now mine some blocks over the NODE_NETWORK_LIMITED + 2(racy buffer ext.) target
@ -66,10 +66,10 @@ class NodeNetworkLimitedTest(BitcoinTestFramework):
#NODE_NETWORK_LIMITED must still be signaled after restart #NODE_NETWORK_LIMITED must still be signaled after restart
self.restart_node(0) self.restart_node(0)
assert_equal(self.getSignaledServiceFlags(), 1036) assert_equal(self.getSignaledServiceFlags(), 1028)
#test the RPC service flags #test the RPC service flags
assert_equal(self.nodes[0].getnetworkinfo()['localservices'], "000000000000040c") assert_equal(self.nodes[0].getnetworkinfo()['localservices'], "0000000000000404")
# getdata a block above the NODE_NETWORK_LIMITED threshold must be possible # getdata a block above the NODE_NETWORK_LIMITED threshold must be possible
self.tryGetBlockViaGetData(blockWithinLimitedRange, False) self.tryGetBlockViaGetData(blockWithinLimitedRange, False)