ehbrs-tools 0.13.1 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ehbrs/executables.rb +1 -1
  3. data/lib/ehbrs/runner.rb +4 -7
  4. data/lib/ehbrs/runner/finances.rb +4 -7
  5. data/lib/ehbrs/runner/finances/bb_browser.rb +5 -10
  6. data/lib/ehbrs/runner/fs.rb +4 -7
  7. data/lib/ehbrs/runner/fs/used_space.rb +4 -5
  8. data/lib/ehbrs/runner/google.rb +4 -7
  9. data/lib/ehbrs/runner/google/translate.rb +7 -12
  10. data/lib/ehbrs/runner/self.rb +4 -7
  11. data/lib/ehbrs/runner/self/test.rb +5 -10
  12. data/lib/ehbrs/runner/vg.rb +4 -7
  13. data/lib/ehbrs/runner/vg/ips.rb +9 -14
  14. data/lib/ehbrs/runner/vg/wii.rb +10 -13
  15. data/lib/ehbrs/runner/videos.rb +7 -14
  16. data/lib/ehbrs/runner/videos/extract.rb +10 -13
  17. data/lib/ehbrs/runner/videos/probe.rb +32 -0
  18. data/lib/ehbrs/runner/videos/series.rb +5 -8
  19. data/lib/ehbrs/runner/videos/series/rename.rb +9 -12
  20. data/lib/ehbrs/runner/videos/unsupported.rb +9 -13
  21. data/lib/ehbrs/runner/web_utils.rb +24 -0
  22. data/lib/ehbrs/runner/web_utils/videos.rb +18 -0
  23. data/lib/ehbrs/runner/web_utils/videos/download.rb +63 -0
  24. data/lib/ehbrs/runner/web_utils/videos/upload.rb +75 -0
  25. data/lib/ehbrs/tools/version.rb +1 -1
  26. data/lib/ehbrs/vg/wii/wit/parsers/dump.rb +10 -5
  27. data/lib/ehbrs/videos/file.rb +2 -1
  28. data/lib/ehbrs/videos/series/rename/file/options.rb +3 -13
  29. data/lib/ehbrs/videos/unsupported/fix_profile.rb +1 -0
  30. data/vendor/aranha-parsers/Gemfile +5 -0
  31. data/vendor/aranha-parsers/aranha-parsers.gemspec +23 -0
  32. data/vendor/aranha-parsers/lib/aranha/parsers.rb +9 -0
  33. data/vendor/aranha-parsers/lib/aranha/parsers/base.rb +79 -0
  34. data/vendor/aranha-parsers/lib/aranha/parsers/html.rb +11 -0
  35. data/vendor/aranha-parsers/lib/aranha/parsers/html/base.rb +47 -0
  36. data/vendor/aranha-parsers/lib/aranha/parsers/html/item.rb +24 -0
  37. data/vendor/aranha-parsers/lib/aranha/parsers/html/item_list.rb +29 -0
  38. data/vendor/aranha-parsers/lib/aranha/parsers/html/node.rb +13 -0
  39. data/vendor/aranha-parsers/lib/aranha/parsers/html/node/base.rb +36 -0
  40. data/vendor/aranha-parsers/lib/aranha/parsers/html/node/default.rb +126 -0
  41. data/vendor/aranha-parsers/lib/aranha/parsers/invalid_state_exception.rb +8 -0
  42. data/vendor/aranha-parsers/lib/aranha/parsers/patches.rb +11 -0
  43. data/vendor/aranha-parsers/lib/aranha/parsers/patches/ofx_parser.rb +38 -0
  44. data/vendor/aranha-parsers/lib/aranha/parsers/source_address.rb +55 -0
  45. data/vendor/aranha-parsers/lib/aranha/parsers/source_address/file.rb +31 -0
  46. data/vendor/aranha-parsers/lib/aranha/parsers/source_address/hash_http_get.rb +25 -0
  47. data/vendor/aranha-parsers/lib/aranha/parsers/source_address/hash_http_post.rb +45 -0
  48. data/vendor/aranha-parsers/lib/aranha/parsers/source_address/http_get.rb +49 -0
  49. data/vendor/aranha-parsers/lib/aranha/parsers/source_target_fixtures.rb +77 -0
  50. data/vendor/aranha-parsers/lib/aranha/parsers/spec/source_target_fixtures_example.rb +70 -0
  51. data/vendor/aranha-parsers/lib/aranha/parsers/version.rb +7 -0
  52. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_address/http_get_spec.rb +21 -0
  53. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_address_spec.rb +74 -0
  54. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec.rb +27 -0
  55. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.source.txt +1 -0
  56. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.target.html +1 -0
  57. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub2.source.html +1 -0
  58. data/vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub3.target.yaml +1 -0
  59. data/vendor/aranha-parsers/spec/lib/rubocop_check_spec.rb +7 -0
  60. data/vendor/aranha-parsers/spec/spec_helper.rb +8 -0
  61. data/vendor/eac_cli/eac_cli.gemspec +1 -1
  62. data/vendor/eac_cli/lib/eac_cli/core_ext.rb +4 -0
  63. data/vendor/eac_cli/lib/eac_cli/default_runner.rb +6 -14
  64. data/vendor/eac_cli/lib/eac_cli/definition.rb +35 -3
  65. data/vendor/eac_cli/lib/eac_cli/definition/base_option.rb +17 -1
  66. data/vendor/eac_cli/lib/eac_cli/definition/help_formatter.rb +76 -0
  67. data/vendor/eac_cli/lib/eac_cli/definition/positional_argument.rb +21 -4
  68. data/vendor/eac_cli/lib/eac_cli/docopt/runner_extension.rb +4 -9
  69. data/vendor/eac_cli/lib/eac_cli/parser/collector.rb +4 -0
  70. data/vendor/eac_cli/lib/eac_cli/parser/options_collection.rb +27 -64
  71. data/vendor/eac_cli/lib/eac_cli/parser/parse_result.rb +17 -0
  72. data/vendor/eac_cli/lib/eac_cli/parser/positional_collection.rb +47 -19
  73. data/vendor/eac_cli/lib/eac_cli/patches.rb +4 -0
  74. data/vendor/eac_cli/lib/eac_cli/patches/object.rb +5 -0
  75. data/vendor/eac_cli/lib/eac_cli/patches/object/runner_with.rb +25 -0
  76. data/vendor/eac_cli/lib/eac_cli/runner.rb +51 -10
  77. data/vendor/eac_cli/lib/eac_cli/runner/context.rb +20 -3
  78. data/vendor/eac_cli/lib/eac_cli/runner_with.rb +9 -0
  79. data/vendor/eac_cli/lib/eac_cli/runner_with/help.rb +19 -0
  80. data/vendor/eac_cli/lib/eac_cli/runner_with/output_file.rb +26 -0
  81. data/vendor/eac_cli/lib/eac_cli/runner_with/subcommands.rb +96 -0
  82. data/vendor/eac_cli/lib/eac_cli/version.rb +1 -1
  83. data/vendor/eac_cli/spec/lib/eac_cli/docopt/runner_extension_spec.rb +25 -0
  84. data/vendor/eac_cli/spec/lib/eac_cli/runner_spec.rb +48 -40
  85. data/vendor/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb +57 -0
  86. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb +19 -0
  87. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +4 -4
  88. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/configs/base.rb +43 -0
  89. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/configs/file.rb +12 -31
  90. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs.rb +7 -104
  91. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/entry_reader.rb +81 -0
  92. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/password_entry_reader.rb +18 -0
  93. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/read_entry_options.rb +46 -0
  94. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/store_passwords_entry_reader.rb +27 -0
  95. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb +57 -0
  96. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +3 -2
  97. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb +4 -0
  98. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb +9 -0
  99. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb +14 -0
  100. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +17 -0
  101. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash.rb +21 -58
  102. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/entry_key_error.rb +8 -0
  103. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/node.rb +67 -0
  104. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/path_search.rb +39 -0
  105. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +2 -1
  106. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +6 -2
  107. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +10 -0
  108. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  109. data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb +16 -0
  110. data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/configs_spec.rb +15 -0
  111. data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb +26 -0
  112. data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb +32 -0
  113. data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/paths_hash_spec.rb +52 -13
  114. data/vendor/ehbrs_ruby_utils/Gemfile +16 -0
  115. data/vendor/ehbrs_ruby_utils/ehbrs_ruby_utils.gemspec +20 -0
  116. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils.rb +7 -0
  117. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/executables.rb +28 -0
  118. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/version.rb +5 -0
  119. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos.rb +9 -0
  120. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container.rb +11 -0
  121. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container/file.rb +31 -0
  122. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container/info.rb +21 -0
  123. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/quality.rb +68 -0
  124. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/resolution.rb +68 -0
  125. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils.rb +9 -0
  126. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/instance.rb +32 -0
  127. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos.rb +11 -0
  128. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos/file.rb +40 -0
  129. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos/files_list.rb +76 -0
  130. data/vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/resolution_spec.rb +18 -0
  131. data/vendor/ehbrs_ruby_utils/spec/rubocop_check_spec.rb +7 -0
  132. data/vendor/ehbrs_ruby_utils/spec/spec_helper.rb +100 -0
  133. metadata +85 -2
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'ehbrs_ruby_utils/videos/quality'
5
+
6
+ module EhbrsRubyUtils
7
+ module Videos
8
+ class Resolution
9
+ enable_simple_cache
10
+ include ::Comparable
11
+
12
+ class << self
13
+ def valid_dimension?(dimension)
14
+ dimension.is_a?(::Integer) && dimension.positive?
15
+ end
16
+ end
17
+
18
+ common_constructor :width, :height
19
+
20
+ def <=>(other)
21
+ r = (lower <=> other.lower)
22
+ return r unless r.zero?
23
+
24
+ higher <=> other.higher
25
+ end
26
+
27
+ def to_xs
28
+ [quality_to_s, resolution_to_s].join(' / ')
29
+ end
30
+
31
+ def higher
32
+ width > height ? width : height
33
+ end
34
+
35
+ def lower
36
+ width < height ? width : height
37
+ end
38
+
39
+ def pixels
40
+ width * height
41
+ end
42
+
43
+ def quality_to_s
44
+ quality.if_present('?', &:to_s)
45
+ end
46
+
47
+ def resolution_to_s
48
+ "#{width}x#{height}"
49
+ end
50
+
51
+ def to_s
52
+ resolution_to_s
53
+ end
54
+
55
+ def valid?
56
+ [width, height].all? { |d| self.class.valid_dimension?(d) }
57
+ end
58
+
59
+ private
60
+
61
+ def quality_uncached
62
+ ::EhbrsRubyUtils::Videos::Quality.list
63
+ .find { |quality| quality.resolution_match?(self) } ||
64
+ raise("No quality matches resolution #{resolution}")
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module WebUtils
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'avm/instances/base'
5
+ require 'httpclient'
6
+
7
+ module EhbrsRubyUtils
8
+ module WebUtils
9
+ class Instance < ::Avm::Instances::Base
10
+ def root_url
11
+ read_entry(:url)
12
+ end
13
+
14
+ def resource_url(resource_url_suffix)
15
+ root_url + '/' + resource_url_suffix.gsub(%r{\A/+}, '')
16
+ end
17
+
18
+ def http_request(resource_url_suffix, options = {})
19
+ method = options.delete(:method) || 'get'
20
+ url = resource_url(resource_url_suffix)
21
+ http_client.request(method, url, options)
22
+ end
23
+
24
+ def http_client_uncached
25
+ client = HTTPClient.new
26
+ client.force_basic_auth = true
27
+ client.set_basic_auth(root_url, read_entry(:admin_username), read_entry(:admin_password))
28
+ client
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module WebUtils
7
+ module Videos
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ostruct'
4
+
5
+ module EhbrsRubyUtils
6
+ module WebUtils
7
+ module Videos
8
+ class File < ::SimpleDelegator
9
+ def initialize(data)
10
+ super(::OpenStruct.new(data))
11
+ end
12
+
13
+ def exist?
14
+ ::File.exist?(original_path)
15
+ end
16
+
17
+ def path_changed?
18
+ original_path != new_path
19
+ end
20
+
21
+ def can_rename?
22
+ ::File.exist?(original_path) && !::File.exist?(new_path)
23
+ end
24
+
25
+ def remove
26
+ return unless exist?
27
+
28
+ ::File.unlink(original_path)
29
+ end
30
+
31
+ def rename
32
+ return unless can_rename?
33
+
34
+ ::FileUtils.mkdir_p(::File.dirname(new_path))
35
+ ::FileUtils.mv(original_path, new_path)
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'active_support/json'
4
+ require 'eac_ruby_utils/fs/temp'
5
+ require 'ehbrs_ruby_utils/executables'
6
+
7
+ module EhbrsRubyUtils
8
+ module WebUtils
9
+ module Videos
10
+ class FilesList
11
+ enable_console_speaker
12
+ enable_simple_cache
13
+
14
+ common_constructor :type_class, :root_path, :options do
15
+ self.root_path = root_path.to_pathname
16
+ raise "\"#{root_path}\" is not a directory" unless root_path.directory?
17
+
18
+ self.options = options.with_indifferent_access.freeze
19
+ end
20
+
21
+ def write_to(path = nil)
22
+ path ||= ::EacRubyUtils::Fs::Temp.file.to_path
23
+ ::File.write(path, data.to_json)
24
+ path
25
+ end
26
+
27
+ def data
28
+ {
29
+ root_path: root_path.to_path,
30
+ type: type_class,
31
+ files: files_data
32
+ }
33
+ end
34
+
35
+ def files_data
36
+ case type_class
37
+ when 'Videos::MovieFile' then movies_files_data
38
+ when 'Videos::SeriesDirectory' then series_files_data
39
+ else raise "Unknown type class: \"#{type_class}\""
40
+ end
41
+ end
42
+
43
+ def movies_files_data
44
+ r = []
45
+ Dir["#{root_path}/**/*"].each do |path|
46
+ r << file_data(path) if ::File.file?(path)
47
+ end
48
+ r
49
+ end
50
+
51
+ def series_files_data
52
+ r = []
53
+ Dir["#{root_path}/*"].each do |path|
54
+ r << file_data(path) if ::File.directory?(path)
55
+ end
56
+ r
57
+ end
58
+
59
+ def file_data(path)
60
+ r = { original_path: path }
61
+ r[:ffprobe_data] = file_ffprobe_data(path) if ::File.file?(path)
62
+ r
63
+ end
64
+
65
+ def file_ffprobe_data(path)
66
+ return {} unless options.fetch(:ffprobe)
67
+
68
+ infom "Probing \"#{path}\"..."
69
+ ::JSON.parse(::EhbrsRubyUtils::Executables.ffprobe.command(
70
+ '-hide_banner', '-print_format', 'json', '-show_format', '-show_streams', path
71
+ ).execute!)
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ehbrs_ruby_utils/videos/resolution'
4
+
5
+ RSpec.describe ::EhbrsRubyUtils::Videos::Resolution do
6
+ describe '#quality' do
7
+ { [500, 720] => 480, [1080, 720] => 720, [1, 1] => 240, [9999, 9999] => 2160,
8
+ [480, 420] => 240, [480, 421] => 480 }.each do |resolution_parts, quality_height|
9
+ context "when resolution is #{described_class.new(*resolution_parts).to_xs}" do
10
+ let(:instance) { described_class.new(*resolution_parts) }
11
+
12
+ it "quality is #{::EhbrsRubyUtils::Videos::Quality.by_height(quality_height).to_xs}" do
13
+ expect(instance.quality.height).to eq(quality_height)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_gem_support/spec/examples/rubocop_check'
4
+
5
+ RSpec.describe ::RuboCop do
6
+ include_examples 'rubocop_check', ::File.expand_path('..', __dir__)
7
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file was generated by the `rspec --init` command. Conventionally, all
4
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
+ # The generated `.rspec` file contains `--require spec_helper` which will cause
6
+ # this file to always be loaded, without a need to explicitly require it in any
7
+ # files.
8
+ #
9
+ # Given that it is always loaded, you are encouraged to keep this file as
10
+ # light-weight as possible. Requiring heavyweight dependencies from this file
11
+ # will add to the boot time of your test suite on EVERY test run, even for an
12
+ # individual file that may not need all of that loaded. Instead, consider making
13
+ # a separate helper file that requires the additional dependencies and performs
14
+ # the additional setup, and require it from the spec files that actually need
15
+ # it.
16
+ #
17
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
18
+ RSpec.configure do |config|
19
+ # rspec-expectations config goes here. You can use an alternate
20
+ # assertion/expectation library such as wrong or the stdlib/minitest
21
+ # assertions if you prefer.
22
+ config.expect_with :rspec do |expectations|
23
+ # This option will default to `true` in RSpec 4. It makes the `description`
24
+ # and `failure_message` of custom matchers include text for helper methods
25
+ # defined using `chain`, e.g.:
26
+ # be_bigger_than(2).and_smaller_than(4).description
27
+ # # => "be bigger than 2 and smaller than 4"
28
+ # ...rather than:
29
+ # # => "be bigger than 2"
30
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
31
+ end
32
+
33
+ # rspec-mocks config goes here. You can use an alternate test double
34
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
35
+ config.mock_with :rspec do |mocks|
36
+ # Prevents you from mocking or stubbing a method that does not exist on
37
+ # a real object. This is generally recommended, and will default to
38
+ # `true` in RSpec 4.
39
+ mocks.verify_partial_doubles = true
40
+ end
41
+
42
+ # This option will default to `:apply_to_host_groups` in RSpec 4 (and will
43
+ # have no way to turn it off -- the option exists only for backwards
44
+ # compatibility in RSpec 3). It causes shared context metadata to be
45
+ # inherited by the metadata hash of host groups and examples, rather than
46
+ # triggering implicit auto-inclusion in groups with matching metadata.
47
+ config.shared_context_metadata_behavior = :apply_to_host_groups
48
+
49
+ # The settings below are suggested to provide a good initial experience
50
+ # with RSpec, but feel free to customize to your heart's content.
51
+ # # This allows you to limit a spec run to individual examples or groups
52
+ # # you care about by tagging them with `:focus` metadata. When nothing
53
+ # # is tagged with `:focus`, all examples get run. RSpec also provides
54
+ # # aliases for `it`, `describe`, and `context` that include `:focus`
55
+ # # metadata: `fit`, `fdescribe` and `fcontext`, respectively.
56
+ # config.filter_run_when_matching :focus
57
+ #
58
+ # # Allows RSpec to persist some state between runs in order to support
59
+ # # the `--only-failures` and `--next-failure` CLI options. We recommend
60
+ # # you configure your source control system to ignore this file.
61
+ # config.example_status_persistence_file_path = "spec/examples.txt"
62
+ #
63
+ # # Limits the available syntax to the non-monkey patched syntax that is
64
+ # # recommended. For more details, see:
65
+ # # - http://rspec.info/blog/2012/06/rspecs-new-expectation-syntax/
66
+ # # - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
67
+ # # - http://rspec.info/blog/2014/05/notable-changes-in-rspec-3/#zero-monkey-patching-mode
68
+ # config.disable_monkey_patching!
69
+ #
70
+ # # This setting enables warnings. It's recommended, but in some cases may
71
+ # # be too noisy due to issues in dependencies.
72
+ # config.warnings = true
73
+ #
74
+ # # Many RSpec users commonly either run the entire suite or an individual
75
+ # # file, and it's useful to allow more verbose output when running an
76
+ # # individual spec file.
77
+ # if config.files_to_run.one?
78
+ # # Use the documentation formatter for detailed output,
79
+ # # unless a formatter has already been configured
80
+ # # (e.g. via a command-line flag).
81
+ # config.default_formatter = "doc"
82
+ # end
83
+ #
84
+ # # Print the 10 slowest examples and example groups at the
85
+ # # end of the spec run, to help surface which specs are running
86
+ # # particularly slow.
87
+ # config.profile_examples = 10
88
+ #
89
+ # # Run specs in random order to surface order dependencies. If you find an
90
+ # # order dependency and want to debug it, you can fix the order by providing
91
+ # # the seed, which is printed after each run.
92
+ # # --seed 1234
93
+ # config.order = :random
94
+ #
95
+ # # Seed global randomization in this process using the `--seed` CLI option.
96
+ # # Setting this allows you to use `--seed` to deterministically reproduce
97
+ # # test failures related to randomization by passing the same `--seed` value
98
+ # # as the one that triggered the failure.
99
+ # Kernel.srand config.seed
100
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ehbrs-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
4
+ version: 0.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-09-13 00:00:00.000000000 Z
11
+ date: 2020-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm-tools
@@ -120,9 +120,14 @@ files:
120
120
  - lib/ehbrs/runner/vg/wii.rb
