From f729490c6b92c55d4e1e8482927345252af7fcd4 Mon Sep 17 00:00:00 2001 From: Lex Berezhny Date: Fri, 23 Apr 2021 10:39:53 -0400 Subject: [PATCH] pending claims ordered towards top in claim_list --- lbry/wallet/database.py | 2 +- .../blockchain/test_claim_commands.py | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lbry/wallet/database.py b/lbry/wallet/database.py index 7950c0474..24a8e1d75 100644 --- a/lbry/wallet/database.py +++ b/lbry/wallet/database.py @@ -1020,7 +1020,7 @@ class Database(SQLiteMixin): if 'order_by' not in constraints or constraints['order_by'] == 'height': constraints['order_by'] = [ - "tx.height=0 DESC", "tx.height DESC", "tx.position DESC", "txo.position" + "tx.height in (0, -1) DESC", "tx.height DESC", "tx.position DESC", "txo.position" ] elif constraints.get('order_by', None) == 'none': del constraints['order_by'] diff --git a/tests/integration/blockchain/test_claim_commands.py b/tests/integration/blockchain/test_claim_commands.py index 014f18211..8d62777bd 100644 --- a/tests/integration/blockchain/test_claim_commands.py +++ b/tests/integration/blockchain/test_claim_commands.py @@ -984,6 +984,22 @@ class ClaimCommands(ClaimTestCase): self.assertEqual('0.0', claims[0]['received_tips']) self.assertEqual('0.0', claims[1]['received_tips']) + async def stream_update_and_wait(self, claim_id, **kwargs): + tx = await self.daemon.jsonrpc_stream_update(claim_id, **kwargs) + await self.ledger.wait(tx) + + async def test_claim_list_pending_edits_ordering(self): + stream5_id = self.get_claim_id(await self.stream_create('five')) + stream4_id = self.get_claim_id(await self.stream_create('four')) + stream3_id = self.get_claim_id(await self.stream_create('three')) + stream2_id = self.get_claim_id(await self.stream_create('two')) + stream1_id = self.get_claim_id(await self.stream_create('one')) + await self.assertClaimList([stream1_id, stream2_id, stream3_id, stream4_id, stream5_id]) + await self.stream_update_and_wait(stream4_id, title='foo') + await self.assertClaimList([stream4_id, stream1_id, stream2_id, stream3_id, stream5_id]) + await self.stream_update_and_wait(stream3_id, title='foo') + await self.assertClaimList([stream4_id, stream3_id, stream1_id, stream2_id, stream5_id]) + class ChannelCommands(CommandTestCase):