Exception handling for mint function

This commit is contained in:
thatben 2025-08-01 08:28:17 +02:00
parent 85c0f6f83b
commit d0530be323
No known key found for this signature in database
GPG Key ID: 62C543548433D43E
2 changed files with 21 additions and 10 deletions

View File

@ -173,7 +173,7 @@ namespace DistTestCore
if (!string.IsNullOrEmpty(result.Message)) if (!string.IsNullOrEmpty(result.Message))
{ {
Log(result.Message); Log(result.Message);
Log($"{result.StackTrace}"); Log($"{Environment.NewLine}{result.StackTrace}");
} }
} }

View File

@ -60,7 +60,7 @@ namespace BiblioTech.Commands
} }
var sent = await TransferTestTokens(contracts, addr, report); var sent = await TransferTestTokens(contracts, addr, report);
var minted = MintTestTokens(contracts, addr, report); var minted = await MintTestTokens(contracts, addr, report);
return new Transaction<TestToken>(sent.Item1, minted.Item1, $"{sent.Item2},{minted.Item2}"); return new Transaction<TestToken>(sent.Item1, minted.Item1, $"{sent.Item2},{minted.Item2}");
} }
@ -78,13 +78,24 @@ namespace BiblioTech.Commands
return new Transaction<Ether>(eth, 0.Eth(), transaction); return new Transaction<Ether>(eth, 0.Eth(), transaction);
} }
private (TestToken, string) MintTestTokens(ICodexContracts contracts, EthAddress addr, List<string> report) private async Task<(TestToken, string)> MintTestTokens(ICodexContracts contracts, EthAddress addr, List<string> report)
{ {
if (Program.Config.MintTT < 1) return (0.TstWei(), string.Empty); var nothing = (0.TstWei(), string.Empty);
var tokens = Program.Config.MintTT.TstWei(); if (Program.Config.MintTT < 1) return nothing;
var transaction = contracts.MintTestTokens(addr, tokens);
report.Add($"Minted {tokens} {FormatTransactionLink(transaction)}"); try
return (tokens, transaction); {
var tokens = Program.Config.MintTT.TstWei();
var transaction = contracts.MintTestTokens(addr, tokens);
report.Add($"Minted {tokens} {FormatTransactionLink(transaction)}");
return (tokens, transaction);
}
catch (Exception ex)
{
report.Add("Minter: I'm sorry! Something went unexpectedly wrong. (Admins have been notified)");
await Program.AdminChecker.SendInAdminChannel($"{nameof(MintCommand)} {nameof(MintTestTokens)} failed with: {ex}");
}
return nothing;
} }
private async Task<(TestToken, string)> TransferTestTokens(ICodexContracts contracts, EthAddress addr, List<string> report) private async Task<(TestToken, string)> TransferTestTokens(ICodexContracts contracts, EthAddress addr, List<string> report)
@ -113,8 +124,8 @@ namespace BiblioTech.Commands
} }
catch (Exception ex) catch (Exception ex)
{ {
report.Add("I'm sorry! Something went unexpectedly wrong. (Admins have been notified)"); report.Add("Transfer: I'm sorry! Something went unexpectedly wrong. (Admins have been notified)");
await Program.AdminChecker.SendInAdminChannel($"{nameof(MintCommand)} failed with: {ex}"); await Program.AdminChecker.SendInAdminChannel($"{nameof(MintCommand)} {nameof(TransferTestTokens)} failed with: {ex}");
} }
return nothing; return nothing;
} }