public override int Run(string[] remainingArguments)
        {
            if (RemainingArgumentsCount != 1)
            {
                throw new ArgumentException("Please provide the path to the template file to parse.");
            }

            _templateFile = remainingArguments[0];

            if (!File.Exists(_templateFile))
            {
                throw new ArgumentException("Please provide a template file that exists.");
            }

            var resolver = CreateMockedAggregateBuildDeltaResolver();

            var result = resolver.CreateChangeManifestFromBuildTypeId("bt1", null, "1.2", "1.4", false, true);

            var renderer = new RazorOutputRenderer(_templateFile);

            Console.WriteLine("Running Render on File Change - Hit ENTER to EXIT.");
            if (!File.Exists(_outputFilename ?? "Output.html"))
            {
                TryToRender(renderer, result, String.Format("{0} - Rendering on first run...", DateTime.Now));
            }

            var watcher = new FileSystemWatcher
            {
                Path   = Path.GetDirectoryName(Path.GetFullPath(_templateFile)),
                Filter = Path.GetFileName(_templateFile),
                EnableRaisingEvents = true,
                NotifyFilter        = NotifyFilters.LastWrite | NotifyFilters.Size | NotifyFilters.CreationTime
            };

            watcher.Changed += (o, e) => TryToRender(renderer, result, "Detected template has changed, running renderer...");

            Console.Read();
            return(0);
        }
        public void Test()
        {
            var result = new RazorOutputRenderer(@".\templates\text.cshtml").Render(CreateChangeManifest());

            Assert.True(true);//Giddyup.
        }
Example #3
0
        public void CanRenderSimpleTemplate()
        {
            var result = new RazorOutputRenderer(@".\templates\text.cshtml").Render(TestHelpers.CreateSimpleChangeManifest());

            Assert.True(result.ToString(CultureInfo.InvariantCulture).StartsWith("  Version"));//Giddyup.
        }