コード例 #1
0
 public GetPublishRepo(BuildTaskDefinition buildTaskDefinition)
 {
     if (!buildTaskDefinition.Settings.ContainsKey("url"))
     {
         throw new InvalidOperationException("You must include a 'url' in the settings to use the GetPublishRepo build task.");
     }
     url = buildTaskDefinition.Settings["url"] as String;
 }
コード例 #2
0
 public AddGithubCname(BuildTaskDefinition taskDefinition)
 {
     if (!taskDefinition.Settings?.ContainsKey("host") == true)
     {
         throw new InvalidOperationException("You must include a 'host' setting to use the AddGithubCname task.");
     }
     host = taskDefinition.Settings["host"] as String;
 }
コード例 #3
0
        public void RoundRobin()
        {
            MockRoundRobinSiteBuilder();
            var taskDefinition = new BuildTaskDefinition();
            var fileName       = $"{System.Reflection.MethodBase.GetCurrentMethod().Name}-web.config";

            TestConfig(taskDefinition, fileName);
        }
コード例 #4
0
        public CreateIISWebConfig(BuildTaskDefinition definition)
        {
            if (definition.Settings?.ContainsKey("redirectToHttps") == true)
            {
                redirectToHttps = definition.Settings["redirectToHttps"] as bool? == true;
            }

            if (definition.Settings?.ContainsKey("cacheControlMaxAge") == true)
            {
                cacheControlMaxAge = TimeSpan.ParseExact(definition.Settings["cacheControlMaxAge"] as String, "c", null);
            }
        }
コード例 #5
0
        private void TestConfig(BuildTaskDefinition taskDefinition, string fileName)
        {
            var args         = mockup.Get <BuildEventArgs>();
            var createConfig = new CreateIISWebConfig(taskDefinition);

            createConfig.Execute(args);
            var configText = outputStream.Contents;

            FileUtils.WriteTestFile(typeof(CreateIISWebConfigTests), fileName, configText);
            var expected = FileUtils.ReadTestFile(typeof(CreateIISWebConfigTests), fileName);

            Assert.Equal(expected, configText);
        }
コード例 #6
0
ファイル: PublishMenu.cs プロジェクト: threax/EdityMcEditface
 public PublishMenu(BuildTaskDefinition definition)
 {
     if (!definition.Settings.ContainsKey("menuFile"))
     {
         throw new InvalidOperationException("You must have a setting named 'menuFile' in your build task's settings that points to the menu to use the PublishMenu task.");
     }
     this.menuFile   = definition.Settings["menuFile"] as String;
     this.serializer = new JsonSerializer()
     {
         ContractResolver = new CamelCasePropertyNamesContractResolver(),
     };
     this.serializer.Converters.Add(new StringEnumConverter());
 }
コード例 #7
0
        public void RoundRobinWithHttpsRedirect()
        {
            MockRoundRobinSiteBuilder();
            var taskDefinition = new BuildTaskDefinition()
            {
                Settings = new Dictionary <string, object>()
                {
                    { "redirectToHttps", true }
                }
            };
            var fileName = $"{System.Reflection.MethodBase.GetCurrentMethod().Name}-web.config";

            TestConfig(taskDefinition, fileName);
        }
コード例 #8
0
        public void DirectNonDefaultCache()
        {
            MockDirectSiteBuilder();
            var taskDefinition = new BuildTaskDefinition()
            {
                Settings = new Dictionary <string, object>()
                {
                    { "cacheControlMaxAge", "1.23:45:56" }
                }
            };
            var fileName = $"{System.Reflection.MethodBase.GetCurrentMethod().Name}-web.config";

            TestConfig(taskDefinition, fileName);
        }
コード例 #9
0
 public PublishToGitRepo(BuildTaskDefinition taskDefinition, IGitCredentialsProvider gitCredentialsProvider)
 {
     this.gitCredentialsProvider = gitCredentialsProvider;
 }
コード例 #10
0
 public PublishToGitRepo(BuildTaskDefinition taskDefinition)
 {
 }