Example #1
0
        public void Test_Install()
        {
            MoveToTemporaryDirectory();

            var random = new Random();

            var settings = new CLISettings();

            settings.SmtpServer      = "smtp.myserver" + random.Next(1000, 9000) + ".com";
            settings.SmtpUsername    = "******" + random.Next(1000, 9000);
            settings.SmtpPassword    = "******" + random.Next(1000, 9000);
            settings.Email           = "me@mydomain" + random.Next(1000, 9000) + ".com";
            settings.IsMockSystemCtl = true;

            var context = new CLIContext(Environment.CurrentDirectory, settings);

            var installer = new ArduinoPlugAndPlayInstaller(context);

            installer.Verifier.SystemCtl = new MockSystemCtlHelper(context);

            installer.EnsureInstallDirectoryExists();

            var installPath = installer.GetInstallPath();

            //File.WriteAllText(Path.Combine(installPath, "is-mock-systemctl.txt"), "true");

            installer.Install();

            //var starter = new ProcessStarter();

            //starter.StartBash("sudo systemctl disable arduino-plug-and-play.service");
            //starter.StartBash("sudo systemctl stop arduino-plug-and-play.service");
        }
Example #2
0
        static int Main(string[] args)
        {
            IConfiguration config = new ConfigurationBuilder()
                                    .AddJsonFile("appsettings.json", false, true)
                                    .AddJsonFile("appsettings.local.json", true, true)
                                    .Build();

            settings = new CLISettings();
            config.Bind(settings);

            var rootCommand = CreateCommands();

            return(rootCommand.Invoke(args));
        }
        public void Test_Install()
        {
            MoveToTemporaryDirectory();

            PullDirectoryFromProject("/");

            File.WriteAllText(Path.GetFullPath("is-mock-systemctl.txt"), "true");

            var settings = new CLISettings();

            var context   = new CLIContext(Environment.CurrentDirectory, settings);
            var installer = new SupervisorInstaller(context);

            installer.Verifier.SystemCtl = new MockSystemCtlHelper(context);

            installer.Install();
        }
Example #4
0
        public void Test_Initialize_IndexPath()
        {
            MoveToTemporaryDirectory();

            var startingDirectory = Environment.CurrentDirectory;

            var settings = new CLISettings();

            var context = new CLIContext(startingDirectory, settings);
            var paths   = new PathHelper(context);

            paths.Initialize(startingDirectory);

            var expectedParentPath = Path.GetFullPath(Environment.CurrentDirectory + "/../../").TrimEnd('/');

            Assert.AreEqual(expectedParentPath, context.ParentDirectory, "Parent path is not set correctly.");

            var expectedIndexDirectory = Environment.CurrentDirectory;

            Assert.AreEqual(expectedIndexDirectory, context.IndexDirectory, "Index directory is not set correctly.");
        }
Example #5
0
        public void Test_Install()
        {
            MoveToTemporaryDirectory();

            PullDirectoryFromProject("scripts/apps/Serial1602ShieldSystemUIController/");

            var random = new Random();

            var settings = new CLISettings();

            settings.MqttUsername = "******" + random.Next(1000, 9000);
            settings.MqttPassword = "******" + random.Next(1000, 9000);
            settings.MqttHost     = "10.0.0." + random.Next(0, 240);

            settings.SmtpServer   = "smtp.myserver" + random.Next(1000, 9000) + ".com";
            settings.SmtpUsername = "******" + random.Next(1000, 9000);
            settings.SmtpPassword = "******" + random.Next(1000, 9000);
            settings.Email        = "me@mydomain" + random.Next(1000, 9000) + ".com";

            var context = new CLIContext(Environment.CurrentDirectory, settings);
            var uiControllerInstaller = new UIControllerInstaller(context);

            uiControllerInstaller.Install();
        }
Example #6
0
        public void Test_Install()
        {
            MoveToTemporaryDirectory();

            PullDirectoryFromProject("scripts/apps/BridgeArduinoSerialToMqttSplitCsv/");

            var random = new Random();

            var settings = new CLISettings();

            settings.MqttUsername = "******" + random.Next(1000, 9000);
            settings.MqttPassword = "******" + random.Next(1000, 9000);
            settings.MqttHost     = "10.0.0." + random.Next(0, 240);

            settings.SmtpServer   = "smtp.myserver" + random.Next(1000, 9000) + ".com";
            settings.SmtpUsername = "******" + random.Next(1000, 9000);
            settings.SmtpPassword = "******" + random.Next(1000, 9000);
            settings.Email        = "me@mydomain" + random.Next(1000, 9000) + ".com";

            var context             = new CLIContext(Environment.CurrentDirectory, settings);
            var mqttBridgeInstaller = new MqttBridgeInstaller(context);

            mqttBridgeInstaller.Install();
        }
        public void Test_Install()
        {
            MoveToTemporaryDirectory();

            PullFileFromProject("scripts/docker/mosquitto/data/mosquitto.conf");

            var random = new Random();

            var settings = new CLISettings();

            settings.MqttUsername = "******" + random.Next(1000, 9000);
            settings.MqttPassword = "******" + random.Next(1000, 9000);

            var context            = new CLIContext(Environment.CurrentDirectory, settings);
            var mosquittoInstaller = new MosquittoInstaller(context);

            mosquittoInstaller.Docker          = new MockDockerHelper(context);
            mosquittoInstaller.Verifier.Docker = mosquittoInstaller.Docker;
            mosquittoInstaller.SystemCtl       = new MockSystemCtlHelper(context);

            mosquittoInstaller.Install();

            mosquittoInstaller.Docker.Remove("mosquitto", true);
        }
Example #8
0
        static void Main(string[] args)
        {
            // Discord v CLI
            var settings = new CLISettings();


            var ticTacToeCommand =
                new botCommands.TicTacToeCommand(new TicTacToeManager <char>(), settings.TranslationDict);

            var commands = new Dictionary <string[], botCommands.ICommand>
            {
                { new [] { "ping" }, new botCommands.PingCommand() },
                { new [] { "tic", "tac", "toe" }, ticTacToeCommand }
            };

            var configGetter    = new JsonConfigGetter(settings.ConfigPath, settings.ConfigType);
            var config          = configGetter.GetConfig();
            var commandProvider = new commandHandler.CommandProvider(commands, config.Prefix);

            object backend;

            // TODO - CHANGE THIS HORRIBLE THING
            try
            {
                backend = Activator.CreateInstance(settings.Backend, config);
            }
            catch (Exception e)
            {
                backend = Activator.CreateInstance(settings.Backend);
            }

            var     botType = typeof(Bot <>).MakeGenericType(settings.BackendType);
            dynamic bot     = Activator.CreateInstance(botType, commandProvider, backend, config);

            bot.Run().ConfigureAwait(false).GetAwaiter().GetResult();
        }