public void RunBeforeScenario()
        {
            TestDirectory = new FileSystem.TempDirectory();
            System.IO.Directory.CreateDirectory(TestDirectory.Append("Testing"));
            System.IO.Directory.CreateDirectory(TestDirectory.Append("Reference"));
            foreach(var file in System.IO.Directory.GetFiles(TestContext.CurrentContext.TestDirectory))
            {
                System.IO.File.Copy(file, TestDirectory.Append(string.Format("Testing\\{0}", System.IO.Path.GetFileName(file))));
            }

            System.IO.File.Move(TestDirectory.Append("Testing\\Mono.TextTemplating.Utility.dll"), TestDirectory.Append("Reference\\Mono.TextTemplating.Utility.dll"));

            TemplateFileName = TestDirectory.Append(string.Format("Testing\\{0}.tt", System.Guid.NewGuid().ToString().Replace("-", "")));
            OutputFileName = TestDirectory.Append(string.Format("Testing\\{0}.cs", System.IO.Path.GetFileNameWithoutExtension(TemplateFileName)));
        }
        public void BeforeRun()
        {
            TestDirectory = new FileSystem.TempDirectory();

            SetupExecutable();
        }
        public void RunBeforeScenario()
        {
            TestDirectory = new FileSystem.TempDirectory();
            DoesOutputExist = false;
            foreach(var file in System.IO.Directory.GetFiles(TestContext.CurrentContext.TestDirectory))
            {
                System.IO.File.Copy(file, TestDirectory.Append(System.IO.Path.GetFileName(file)));
            }

            string net40Dir = System.IO.Directory.GetDirectories(@"C:\Windows\Microsoft.Net\Framework", "v4*").First();
            MSBuild = System.IO.Directory.GetFiles(net40Dir, "msbuild.exe", System.IO.SearchOption.AllDirectories).First();

            if (string.IsNullOrWhiteSpace(MSBuild))
                throw new System.Exception("Unable to find an instance of the MSBuild.exe executable.");
        }