mirror of
https://github.com/LBRYFoundation/lbry-sdk.git
synced 2025-08-29 16:31:25 +00:00
publish integration test works
This commit is contained in:
parent
1eaac35a3e
commit
c544e26206
3 changed files with 32 additions and 8 deletions
|
@ -371,19 +371,29 @@ class Daemon(AuthJSONRPCServer):
|
||||||
if not file_path:
|
if not file_path:
|
||||||
stream_hash = yield self.storage.get_stream_hash_for_sd_hash(
|
stream_hash = yield self.storage.get_stream_hash_for_sd_hash(
|
||||||
claim_dict['stream']['source']['source'])
|
claim_dict['stream']['source']['source'])
|
||||||
claim_out = yield publisher.publish_stream(name, bid, claim_dict, stream_hash, claim_address,
|
tx = yield publisher.publish_stream(name, bid, claim_dict, stream_hash, claim_address,
|
||||||
change_address)
|
change_address)
|
||||||
else:
|
else:
|
||||||
claim_out = yield publisher.create_and_publish_stream(name, bid, claim_dict, file_path,
|
tx = yield publisher.create_and_publish_stream(name, bid, claim_dict, file_path,
|
||||||
claim_address, change_address)
|
claim_address, change_address)
|
||||||
if conf.settings['reflect_uploads']:
|
if conf.settings['reflect_uploads']:
|
||||||
d = reupload.reflect_file(publisher.lbry_file)
|
d = reupload.reflect_file(publisher.lbry_file)
|
||||||
d.addCallbacks(lambda _: log.info("Reflected new publication to lbry://%s", name),
|
d.addCallbacks(lambda _: log.info("Reflected new publication to lbry://%s", name),
|
||||||
log.exception)
|
log.exception)
|
||||||
self.analytics_manager.send_claim_action('publish')
|
self.analytics_manager.send_claim_action('publish')
|
||||||
log.info("Success! Published to lbry://%s txid: %s nout: %d", name, claim_out['txid'],
|
nout = 0
|
||||||
claim_out['nout'])
|
script = tx.outputs[nout].script
|
||||||
defer.returnValue(claim_out)
|
log.info("Success! Published to lbry://%s txid: %s nout: %d", name, tx.hex_id.decode(), nout)
|
||||||
|
defer.returnValue({
|
||||||
|
"success": True,
|
||||||
|
"txid": tx.hex_id.decode(),
|
||||||
|
"nout": nout,
|
||||||
|
"tx": hexlify(tx.raw),
|
||||||
|
"fee": str(Decimal(tx.fee) / COIN),
|
||||||
|
"claim_id": tx.get_claim_id(0),
|
||||||
|
"value": hexlify(script.values['claim']),
|
||||||
|
"claim_address": self.ledger.hash160_to_address(script.values['pubkey_hash'])
|
||||||
|
})
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def _resolve(self, *uris, **kwargs):
|
def _resolve(self, *uris, **kwargs):
|
||||||
|
|
|
@ -7,6 +7,7 @@ from torba.wallet import WalletStorage
|
||||||
|
|
||||||
from lbryschema.uri import parse_lbry_uri
|
from lbryschema.uri import parse_lbry_uri
|
||||||
from lbryschema.error import URIParseError
|
from lbryschema.error import URIParseError
|
||||||
|
from lbryschema.claim import ClaimDict
|
||||||
|
|
||||||
from .ledger import MainNetLedger # pylint: disable=unused-import
|
from .ledger import MainNetLedger # pylint: disable=unused-import
|
||||||
from .account import generate_certificate
|
from .account import generate_certificate
|
||||||
|
@ -148,8 +149,9 @@ class LbryWalletManager(BaseWalletManager):
|
||||||
return defer.succeed([])
|
return defer.succeed([])
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def claim_name(self, name, amount, claim, certificate=None, claim_address=None):
|
def claim_name(self, name, amount, claim_dict, certificate=None, claim_address=None):
|
||||||
account = self.default_account
|
account = self.default_account
|
||||||
|
claim = ClaimDict.load_dict(claim_dict)
|
||||||
if not claim_address:
|
if not claim_address:
|
||||||
claim_address = yield account.receiving.get_or_create_usable_address()
|
claim_address = yield account.receiving.get_or_create_usable_address()
|
||||||
if certificate:
|
if certificate:
|
||||||
|
|
|
@ -10,7 +10,7 @@ lbryschema.BLOCKCHAIN_NAME = 'lbrycrd_regtest'
|
||||||
from lbrynet import conf as lbry_conf
|
from lbrynet import conf as lbry_conf
|
||||||
from lbrynet.daemon.Daemon import Daemon
|
from lbrynet.daemon.Daemon import Daemon
|
||||||
from lbrynet.wallet.manager import LbryWalletManager
|
from lbrynet.wallet.manager import LbryWalletManager
|
||||||
from lbrynet.daemon.Components import WalletComponent, FileManager, SessionComponent
|
from lbrynet.daemon.Components import WalletComponent, FileManager, SessionComponent, DatabaseComponent
|
||||||
from lbrynet.file_manager.EncryptedFileManager import EncryptedFileManager
|
from lbrynet.file_manager.EncryptedFileManager import EncryptedFileManager
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,6 +21,9 @@ class FakeAnalytics:
|
||||||
def shutdown(self):
|
def shutdown(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def send_claim_action(self, action):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class FakeSession:
|
class FakeSession:
|
||||||
storage = None
|
storage = None
|
||||||
|
@ -64,6 +67,10 @@ class CommandTestCase(IntegrationTestCase):
|
||||||
file_manager.file_manager = EncryptedFileManager(session_component.session, True)
|
file_manager.file_manager = EncryptedFileManager(session_component.session, True)
|
||||||
file_manager._running = True
|
file_manager._running = True
|
||||||
self.daemon.component_manager.components.add(file_manager)
|
self.daemon.component_manager.components.add(file_manager)
|
||||||
|
storage_component = DatabaseComponent(self.daemon.component_manager)
|
||||||
|
await d2f(storage_component.start())
|
||||||
|
self.daemon.component_manager.components.add(storage_component)
|
||||||
|
self.daemon.storage = storage_component.storage
|
||||||
|
|
||||||
|
|
||||||
class ChannelNewCommandTests(CommandTestCase):
|
class ChannelNewCommandTests(CommandTestCase):
|
||||||
|
@ -95,5 +102,10 @@ class PublishCommandTests(CommandTestCase):
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def test_publish(self):
|
def test_publish(self):
|
||||||
result = yield self.daemon.jsonrpc_publish('foo', 1)
|
result = yield self.daemon.jsonrpc_publish('foo', 1, sources={
|
||||||
|
'version': '_0_0_1',
|
||||||
|
'sourceType': 'lbry_sd_hash',
|
||||||
|
'source': '0' * 96,
|
||||||
|
'contentType': ''
|
||||||
|
})
|
||||||
print(result)
|
print(result)
|
||||||
|
|
Loading…
Add table
Reference in a new issue