121
121
  - lib/ehbrs/runner/videos.rb
122
122
  - lib/ehbrs/runner/videos/extract.rb
123
+ - lib/ehbrs/runner/videos/probe.rb
123
124
  - lib/ehbrs/runner/videos/series.rb
124
125
  - lib/ehbrs/runner/videos/series/rename.rb
125
126
  - lib/ehbrs/runner/videos/unsupported.rb
127
+ - lib/ehbrs/runner/web_utils.rb
128
+ - lib/ehbrs/runner/web_utils/videos.rb
129
+ - lib/ehbrs/runner/web_utils/videos/download.rb
130
+ - lib/ehbrs/runner/web_utils/videos/upload.rb
126
131
  - lib/ehbrs/self.rb
127
132
  - lib/ehbrs/self/observers/used_space.rb
128
133
  - lib/ehbrs/self/observers/with_persistence.rb
@@ -177,6 +182,37 @@ files:
177
182
  - lib/ehbrs/videos/unsupported/profiles/samsung.rb
178
183
  - lib/ehbrs/videos/unsupported/search.rb
179
184
  - lib/ehbrs/videos/unsupported/track.rb
185
+ - vendor/aranha-parsers/Gemfile
186
+ - vendor/aranha-parsers/aranha-parsers.gemspec
187
+ - vendor/aranha-parsers/lib/aranha/parsers.rb
188
+ - vendor/aranha-parsers/lib/aranha/parsers/base.rb
189
+ - vendor/aranha-parsers/lib/aranha/parsers/html.rb
190
+ - vendor/aranha-parsers/lib/aranha/parsers/html/base.rb
191
+ - vendor/aranha-parsers/lib/aranha/parsers/html/item.rb
192
+ - vendor/aranha-parsers/lib/aranha/parsers/html/item_list.rb
193
+ - vendor/aranha-parsers/lib/aranha/parsers/html/node.rb
194
+ - vendor/aranha-parsers/lib/aranha/parsers/html/node/base.rb
195
+ - vendor/aranha-parsers/lib/aranha/parsers/html/node/default.rb
196
+ - vendor/aranha-parsers/lib/aranha/parsers/invalid_state_exception.rb
197
+ - vendor/aranha-parsers/lib/aranha/parsers/patches.rb
198
+ - vendor/aranha-parsers/lib/aranha/parsers/patches/ofx_parser.rb
199
+ - vendor/aranha-parsers/lib/aranha/parsers/source_address.rb
200
+ - vendor/aranha-parsers/lib/aranha/parsers/source_address/file.rb
201
+ - vendor/aranha-parsers/lib/aranha/parsers/source_address/hash_http_get.rb
202
+ - vendor/aranha-parsers/lib/aranha/parsers/source_address/hash_http_post.rb
203
+ - vendor/aranha-parsers/lib/aranha/parsers/source_address/http_get.rb
204
+ - vendor/aranha-parsers/lib/aranha/parsers/source_target_fixtures.rb
205
+ - vendor/aranha-parsers/lib/aranha/parsers/spec/source_target_fixtures_example.rb
206
+ - vendor/aranha-parsers/lib/aranha/parsers/version.rb
207
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_address/http_get_spec.rb
208
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_address_spec.rb
209
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec.rb
210
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.source.txt
211
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub1.target.html
212
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub2.source.html
213
+ - vendor/aranha-parsers/spec/lib/aranha/parsers/source_target_fixtures_spec_files/stub3.target.yaml
214
+ - vendor/aranha-parsers/spec/lib/rubocop_check_spec.rb
215
+ - vendor/aranha-parsers/spec/spec_helper.rb
180
216
  - vendor/aranha-selenium/Gemfile
