eac_tools 0.37.1 → 0.38.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +63 -47
- data/lib/eac_tools/version.rb +1 -1
- data/sub/aranha-parsers/Gemfile +8 -0
- data/sub/aranha-parsers/aranha-parsers.gemspec +25 -0
- data/sub/aranha-parsers/lib/aranha/parsers/base.rb +81 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/base.rb +47 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/item.rb +24 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/item_list.rb +33 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/node/base.rb +34 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/node/default/numeric_support.rb +70 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/node/default/string_support.rb +77 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/node/default.rb +34 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html/node.rb +13 -0
- data/sub/aranha-parsers/lib/aranha/parsers/html.rb +11 -0
- data/sub/aranha-parsers/lib/aranha/parsers/invalid_state_exception.rb +8 -0
- data/sub/aranha-parsers/lib/aranha/parsers/json/base.rb +20 -0
- data/sub/aranha-parsers/lib/aranha/parsers/json.rb +11 -0
- data/sub/aranha-parsers/lib/aranha/parsers/patches/ofx_parser.rb +38 -0
- data/sub/aranha-parsers/lib/aranha/parsers/patches.rb +11 -0
- data/sub/aranha-parsers/lib/aranha/parsers/rspec/setup.rb +15 -0
- data/sub/aranha-parsers/lib/aranha/parsers/rspec/shared_examples/source_target_fixtures.rb +74 -0
- data/sub/aranha-parsers/lib/aranha/parsers/rspec/source_target_fixtures_controller.rb +39 -0
- data/sub/aranha-parsers/lib/aranha/parsers/rspec.rb +11 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/fetch_content_error.rb +10 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/file.rb +31 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/hash_http_base.rb +92 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/hash_http_get.rb +13 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/hash_http_post.rb +13 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address/http_get.rb +59 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_address.rb +57 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_target_fixtures/source_target_file.rb +19 -0
- data/sub/aranha-parsers/lib/aranha/parsers/source_target_fixtures.rb +78 -0
- data/sub/aranha-parsers/lib/aranha/parsers/version.rb +7 -0
- data/sub/aranha-parsers/lib/aranha/parsers.rb +9 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/rspec/shared_examples/source_target_fixtures_spec.rb +9 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/rspec/shared_examples/source_target_fixtures_spec_files/fixture1.source.txt +1 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/rspec/shared_examples/source_target_fixtures_spec_files/fixture1.target.yaml +3 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_address/http_get_spec.rb +21 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_address_spec.rb +74 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec.rb +27 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.source.txt +1 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.target.html +1 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub2.source.html +1 -0
- data/sub/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub3.target.yaml +1 -0
- data/sub/aranha-parsers/spec/lib/rubocop_check_spec.rb +3 -0
- data/sub/aranha-parsers/spec/spec_helper.rb +4 -0
- data/sub/avm/avm.gemspec +3 -1
- data/sub/avm/lib/avm/executables.rb +1 -1
- data/sub/avm/lib/avm/file_formats/base.rb +61 -0
- data/sub/{avm-files/lib/avm/files/formatter.rb → avm/lib/avm/file_formats/search_formatter.rb} +23 -16
- data/sub/avm/lib/avm/file_formats/utf8_assert.rb +72 -0
- data/sub/avm/lib/avm/file_formats.rb +9 -0
- data/sub/avm/lib/avm/registry/file_formats.rb +10 -0
- data/sub/avm/lib/avm/registry.rb +2 -2
- data/sub/avm/lib/avm/rspec/setup.rb +2 -1
- data/sub/avm/lib/avm/rspec/shared_examples/avm_file_formats_with_fixtures.rb +32 -0
- data/sub/avm/lib/avm/version.rb +1 -1
- data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +2 -2
- data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base.rb +32 -0
- data/sub/{avm-files/lib/avm/files/formatter/formats.rb → avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats.rb} +3 -5
- data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/version.rb +1 -1
- data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec_files}/plain_text.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec_files}/plain_text.target +0 -0
- data/sub/avm-eac_latex_base0/avm-eac_latex_base0.gemspec +3 -3
- data/sub/avm-eac_latex_base0/lib/avm/eac_latex_base0/executables.rb +22 -0
- data/sub/avm-eac_latex_base0/lib/avm/eac_latex_base0/sources/build.rb +3 -1
- data/sub/avm-eac_latex_base0/lib/avm/eac_latex_base0/version.rb +1 -1
- data/sub/avm-eac_php_base0/avm-eac_php_base0.gemspec +2 -1
- data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/executables.rb +22 -0
- data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats/base.rb +20 -0
- data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats.rb +11 -0
- data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/version.rb +1 -1
- data/sub/avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_code.php.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_code.php.target +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_code2.php.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_code2.php.target +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_html_code.php.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_html_code.php.target +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_iso88591_code.php.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_php_base0/spec/lib/avm/eac_php_base0/file_formats/base_spec_files}/php_iso88591_code.php.target +0 -0
- data/sub/avm-eac_python_base0/Gemfile +8 -0
- data/sub/avm-eac_python_base0/avm-eac_python_base0.gemspec +19 -0
- data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/executables.rb +22 -0
- data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats/base.rb +20 -0
- data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats.rb +11 -0
- data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/version.rb +7 -0
- data/sub/avm-eac_python_base0/lib/avm/eac_python_base0.rb +9 -0
- data/sub/avm-eac_python_base0/spec/lib/avm/eac_python_base0/file_formats/base_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_python_base0/spec/lib/avm/eac_python_base0/file_formats/base_spec_files}/python_code.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_python_base0/spec/lib/avm/eac_python_base0/file_formats/base_spec_files}/python_code.target +0 -0
- data/sub/avm-eac_python_base0/spec/rubocop_spec.rb +3 -0
- data/sub/avm-eac_python_base0/spec/spec_helper.rb +4 -0
- data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +3 -3
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +20 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats.rb +11 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
- data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files}/Gemfile.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files}/Gemfile.target +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files}/ruby_code.rb.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files}/ruby_code.rb.target +0 -0
- data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +3 -3
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/executables.rb +26 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/css/file_apply.rb +48 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/css.rb +22 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/html.rb +43 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/javascript.rb +22 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/json.rb +25 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/provider.rb +24 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/xml.rb +26 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats.rb +11 -0
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec.rb +7 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec_files/css1.source.css +11 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec_files/css1.target.css +11 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files}/html_code.html.erb.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files}/html_code.html.erb.target +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files}/html_code.html.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files}/html_code.html.target +0 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec_files}/javascript_code1.js.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec_files}/javascript_code1.js.target +0 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec_files}/json_code.json.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec_files}/json_code.json.target +0 -0
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec.rb +7 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec_files}/xml_code.xml.source +0 -0
- data/sub/{avm-tools/spec/lib/avm/tools/runner/files/format_spec_files → avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec_files}/xml_code.xml.target +0 -0
- data/sub/avm-files/avm-files.gemspec +2 -2
- data/sub/avm-files/lib/avm/files/version.rb +1 -1
- data/sub/avm-tools/avm-tools.gemspec +4 -4
- data/sub/avm-tools/lib/avm/tools/runner/files/format.rb +5 -5
- data/sub/avm-tools/lib/avm/tools/runner/git/auto_commit.rb +4 -2
- data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_bool.rb +12 -0
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
- metadata +138 -63
- data/sub/avm-files/lib/avm/files/formatter/formats/base.rb +0 -62
- data/sub/avm-files/lib/avm/files/formatter/formats/generic_plain.rb +0 -34
- data/sub/avm-files/lib/avm/files/formatter/formats/html.rb +0 -45
- data/sub/avm-files/lib/avm/files/formatter/formats/javascript.rb +0 -24
- data/sub/avm-files/lib/avm/files/formatter/formats/json.rb +0 -27
- data/sub/avm-files/lib/avm/files/formatter/formats/php.rb +0 -22
- data/sub/avm-files/lib/avm/files/formatter/formats/python.rb +0 -22
- data/sub/avm-files/lib/avm/files/formatter/formats/ruby.rb +0 -22
- data/sub/avm-files/lib/avm/files/formatter/formats/xml.rb +0 -28
- data/sub/avm-files/lib/avm/files/formatter/utf8_assert.rb +0 -74
- data/sub/avm-tools/spec/lib/avm/tools/runner/files/format_spec.rb +0 -56
@@ -1,45 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/files/formatter/formats/generic_plain'
|
4
|
-
require 'htmlbeautifier'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Html < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.html *.html.erb].freeze
|
12
|
-
VALID_TYPES = ['html'].freeze
|
13
|
-
|
14
|
-
def file_apply(path)
|
15
|
-
input = ::File.read(path)
|
16
|
-
temppath = tempfile_path
|
17
|
-
::File.open(temppath, 'w') do |output|
|
18
|
-
beautify path, input, output
|
19
|
-
end
|
20
|
-
::FileUtils.mv(temppath, path)
|
21
|
-
super(path)
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
def beautify(name, input, output)
|
27
|
-
output.puts ::HtmlBeautifier.beautify(input, htmlbeautify_options)
|
28
|
-
rescue StandardError => e
|
29
|
-
raise "Error parsing #{name}: #{e}"
|
30
|
-
end
|
31
|
-
|
32
|
-
def htmlbeautify_options
|
33
|
-
@htmlbeautify_options ||= { indent: ' ' }
|
34
|
-
end
|
35
|
-
|
36
|
-
def tempfile_path
|
37
|
-
tempfile = ::Tempfile.new
|
38
|
-
tempfile.close
|
39
|
-
tempfile.path
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/executables'
|
4
|
-
require 'avm/files/formatter/formats/generic_plain'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Javascript < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.js].freeze
|
12
|
-
VALID_TYPES = [].freeze
|
13
|
-
|
14
|
-
def internal_apply(files)
|
15
|
-
::Avm::Executables.js_beautify.command.append(
|
16
|
-
['--indent-size=2', '--end-with-newline', '--replace', *files]
|
17
|
-
).system!
|
18
|
-
super(files)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/files/formatter/formats/generic_plain'
|
4
|
-
|
5
|
-
module Avm
|
6
|
-
module Files
|
7
|
-
class Formatter
|
8
|
-
module Formats
|
9
|
-
class Json < ::Avm::Files::Formatter::Formats::GenericPlain
|
10
|
-
VALID_BASENAMES = %w[*.json].freeze
|
11
|
-
VALID_TYPES = [].freeze
|
12
|
-
|
13
|
-
def file_apply(file)
|
14
|
-
::File.write(file, ::JSON.pretty_generate(::JSON.parse(::File.read(file))))
|
15
|
-
end
|
16
|
-
|
17
|
-
def json_file?(file)
|
18
|
-
::JSON.parse(::File.read(file))
|
19
|
-
true
|
20
|
-
rescue JSON::ParserError
|
21
|
-
false
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/executables'
|
4
|
-
require 'avm/files/formatter/formats/generic_plain'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Php < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.php].freeze
|
12
|
-
VALID_TYPES = ['x-php'].freeze
|
13
|
-
|
14
|
-
def file_apply(file)
|
15
|
-
::Avm::Executables.php_cs_fixer.command.append(['fix', file]).system!
|
16
|
-
super(file)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/executables'
|
4
|
-
require 'avm/files/formatter/formats/generic_plain'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Python < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.py].freeze
|
12
|
-
VALID_TYPES = ['x-python'].freeze
|
13
|
-
|
14
|
-
def internal_apply(files)
|
15
|
-
::Avm::Executables.yapf.command.append(['--in-place', *files]).system!
|
16
|
-
super(files)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/files/formatter/formats/generic_plain'
|
4
|
-
require 'avm/eac_ruby_base1/rubocop'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Ruby < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.gemspec *.rake *.rb Gemfile Rakefile].freeze
|
12
|
-
VALID_TYPES = ['x-ruby'].freeze
|
13
|
-
|
14
|
-
def internal_apply(files)
|
15
|
-
::Avm::EacRubyBase1::Rubocop.new('.', ['-a', '--ignore-parent-exclusion'] + files).run
|
16
|
-
super(files)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/executables'
|
4
|
-
require 'avm/files/formatter/formats/generic_plain'
|
5
|
-
|
6
|
-
module Avm
|
7
|
-
module Files
|
8
|
-
class Formatter
|
9
|
-
module Formats
|
10
|
-
class Xml < ::Avm::Files::Formatter::Formats::GenericPlain
|
11
|
-
VALID_BASENAMES = %w[*.xml].freeze
|
12
|
-
VALID_TYPES = ['xml'].freeze
|
13
|
-
|
14
|
-
def internal_apply(files)
|
15
|
-
format_command(files).system!
|
16
|
-
super(files)
|
17
|
-
end
|
18
|
-
|
19
|
-
def format_command(files)
|
20
|
-
::Avm::Executables.tidy.command.append(
|
21
|
-
%w[-xml -modify --indent auto --indent-spaces 2 --wrap 100] + files
|
22
|
-
)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,74 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_fs/file_info'
|
4
|
-
|
5
|
-
module Avm
|
6
|
-
module Files
|
7
|
-
class Formatter
|
8
|
-
class Utf8Assert
|
9
|
-
UTF8_CHARSET = 'utf-8'
|
10
|
-
UTF8_CHARSETS = [UTF8_CHARSET, 'us-ascii'].freeze
|
11
|
-
|
12
|
-
class << self
|
13
|
-
def assert_files(files)
|
14
|
-
asserters = files.map { |file| new(file) }
|
15
|
-
begin
|
16
|
-
asserters.each(&:assert)
|
17
|
-
yield
|
18
|
-
ensure
|
19
|
-
asserters.each(&:revert)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
enable_simple_cache
|
25
|
-
common_constructor :path
|
26
|
-
|
27
|
-
def assert
|
28
|
-
return if original_utf8?
|
29
|
-
|
30
|
-
convert_self(original_charset, UTF8_CHARSET)
|
31
|
-
end
|
32
|
-
|
33
|
-
def revert
|
34
|
-
return if original_utf8?
|
35
|
-
|
36
|
-
convert_self(UTF8_CHARSET, original_charset)
|
37
|
-
end
|
38
|
-
|
39
|
-
private
|
40
|
-
|
41
|
-
def original_info_uncached
|
42
|
-
::EacFs::FileInfo.new(path)
|
43
|
-
end
|
44
|
-
|
45
|
-
def original_charset_uncached
|
46
|
-
return original_info.content_type.charset if original_info.content_type.charset.present?
|
47
|
-
|
48
|
-
raise 'No charset found'
|
49
|
-
rescue StandardError => e
|
50
|
-
raise "Unable to determine the charset of #{path} (#{e.message})"
|
51
|
-
end
|
52
|
-
|
53
|
-
def original_utf8?
|
54
|
-
UTF8_CHARSETS.include?(original_charset)
|
55
|
-
end
|
56
|
-
|
57
|
-
def convert_file(from_path, from_charset, to_path, to_charset)
|
58
|
-
File.open(from_path, "r:#{from_charset}") do |input|
|
59
|
-
File.open(to_path, "w:#{to_charset}") do |output|
|
60
|
-
output.write(input.read)
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
def convert_self(from_charset, to_charset)
|
66
|
-
temp = ::Tempfile.new
|
67
|
-
temp.close
|
68
|
-
convert_file(path, from_charset, temp.path, to_charset)
|
69
|
-
::FileUtils.mv(temp.path, path)
|
70
|
-
end
|
71
|
-
end
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
@@ -1,56 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'avm/tools/runner'
|
4
|
-
require 'aranha/parsers/source_target_fixtures'
|
5
|
-
require 'eac_ruby_utils/fs/temp'
|
6
|
-
require 'fileutils'
|
7
|
-
|
8
|
-
::RSpec.describe ::Avm::Tools::Runner::Files::Format do
|
9
|
-
before(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
10
|
-
source_files = copy_to_target_dir(source_stf.source_files) { |b| b.gsub(/\.source\Z/, '') }
|
11
|
-
::Avm::Tools::Runner.run(argv: ['files', 'format', '--apply',
|
12
|
-
source_target_fixtures.fixtures_directory])
|
13
|
-
copy_to_target_dir(source_stf.target_files)
|
14
|
-
source_files.each { |source_file| ::FileUtils.mv(source_file, source_file + '.source') }
|
15
|
-
end
|
16
|
-
|
17
|
-
after(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
18
|
-
target_dir.remove
|
19
|
-
end
|
20
|
-
|
21
|
-
include_examples 'source_target_fixtures', __FILE__
|
22
|
-
|
23
|
-
def source_stf
|
24
|
-
@source_stf ||= ::Aranha::Parsers::SourceTargetFixtures.new(
|
25
|
-
::File.join(__dir__, 'format_spec_files')
|
26
|
-
)
|
27
|
-
end
|
28
|
-
|
29
|
-
def target_dir
|
30
|
-
@target_dir ||= ::EacRubyUtils::Fs::Temp.directory
|
31
|
-
end
|
32
|
-
|
33
|
-
def fixtures_dir
|
34
|
-
target_dir.to_path
|
35
|
-
end
|
36
|
-
|
37
|
-
def source_data(source_file)
|
38
|
-
::File.read(source_file)
|
39
|
-
end
|
40
|
-
|
41
|
-
def target_data(target_file)
|
42
|
-
::File.read(target_file)
|
43
|
-
end
|
44
|
-
|
45
|
-
private
|
46
|
-
|
47
|
-
def copy_to_target_dir(files, &block)
|
48
|
-
files.map do |file|
|
49
|
-
target_basename = ::File.basename(file)
|
50
|
-
target_basename = block.call(target_basename) if block
|
51
|
-
target_path = ::File.join(source_target_fixtures.fixtures_directory, target_basename)
|
52
|
-
::FileUtils.cp(file, target_path)
|
53
|
-
target_path
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|