Example #1
0
        private static void Main()
        {
            Console.Title = "Files watcher";

            var builder = new ConfigurationBuilder()
                          .SetBasePath(Directory.GetCurrentDirectory())
                          .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);

            var config = builder.Build();

            Console.ForegroundColor = ConsoleColor.DarkGreen;
            Log.ShowLog("---------------Start monitoring folder---------------");
            Log.ShowLog($"Folder path: { config["FolderPath"] } " + Environment.NewLine +
                        $"Integration svn path: { config["IntegrationSvnPath"] } " + Environment.NewLine +
                        $"Sound designer svn path: { config["SoundDesignerSvnPath"] } ");

            var svnCredential = new NetworkCredential(config["SoundDesignerRepositoryUsername"], config["SoundDesignerRepositoryPassword"]);
            var svnClient     = new SharpSvnClient(svnCredential);

            try
            {
                var watcher = new Watcher(config, svnClient);
                watcher.RunWatcher();
            }
            catch (Exception exception)
            {
                Log.ShowException(exception.Message);
            }

            Console.ReadKey();
        }
        public void BeforeEachTest()
        {
            var sharpSvnClient = new SharpSvnClient(new NetworkCredential(), LogFor <SharpSvnClient>());

            _workerWrapper = new TestEventWorkerWrapper(new FileSystemEventWorker(sharpSvnClient, LogFor <FileSystemEventWorker>()), LogFor <TestEventWorkerWrapper>());
            _manager       = new FileMonitorManager(new FileSystemEventPoller(_workerWrapper, LogFor <FileSystemEventPoller>()), LogFor <FileMonitorManager>());

            var repositoryUrl = TestRepositoryHelper.RepositoryUrl;

            TestRepositoryHelper.SetupRepository();

            //Create folders
            _testFolders = TestFileSystemHelper.CreateAndGetTestFolders(repositoryUrl);
            foreach (var folder in _testFolders)
            {
                TestRepositoryHelper.CreateDirectoryInRepository(folder.RepositoryUrl);
                if (!sharpSvnClient.SvnCheckOut(folder.RepositoryUrl, folder.Path))
                {
                    throw new InvalidOperationException("Failed to checkout " + folder.Path + ".");
                }
            }
        }