diff --git a/Lib9c b/Lib9c index e79375205..a5dd5bdf9 160000 --- a/Lib9c +++ b/Lib9c @@ -1 +1 @@ -Subproject commit e7937520578e08c2dc80de9e0ad633095adbc8bf +Subproject commit a5dd5bdf928d819b063a0c193fb9608e9f84f6e9 diff --git a/NineChronicles.Headless.Tests/GraphTypes/StandaloneMutationTest.cs b/NineChronicles.Headless.Tests/GraphTypes/StandaloneMutationTest.cs index 1cd0808af..556a0deaa 100644 --- a/NineChronicles.Headless.Tests/GraphTypes/StandaloneMutationTest.cs +++ b/NineChronicles.Headless.Tests/GraphTypes/StandaloneMutationTest.cs @@ -903,14 +903,31 @@ public async Task StageTransaction() StandaloneContextFx.BlockChain = service.Swarm?.BlockChain; var pk = new PrivateKey(); - ActionBase action = new ApprovePledge + ActionBase patronPrepareAction = new PrepareRewardAssets { - PatronAddress = new PrivateKey().Address + RewardPoolAddress = MeadConfig.PatronAddress, + Assets = new List + { + 1 * Currencies.Mead, + }, }; - var tx = Transaction.Create(0, pk, BlockChain.Genesis.Hash, new[] { action.PlainValue }); + var tx = Transaction.Create(0, pk, BlockChain.Genesis.Hash, new[] { patronPrepareAction.PlainValue }); var payload = ByteUtil.Hex(tx.Serialize()); var stageTxMutation = $"mutation {{ stageTransaction(payload: \"{payload}\") }}"; var stageTxResult = await ExecuteQueryAsync(stageTxMutation); + Assert.Null(stageTxResult.Errors); + + var block = service.BlockChain.ProposeBlock(ProposerPrivateKey, null); + service.BlockChain.Append(block, GenerateBlockCommit(1, block.Hash, new List() { ProposerPrivateKey })); + + ActionBase action = new ApprovePledge + { + PatronAddress = new PrivateKey().Address + }; + tx = Transaction.Create(0, pk, BlockChain.Genesis.Hash, new[] { action.PlainValue }); + payload = ByteUtil.Hex(tx.Serialize()); + stageTxMutation = $"mutation {{ stageTransaction(payload: \"{payload}\") }}"; + stageTxResult = await ExecuteQueryAsync(stageTxMutation); var error = Assert.Single(stageTxResult.Errors!); Assert.Contains("gas", error.Message); } diff --git a/NineChronicles.Headless/ArenaParticipantsWorker.cs b/NineChronicles.Headless/ArenaParticipantsWorker.cs index 93e3e6e98..c31d7f792 100644 --- a/NineChronicles.Headless/ArenaParticipantsWorker.cs +++ b/NineChronicles.Headless/ArenaParticipantsWorker.cs @@ -218,7 +218,7 @@ public static List GetArenaParticipants(IWorldState worldState { var (avatarAddr, score, rank) = tuple; var runeStates = worldState.GetRuneState(avatarAddr, out _); - var avatar = worldState.GetAvatarState(avatarAddr); + var avatar = worldState.GetAvatarState(avatarAddr, getWorldInformation: false, getQuestList: false); var itemSlotState = worldState.GetLegacyState(ItemSlotState.DeriveAddress(avatarAddr, BattleType.Arena)) is List itemSlotList