public void JsonFormat_CommentJson_Allowed()
        {
            var json     = $@"
{{
  // this is destination
  ""destination"": ""{_destination}"",
  // this is pattern
  ""pattern"": ""{_pattern}"",
  // this is excludes
  ""excludes"": [
    ""{_excludes[0]}"",
    ""{_excludes[1]}"",
  ],
  // this is exclude_folders
  ""exclude_folders"": [
    ""{_excludeFolders[0]}"",
    ""{_excludeFolders[1]}"",
  ]
}}";
            var settings = CopySettings.LoadJson(json);

            Assert.Equal(_destination, settings.Destination);
            Assert.Equal(_pattern, settings.Pattern);
            Assert.Equal(_excludes, settings.Excludes);
            Assert.Equal(_excludeFolders, settings.ExcludeFolders);
        }
        public void Empty_Json_Fail()
        {
            var json = $@"
{{
}}";

            Assert.Throws <ArgumentNullException>(() => CopySettings.LoadJson(json));
        }
        public void Null_Excludes_ExcludeFolders_Fail()
        {
            var json = $@"
{{
  ""destination"": ""{_destination}"",
  ""pattern"": ""{_pattern}""
}}";

            Assert.Throws <ArgumentNullException>(() => CopySettings.LoadJson(json));
        }
Exemple #4
0
        public void InitCommandTest()
        {
            var expected = CopySettings.LoadJson(CopySettings.GetTemplateJson());

            var program = new Program();

            program.Init(_projectDir);
            Assert.True(File.Exists(_settings));

            var generated = File.ReadAllText(_settings, Encoding.UTF8);
            var actual    = CopySettings.LoadJson(generated);

            Assert.Equal(expected.Destination, actual.Destination);
            Assert.Equal(expected.Pattern, actual.Pattern);
            Assert.Equal(expected.Excludes, actual.Excludes);
            Assert.Equal(expected.ExcludeFolders, actual.ExcludeFolders);
        }
        public void Null_Destination_Fail()
        {
            var json = $@"
{{
  ""pattern"": ""{_pattern}"",
  ""excludes"": [
    ""{_excludes[0]}"",
    ""{_excludes[1]}""
  ],
  ""exclude_folders"": [
    ""{_excludeFolders[0]}"",
    ""{_excludeFolders[1]}""
  ]
}}";

            Assert.Throws <ArgumentNullException>(() => CopySettings.LoadJson(json));
        }
        public void Null_Excludes_Allowed()
        {
            var json     = $@"
{{
  ""destination"": ""{_destination}"",
  ""pattern"": ""{_pattern}"",
  ""exclude_folders"": [
    ""{_excludeFolders[0]}"",
    ""{_excludeFolders[1]}""
  ]
}}";
            var settings = CopySettings.LoadJson(json);

            Assert.Equal(_destination, settings.Destination);
            Assert.Equal(_pattern, settings.Pattern);
            Assert.Equal(Array.Empty <string>(), settings.Excludes);
            Assert.Equal(_excludeFolders, settings.ExcludeFolders);
        }
        public void Null_Pattern_Allowed()
        {
            var json     = $@"
{{
  ""destination"": ""{_destination}"",
  ""excludes"": [
    ""{_excludes[0]}"",
    ""{_excludes[1]}""
  ],
  ""exclude_folders"": [
    ""{_excludeFolders[0]}"",
    ""{_excludeFolders[1]}""
  ]
}}";
            var settings = CopySettings.LoadJson(json);

            Assert.Equal(_destination, settings.Destination);
            Assert.Equal("*", settings.Pattern);
            Assert.Equal(_excludes, settings.Excludes);
            Assert.Equal(_excludeFolders, settings.ExcludeFolders);
        }
        public void FullPath_Destination_Allow()
        {
            var json     = $@"
{{
  ""destination"": ""{_destination}"",
  ""pattern"": ""{_pattern}"",
  ""excludes"": [
    ""{_excludes[0]}"",
    ""{_excludes[1]}""
  ],
  ""exclude_folders"": [
    ""{_excludeFolders[0]}"",
    ""{_excludeFolders[1]}""
  ]
}}";
            var settings = CopySettings.LoadJson(json);

            Assert.Equal(CopySettings.SafeJsonStringReplace(_destination), settings.Destination);
            Assert.Equal("*", settings.Pattern);
            Assert.Equal(_excludes, settings.Excludes);
            Assert.Equal(_excludeFolders, settings.ExcludeFolders);
        }