Exemplo n.º 1
0
        static void Main()
        {
            var commandArgumentsParser = new CommandArgumentsParser();
            var fileHashCalculator     = new FileHashCalculator();
            var gitHubHttpClient       = new HttpClient();

            gitHubHttpClient.BaseAddress = new Uri(GitHubRepositoriesApiConstants.BaseUri);
            gitHubHttpClient.DefaultRequestHeaders.UserAgent.ParseAdd($"{Application.ProductName} {Application.ProductVersion}");
            var releaseProvider = new GitHubRepositoryReleaseProvider(
                gitHubHttpClient,
                new GitHubRepositoryReleaseProviderSetting
            {
                OwnerName      = "yossiejs",
                RepositoryName = "AppSight.FileHashChecker",
            });
            var updateManager = new UpdateManager(
                releaseProvider,
                Application.ProductVersion);

            Application.SetHighDpiMode(HighDpiMode.SystemAware);
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1(
                                commandArgumentsParser,
                                fileHashCalculator,
                                updateManager));
        }
        public void TestParse()
        {
            var parser           = new CommandArgumentsParser();
            var args             = new[] { "C:\\path\\to\\AppSight.FileHashChecker.exe", "-h", "-f", "C:\\path\\to\\note.txt", "-t", "sha512" };
            var commandArguments = parser.Parse(args);

            Assert.Equal("C:\\path\\to\\AppSight.FileHashChecker.exe", commandArguments.ExePath);
            Assert.Equal("C:\\path\\to\\note.txt", commandArguments.Options.FilePath);
            Assert.Equal(HashType.SHA512, commandArguments.Options.HashType);
            Assert.True(commandArguments.Options.Help);
        }
        private void TestPath(string args, string expected, bool validArg, bool?readToEnd = null)
        {
            int    i = 0;
            string actual;

            Assert.Equal(validArg, CommandArgumentsParser.ParsePath(args, ref i, out actual));
            Assert.Equal(expected, actual);

            if (readToEnd != null)
            {
                Assert.Equal(readToEnd, CommandArgumentsParser.ParseTrailingTrivia(args, ref i));
            }
        }
Exemplo n.º 4
0
        public Form1(
            CommandArgumentsParser commandArgumentsParser,
            FileHashCalculator fileHashCaluculator,
            IUpdateManager updateManager)
        {
            _commandArgumentsParser = commandArgumentsParser ?? throw new ArgumentNullException(nameof(commandArgumentsParser));
            _fileHashCalculator     = fileHashCaluculator ?? throw new ArgumentNullException(nameof(fileHashCaluculator));
            _updateManager          = updateManager ?? throw new ArgumentNullException(nameof(updateManager));
            // for debugging localization
            // Thread.CurrentThread.CurrentUICulture = new CultureInfo("ja-JP");
            InitializeComponent();

            _updateManager.UpdateFound += new EventHandler <UpdateFoundEventArgs>(HandleUpdateFound);
            _resourceManager            = new ResourceManager(typeof(Form1));
        }