181
217
  - vendor/aranha-selenium/aranha-selenium.gemspec
182
218
  - vendor/aranha-selenium/lib/aranha/selenium.rb
@@ -192,11 +228,13 @@ files:
192
228
  - vendor/eac_cli/Gemfile
193
229
  - vendor/eac_cli/eac_cli.gemspec
194
230
  - vendor/eac_cli/lib/eac_cli.rb
231
+ - vendor/eac_cli/lib/eac_cli/core_ext.rb
195
232
  - vendor/eac_cli/lib/eac_cli/default_runner.rb
196
233
  - vendor/eac_cli/lib/eac_cli/definition.rb
197
234
  - vendor/eac_cli/lib/eac_cli/definition/argument_option.rb
198
235
  - vendor/eac_cli/lib/eac_cli/definition/base_option.rb
199
236
  - vendor/eac_cli/lib/eac_cli/definition/boolean_option.rb
237
+ - vendor/eac_cli/lib/eac_cli/definition/help_formatter.rb
200
238
  - vendor/eac_cli/lib/eac_cli/definition/positional_argument.rb
201
239
  - vendor/eac_cli/lib/eac_cli/docopt/doc_builder.rb
202
240
  - vendor/eac_cli/lib/eac_cli/docopt/runner_extension.rb
