예제 #1
0
 public void JsonSettingsContentTest()
 {
     JsonController.Initialize();
     Assert.IsTrue(AppSettings.UserLists.Moderators is not null);
     Assert.IsTrue(AppSettings.UserLists.Owners is not null);
     Assert.IsTrue(AppSettings.UserLists.SecretUsers is not null);
     Assert.IsTrue(AppSettings.UserLists.IgnoredUsers is not null);
 }
예제 #2
0
 public void AppSettingsCompletePropertiesTest()
 {
     JsonController.Initialize();
     PropertyInfo[] properties = typeof(AppSettings).GetProperties();
     properties.ForEach(p =>
     {
         Assert.IsNotNull(p.GetValue(null, null));
     });
 }
예제 #3
0
 public void AfkCommandCompletenessTestFromJson()
 {
     JsonController.Initialize();
     AppSettings.CommandList.AfkCommands.ForEach(cmd =>
     {
         AfkCommandType type = ((AfkCommandType[])Enum.GetValues(typeof(AfkCommandType))).SingleOrDefault(c => c.ToString().ToLower() == cmd.Name);
         Assert.IsNotNull(type);
     });
 }
예제 #4
0
 public void AfkCommandCompletenessTestFromEnum()
 {
     JsonController.Initialize();
     ((AfkCommandType[])Enum.GetValues(typeof(AfkCommandType))).ForEach(type =>
     {
         AfkCommand command = AppSettings.CommandList[type];
         Assert.IsNotNull(command);
     });
 }
예제 #5
0
    private string CreateReadMe()
    {
        JsonController.Initialize();
        StringBuilder builder = new();

        builder.Append($"<h1>{_title}</h1><h2>{_header1}</h2>");
        _header1Text.ForEach(h => builder.Append($"{h}<br/>"));
        builder.Append("<br/><table><tr>");
        _cmdTableHeader.ForEach(h => builder.Append($"<th>{h}</th>"));
        builder.Append("<tr/>");
        AppSettings.CommandList.Commands.OrderBy(c => c.Name).ForEach(c =>
        {
            if (c.Document)
            {
                builder.Append($"<tr><td>{c.Name}</td><td><table>");
                c.Alias.ForEach(a => builder.Append($"<tr><td>{a}</td></tr>"));
                builder.Append("</table></td><td><table>");
                for (int i = 0; i < c.Parameter.Count; i++)
                {
                    builder.Append($"<tr><td>{c.Parameter[i]}</td><td>{c.Description[i]}</td></tr>");
                }
                builder.Append("</table></td></tr>");
            }
        });
        builder.Append($"</table><h2>{_header2}</h2><table><tr>");
        _afkCmdTableHeader.ForEach(h => builder.Append($"<th>{h}</th>"));
        builder.Append("</tr>");
        AppSettings.CommandList.AfkCommands.OrderBy(c => c.Name).ForEach(c =>
        {
            builder.Append($"<tr><td>{c.Name}</td><td><table>");
            c.Alias.ForEach(a => builder.Append($"<tr><td>{a}</td></tr>"));
            builder.Append($"</table></td>");
            for (int i = 0; i < c.Parameter.Count; i++)
            {
                builder.Append($"<td>{c.Parameter[i]}</td><td>{c.Description[i]}</td>");
            }
            builder.Append("</td></tr>");
        });
        builder.Append("</table>");
        return(builder.ToString());
    }
예제 #6
0
    private static void Main(string[] args)
    {
        Console.Title          = "OkayegTeaTime";
        Console.OutputEncoding = Encoding.UTF8;

        JsonController.Initialize();

        TwitchBot twitchBot;

        if (args.Length > 0)
        {
            twitchBot = new(args.ToList());
        }
        else
        {
            twitchBot = new();
        }
        twitchBot.Connect();

        while (_running)
        {
            Thread.Sleep(1000);
        }
    }
예제 #7
0
 public static void ReloadJsonFiles()
 {
     JsonController.Initialize();
 }
예제 #8
0
 public void JsonCommmandsContentTest()
 {
     JsonController.Initialize();
     Assert.IsTrue(AppSettings.CommandList.AfkCommands is not null);
     Assert.IsTrue(AppSettings.CommandList.Commands is not null);
 }