mirror of
https://github.com/RPCS3/discord-bot.git
synced 2025-04-12 18:03:03 +00:00
61 lines
2.6 KiB
C#
61 lines
2.6 KiB
C#
namespace CompatBot.Commands;
|
||
#if DEBUG
|
||
internal sealed class DevOnly
|
||
{
|
||
[Command("whitespacetest"), TextAlias("wst", "wstest")]
|
||
[Description("Testing discord embeds breakage for whitespaces")]
|
||
public async Task WhitespaceTest(CommandContext ctx)
|
||
{
|
||
var checkMark = "[\u00a0]";
|
||
const int width = 20;
|
||
var result = new StringBuilder($"` 1. Dots:{checkMark.PadLeft(width, '.')}`").AppendLine()
|
||
.AppendLine($"` 2. None:{checkMark,width}`");
|
||
var ln = 3;
|
||
foreach (var c in StringUtils.SpaceCharacters)
|
||
result.AppendLine($"`{ln++,2}. {(int)c:x4}:{checkMark,width}`");
|
||
#pragma warning disable 8321
|
||
static void addRandomStuff(DiscordEmbedBuilder emb)
|
||
{
|
||
emb.AddField("Random section", """
|
||
😾 lasjdf wqoieyr osdf `Vreoh Sdab` wohe `270`
|
||
🤔 salfhiosfhsero hskfh shufwei oufhwehw e wkihrwe h
|
||
ℹ️ sakfjas f hs `ASfhewighehw safds` asfw
|
||
🔮 ¯\\\_(ツ)\_/¯
|
||
""", false);
|
||
}
|
||
#pragma warning restore 8321
|
||
var embed = new DiscordEmbedBuilder()
|
||
.WithTitle("Whitespace embed test")
|
||
.WithDescription("In a perfect world all these lines would look the same, with perfectly formed columns");
|
||
|
||
var lines = result.ToString().Split(Environment.NewLine, StringSplitOptions.RemoveEmptyEntries);
|
||
var embedList = lines.BreakInEmbeds(embed, lines.Length / 2 + lines.Length % 2, "Normal");
|
||
foreach (var _ in embedList)
|
||
{
|
||
//drain the enumerable
|
||
}
|
||
embed.AddField("-", "-", false);
|
||
|
||
lines = result.ToString().Replace(' ', StringUtils.Nbsp).Split(Environment.NewLine, StringSplitOptions.RemoveEmptyEntries);
|
||
embedList = lines.BreakInEmbeds(embed, lines.Length / 2 + lines.Length % 2, "Non-breakable spaces");
|
||
foreach (var _ in embedList)
|
||
{
|
||
//drain the enumerable
|
||
}
|
||
await ctx.Channel.SendMessageAsync(embed: embed).ConfigureAwait(false);
|
||
}
|
||
|
||
[Command("buttons")]
|
||
[Description("Buttons test")]
|
||
public async Task Buttons(CommandContext ctx)
|
||
{
|
||
var builder = new DiscordMessageBuilder()
|
||
.WithContent("Regular button vs emoji button")
|
||
.AddComponents(
|
||
new DiscordButtonComponent(DiscordButtonStyle.Primary, "pt", "✅ Regular"),
|
||
new DiscordButtonComponent(DiscordButtonStyle.Primary, "pe", "Emoji", emoji: new(DiscordEmoji.FromUnicode("✅")))
|
||
);
|
||
await ctx.RespondAsync(builder).ConfigureAwait(false);
|
||
}
|
||
}
|
||
#endif |