@@ -206,10 +244,19 @@ files:
206
244
  - vendor/eac_cli/lib/eac_cli/parser/options_collection.rb
207
245
  - vendor/eac_cli/lib/eac_cli/parser/parse_result.rb
208
246
  - vendor/eac_cli/lib/eac_cli/parser/positional_collection.rb
247
+ - vendor/eac_cli/lib/eac_cli/patches.rb
248
+ - vendor/eac_cli/lib/eac_cli/patches/object.rb
249
+ - vendor/eac_cli/lib/eac_cli/patches/object/runner_with.rb
209
250
  - vendor/eac_cli/lib/eac_cli/runner.rb
210
251
  - vendor/eac_cli/lib/eac_cli/runner/context.rb
252
+ - vendor/eac_cli/lib/eac_cli/runner_with.rb
253
+ - vendor/eac_cli/lib/eac_cli/runner_with/help.rb
254
+ - vendor/eac_cli/lib/eac_cli/runner_with/output_file.rb
255
+ - vendor/eac_cli/lib/eac_cli/runner_with/subcommands.rb
211
256
  - vendor/eac_cli/lib/eac_cli/version.rb
257
+ - vendor/eac_cli/spec/lib/eac_cli/docopt/runner_extension_spec.rb
212
258
  - vendor/eac_cli/spec/lib/eac_cli/runner_spec.rb
