Example #1
0
        static void Main(string[] args)
        {
            const string url = "http://localhost:8080";

            XmlConfiguration configuration = XmlConfiguration.LoadFrom(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\AllGreen\\AllGreen\\AllGreen.config");

            TinyIoCContainer resourceResolver = new TinyIoCContainer();

            resourceResolver.Register <IConfiguration>(configuration);
            CompositeWebResources webResources = new CompositeWebResources();
            DynamicScriptList     scriptList   = new DynamicScriptList(configuration.RootFolder, configuration.ServedFolderFilters, configuration.ExcludeServedFolderFilters, new FileSystem());

            webResources.Add(new WebServerResources(scriptList));
            webResources.Add(new FileSystemResources(configuration.RootFolder, scriptList, new FileSystem()));
            resourceResolver.Register <IWebResources>(webResources);
            resourceResolver.Register <IRunnerHub, RunnerHub>();
            resourceResolver.Register <IRunnerBroadcaster>((ioc, npo) => new RunnerBroadcaster(GlobalHost.ConnectionManager.GetHubContext <RunnerHub>().Clients));
            resourceResolver.Register <IReporter, ConsoleReporter>();

            using (WebApp.Start(url, appBuilder => new OwinStartup(resourceResolver).Configuration(appBuilder)))
            {
                System.Console.WriteLine("Server running at " + url);
                string command = "";
                while (command != "x")
                {
                    command = System.Console.ReadLine();
                    resourceResolver.Resolve <IRunnerBroadcaster>().StartAll();
                }
            }
        }
Example #2
0
        protected void Application_Startup(object sender, StartupEventArgs e)
        {
            //XmlConfiguration configuration = XmlConfiguration.LoadFrom(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\AllGreen\\AllGreen\\AllGreen.config");
            XmlConfiguration configuration = GetDummyConfig();

            TinyIoCContainer resourceResolver = new TinyIoCContainer();

            resourceResolver.Register <IConfiguration>(configuration);
            CompositeWebResources webResources = new CompositeWebResources();
            DynamicScriptList     scriptList   = new DynamicScriptList(configuration.RootFolder, configuration.ServedFolderFilters, configuration.ExcludeServedFolderFilters, new FileSystem());

            webResources.Add(new WebServerResources(scriptList));
            webResources.Add(new FileSystemResources(configuration.RootFolder, scriptList, new FileSystem()));
            resourceResolver.Register <IWebResources>(webResources);
            resourceResolver.Register <IRunnerHub, RunnerHub>();
            resourceResolver.Register <IRunnerBroadcaster>((ioc, npo) => new RunnerBroadcaster(GlobalHost.ConnectionManager.GetHubContext <RunnerHub>().Clients));
            resourceResolver.Register <IServerStarter>(new OwinServerStarter(resourceResolver));
            resourceResolver.Register <IFileViewer, ExternalFileViewer>();
            resourceResolver.Register <IFileLocationParser>(new FileLocationParser(configuration.ServerUrl, webResources));
            resourceResolver.Register <IFileLocationMapper>(new JsMapFileMapper(new FileSystem()));
            resourceResolver.Register <IClipboard>(new ClipboardProxy());

            _FileWatcher = new FileWatcher(resourceResolver, configuration.WatchedFolderFilters.Select(ff =>
                                                                                                       new FolderWatcher(Path.GetFullPath(Path.Combine(configuration.RootFolder, ff.Folder)), ff.FilePattern, ff.IncludeSubfolders)));

            MainWindow mainWindow = new MainWindow()
            {
                DataContext = new MainViewModel(resourceResolver)
            };

            mainWindow.Show();
        }
        public void GetSystemFilePathTest()
        {
            CompositeWebResources compositeWebResources = new CompositeWebResources();
            Mock <IWebResources>  webResources1Mock     = new Mock <IWebResources>();

            webResources1Mock.Setup(wr => wr.GetSystemFilePath("file1.js")).Returns("c:\resources\file1.js");
            Mock <IWebResources> webResources2Mock = new Mock <IWebResources>();

            webResources1Mock.Setup(wr => wr.GetSystemFilePath("file2.js")).Returns("c:\resources\file2.js");
            compositeWebResources.Add(webResources1Mock.Object);
            compositeWebResources.Add(webResources2Mock.Object);

            compositeWebResources.GetSystemFilePath("file1.js").Should().Be("c:\resources\file1.js");
            compositeWebResources.GetSystemFilePath("file2.js").Should().Be("c:\resources\file2.js");
            compositeWebResources.GetSystemFilePath("file3.js").Should().BeNull();
        }
        public void GetContentTest()
        {
            CompositeWebResources compositeWebResources = new CompositeWebResources();
            Mock <IWebResources>  webResources1Mock     = new Mock <IWebResources>();

            webResources1Mock.Setup(wr => wr.GetContent("file1.js")).Returns("file1 content");
            Mock <IWebResources> webResources2Mock = new Mock <IWebResources>();

            webResources1Mock.Setup(wr => wr.GetContent("file2.js")).Returns("file2 content");
            compositeWebResources.Add(webResources1Mock.Object);
            compositeWebResources.Add(webResources2Mock.Object);

            compositeWebResources.GetContent("file1.js").Should().Be("file1 content");
            compositeWebResources.GetContent("file2.js").Should().Be("file2 content");
            compositeWebResources.GetContent("file3.js").Should().BeNull();
        }