259
+ - vendor/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb
213
260
  - vendor/eac_cli/spec/rubocop_spec.rb
214
261
  - vendor/eac_cli/spec/spec_helper.rb
215
262
  - vendor/eac_docker/Gemfile
@@ -231,14 +278,20 @@ files:
231
278
  - vendor/eac_ruby_utils/eac_ruby_utils.gemspec
232
279
  - vendor/eac_ruby_utils/lib/eac_ruby_utils.rb
233
280
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb
281
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb
234
282
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb
235
283
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb
236
284
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb
237
285
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb
238
286
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/configs.rb
287
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/configs/base.rb
239
288
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/configs/file.rb
240
289
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/console.rb
241
290
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs.rb
291
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/entry_reader.rb
292
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/password_entry_reader.rb
293
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/read_entry_options.rb
294
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/configs/store_passwords_entry_reader.rb
242
295
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner.rb
243
296
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_class_methods.rb
244
297
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_doc.rb
@@ -268,6 +321,7 @@ files:
268
321
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/terminal.rb
269
322
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/filesystem_cache.rb
270
323
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/fs.rb
324
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb
271
325
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb
272
326
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb
273
327
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb
@@ -301,6 +355,9 @@ files:
301
355
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb
302
356
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb
303
357
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb
358
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb
359
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb
360
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb
304
361
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb
305
362
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb
306
363
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb
@@ -314,6 +371,7 @@ files:
314
371
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb
315
372
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb
316
373
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb
374
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb
317
375
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb
318
376
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_respond.rb
319
377
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/object/template.rb
@@ -328,6 +386,9 @@ files:
328
386
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/time/default_time_zone_set.rb
329
387
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/time/local_time_zone.rb
330
388
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash.rb
389
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/entry_key_error.rb
390
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/node.rb
391
+ - vendor/eac_ruby_utils/lib/eac_ruby_utils/paths_hash/path_search.rb
331
392
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb
332
393
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb
333
394
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/rspec/conditional.rb
@@ -351,6 +412,7 @@ files:
351
412
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/version.rb
352
413
  - vendor/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb
353
414
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb
415
+ - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb
354
416
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb
355
417
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb
356
418
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/configs_spec.rb
@@ -368,6 +430,8 @@ files:
368
430
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb
369
431
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb
370
432
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb
433
+ - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb
434
+ - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb
371
435
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb
372
436
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb
373
437
  - vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/console_speaker_spec.rb
@@ -396,6 +460,25 @@ files:
396
460
  - vendor/eac_ruby_utils/spec/locales/pt-BR.yml
397
461
  - vendor/eac_ruby_utils/spec/rubocop_check_spec.rb
398
462
  - vendor/eac_ruby_utils/spec/spec_helper.rb
463
+ - vendor/ehbrs_ruby_utils/Gemfile
464
+ - vendor/ehbrs_ruby_utils/ehbrs_ruby_utils.gemspec
465
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils.rb
466
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/executables.rb
467
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/version.rb
468
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos.rb
469
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container.rb
470
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container/file.rb
471
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/container/info.rb
472
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/quality.rb
473
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/videos/resolution.rb
474
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils.rb
475
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/instance.rb
476
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos.rb
477
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos/file.rb
478
+ - vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/web_utils/videos/files_list.rb
479
+ - vendor/ehbrs_ruby_utils/spec/lib/ehbrs_ruby_utils/videos/resolution_spec.rb
480
+ - vendor/ehbrs_ruby_utils/spec/rubocop_check_spec.rb
481
+ - vendor/ehbrs_ruby_utils/spec/spec_helper.rb
399
482
  homepage:
400
483
  licenses: []
401
484
  metadata: {}