ehbrs_ruby_utils 0.27.1 → 0.29.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c871abaf7dc4060d3d4165e5e0ac29e083ff688c87972b008578ad7c6ee3b51c
4
- data.tar.gz: 56a62fcdb9ac75d7e5fed15c145dd14b36b207628499108781337b870001147a
3
+ metadata.gz: 4d3d030552c8f65af3c5c12d12466e7c0b79b17aaa1d15e2b6b34401178a4db6
4
+ data.tar.gz: '05393346d1434c2ddfe1fbfdd0287cdbc324fbded63eaf69db3f910d27ae6397'
5
5
  SHA512:
6
- metadata.gz: 238cdc34f19c2b8c45ef4280ddac58f0f10ac6354df28c6d3fadf6d52999f4cfd7c4464c36e8b2c3353dcb11dae5bbb56f29d4fc9c110cea960d2d259952cc9c
7
- data.tar.gz: 0d6a2de37a8b40a4005b6dd6cd9363f4a7f730bf4e474307e15939ce5d902ab7ccfe1bce6e7f4f04d9021f7201783e7d58ad10c51adc17a85c33b9aca282ddca
6
+ metadata.gz: 71849968b06015398fddacfa93e9751c2088426c1a09cb9f83ec67e49e657b11488e3d9b776e8326547ff19f5b18285070ad63817fe2ea382016b2c5ad75bba0
7
+ data.tar.gz: e70b99ec32cffb0ab62f43fe7695bb8dc58795bcdaa385a66494025f5dcdf4445a8f86808fa43e9677526fd30d24291a90acdde806898563e55240c5403e69af
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module Bga
7
+ class Game
8
+ class Image
9
+ common_constructor :game, :suffix
10
+
11
+ IMAGE_URL_PREFIX = 'https://x.boardgamearena.net/data/gamemedia/'
12
+
13
+ # @return [String]
14
+ def fs_object_id
15
+ [game.code, suffix].map(&:parameterize)
16
+ end
17
+
18
+ # @param suffix [String]
19
+ # @return [Pathname]
20
+ def local_path
21
+ download_to_cache unless fs_cache.stored?
22
+ fs_cache.content_path.to_pathname
23
+ end
24
+
25
+ # @return [Addressable::URI]
26
+ def url
27
+ "#{IMAGE_URL_PREFIX}#{game.code}#{suffix}".to_uri
28
+ end
29
+
30
+ private
31
+
32
+ # @return [void]
33
+ def download_to_cache
34
+ fs_cache.send(:assert_directory_on_path)
35
+ ::EacEnvs::Http::Request.new.url(url).response.write_body(fs_cache.content_path)
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module Bga
7
+ class Game
8
+ common_constructor :code
9
+
10
+ # @param suffix [String]
11
+ # @return [EhbrsRubyUtils::Bga::Game::Image]
12
+ def image(suffix)
13
+ ::EhbrsRubyUtils::Bga::Game::Image.new(self, suffix)
14
+ end
15
+
16
+ {
17
+ publisher: '/publisher/0.png',
18
+ banner_medium: '/banner/default_500.jpg',
19
+ banner_large: '/banner/default.jpg',
20
+ box_small: '/box/en_75.png',
21
+ box_medium: '/box/en_180.png',
22
+ box_large: '/box/en_280.png',
23
+ title_medium: '/title/en_500.png',
24
+ title_large: '/title/en_2000.png'
25
+ }.each do |k, suffix|
26
+ define_method "#{k}_image" do
27
+ image(suffix)
28
+ end
29
+ end
30
+
31
+ # @param nth [Integer]
32
+ # @return [Addressable::URI]
33
+ def display_image(nth)
34
+ image("/display/#{nth}.jpg")
35
+ end
36
+
37
+ require_sub __FILE__
38
+ end
39
+ end
40
+ end
@@ -7,8 +7,10 @@ module EhbrsRubyUtils
7
7
  module Bga
8
8
  module Parsers
9
9
  class Table < ::Aranha::Parsers::Html::Item
10
+ GAME_IMAGE_URL_PARSER = %r{/gamemedia/([^/]+)/box/}.to_parser { |m| m[1] }
10
11
  ITEM_XPATH = '/'
11
12
 
13
+ field :game_code, :string, '//meta[@property="og:image"]/@content'
12
14
  field :game_name, :string, './/*[@id = "table_name"]/text()'
13
15
  field :creation_time, :string, './/*[@id = "creationtime"]/text()'
14
16
  field :estimated_duration, :string, './/*[@id = "estimated_duration"]/text()'
@@ -25,8 +27,9 @@ module EhbrsRubyUtils
25
27
  %i[options players].each do |key|
26
28
  r[key] = self.class.const_get(key.to_s.camelize).from_node(r.fetch(key)).data
27
29
  end
28
- r[:creation_time] = process_creation_time(r[:creation_time])
29
- r[:game_conceded] = process_game_conceded(r[:game_conceded])
30
+ %i[creation_time game_code game_conceded].each do |key|
31
+ r[key] = send("process_#{key}", r.fetch(key))
32
+ end
30
33
  r
31
34
  end
32
35
 
@@ -36,6 +39,12 @@ module EhbrsRubyUtils
36
39
  creation_time.gsub('Criado:', '').strip
37
40
  end
38
41
 
42
+ # @param node [String]
43
+ # @return [String]
44
+ def process_game_code(image_url)
45
+ GAME_IMAGE_URL_PARSER.parse!(image_url)
46
+ end
47
+
39
48
  # @param node [Nokogiri::XML::Element]
40
49
  # @return [Boolean]
41
50
  def process_game_conceded(node)
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'ehbrs_ruby_utils/bga/game'
3
4
  require 'ehbrs_ruby_utils/bga/parsers/table'
4
5
  require 'ehbrs_ruby_utils/bga/parsers/table/options'
5
6
  require 'ehbrs_ruby_utils/bga/urls'
@@ -33,6 +34,11 @@ module EhbrsRubyUtils
33
34
 
34
35
  private
35
36
 
37
+ # @return [EhbrsRubyUtils::Bga::Game]
38
+ def game_uncached
39
+ ::EhbrsRubyUtils::Bga::Game.new(game_code)
40
+ end
41
+
36
42
  SET_ITEMS.each do |item|
37
43
  define_method "#{item}_uncached" do
38
44
  data.fetch(item).map do |item_data|
@@ -21,6 +21,11 @@ module EhbrsRubyUtils
21
21
  }.freeze
22
22
  SECTION_SEPARATOR = "\n\n"
23
23
 
24
+ # @return [Pathname]
25
+ def image_local_path
26
+ table.game.box_large_image.local_path
27
+ end
28
+
24
29
  def to_s
25
30
  [root_items_to_s, players_to_s, options_to_s].map(&:strip).join(SECTION_SEPARATOR)
26
31
  end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module Bga
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ehbrs_ruby_utils/bga/session'
4
+ require 'ehbrs_ruby_utils/executables'
5
+ require 'ehbrs_ruby_utils/mudslide/message'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module EhbrsRubyUtils
9
+ module Gjt1
10
+ class Manager
11
+ include ::Singleton
12
+ acts_as_abstract :bga_usernam, :bga_password, :whatsapp_recipient
13
+
14
+ # @param table [EhbrsRubyUtils::Bga::Table]
15
+ # @return [void]
16
+ def bga_table_notify(table)
17
+ formatter = ::EhbrsRubyUtils::Bga::TableWhatsappFormatter.new(table)
18
+ whatsapp_send(formatter.to_s, formatter.image_local_path)
19
+ end
20
+
21
+ def on_bga_logged_session(&block)
22
+ bga_session = new_bga_session
23
+ begin
24
+ bga_session.on_logged { block.call(bga_session) }
25
+ ensure
26
+ bga_session.close
27
+ bga_session = nil
28
+ end
29
+ end
30
+
31
+ # @return [EhbrsRubyUtils::Bga::Session] Cria uma nova sessão BGA.
32
+ def new_bga_session
33
+ ::EhbrsRubyUtils::Bga::Session.new(bga_username, bga_password)
34
+ end
35
+
36
+ # @param message [String]
37
+ # @param image_path [Pathname]
38
+ # @return [void]
39
+ def whatsapp_send(message, image_path = nil)
40
+ ::EhbrsRubyUtils::Mudslide::Message.new.text(message).image_path(image_path)
41
+ .recipient(whatsapp_recipient).deliver
42
+ end
43
+
44
+ private
45
+
46
+ def mudslide_run(*args)
47
+ ::EhbrsRubyUtils::Executables.mudslide.command(*args).system!
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module Gjt1
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'ehbrs_ruby_utils/executables'
5
+
6
+ module EhbrsRubyUtils
7
+ module Mudslide
8
+ class Message
9
+ acts_as_immutable
10
+ immutable_accessor :image_path, :recipient, :text
11
+
12
+ def deliver
13
+ raise 'No recipient set' if recipient.blank?
14
+
15
+ if image_path.present?
16
+ deliver_image
17
+ elsif text.present?
18
+ deliver_text
19
+ else
20
+ deliver
21
+ end
22
+ end
23
+
24
+ private
25
+
26
+ # @return [void]
27
+ def deliver_image
28
+ args = ['send-image']
29
+ text.if_present { |_v| args += ['--caption', text] }
30
+ mudslide_run(*args, recipient, image_path)
31
+ end
32
+
33
+ # @return [void]
34
+ def deliver_text
35
+ mudslide_run('send', recipient, text)
36
+ end
37
+
38
+ # @return [void]
39
+ def mudslide_run(*args)
40
+ ::EhbrsRubyUtils::Executables.mudslide.command(*args).system!
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EhbrsRubyUtils
6
+ module Mudslide
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EhbrsRubyUtils
4
- VERSION = '0.27.1'
4
+ VERSION = '0.29.0'
5
5
  end
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: puertorico
2
3
  :game_name: Puerto Rico
3
4
  :creation_time: 24/09/2022 às 22:41
4
5
  :estimated_duration: 2h31
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: thecrew
2
3
  :game_name: A Tripulação (The Crew)
3
4
  :creation_time: 15/10/2022 às 17:49
4
5
  :estimated_duration: 3.6 dias
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: puertorico
2
3
  :game_name: Puerto Rico
3
4
  :creation_time: 14/03/2023 às 08:36
4
5
  :estimated_duration: 35 dias
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: puertorico
2
3
  :game_name: Puerto Rico
3
4
  :creation_time: 16/03/2023 às 22:13
4
5
  :estimated_duration: 35 dias
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: puertorico
2
3
  :game_name: Puerto Rico
3
4
  :creation_time: 18/04/2023 às 16:25
4
5
  :estimated_duration: 24 dias
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: quoridor
2
3
  :game_name: Quoridor
3
4
  :creation_time: 03/05/2023 às 23:40
4
5
  :estimated_duration: 5 dias
@@ -1,4 +1,5 @@
1
1
  ---
2
+ :game_code: koikoi
2
3
  :game_name: Koi-koi
3
4
  :creation_time: 04/05/2023 às 11:13
4
5
  :estimated_duration: 5 dias
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ehbrs_ruby_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.1
4
+ version: 0.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo H. Bogoni
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-10 00:00:00.000000000 Z
11
+ date: 2023-06-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha
@@ -113,6 +113,9 @@ dependencies:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
115
  version: '0.9'
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: 0.9.1
116
119
  type: :runtime
117
120
  prerelease: false
118
121
  version_requirements: !ruby/object:Gem::Requirement
@@ -120,6 +123,9 @@ dependencies:
120
123
  - - "~>"
121
124
  - !ruby/object:Gem::Version
122
125
  version: '0.9'
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: 0.9.1
123
129
  - !ruby/object:Gem::Dependency
124
130
  name: eac_ruby_utils
125
131
  requirement: !ruby/object:Gem::Requirement
@@ -231,6 +237,9 @@ files:
231
237
  - ".rspec"
232
238
  - ".rubocop.yml"
233
239
  - lib/ehbrs_ruby_utils.rb
240
+ - lib/ehbrs_ruby_utils/bga.rb
241
+ - lib/ehbrs_ruby_utils/bga/game.rb
242
+ - lib/ehbrs_ruby_utils/bga/game/image.rb
234
243
  - lib/ehbrs_ruby_utils/bga/parsers/game_stats.rb
235
244
  - lib/ehbrs_ruby_utils/bga/parsers/game_stats/players.rb
236
245
  - lib/ehbrs_ruby_utils/bga/parsers/table.rb
@@ -264,6 +273,10 @@ files:
264
273
  - lib/ehbrs_ruby_utils/fs/selected.rb
265
274
  - lib/ehbrs_ruby_utils/fs/selected/build.rb
266
275
  - lib/ehbrs_ruby_utils/fs/selected/build_file.rb
276
+ - lib/ehbrs_ruby_utils/gjt1.rb
277
+ - lib/ehbrs_ruby_utils/gjt1/manager.rb
278
+ - lib/ehbrs_ruby_utils/mudslide.rb
279
+ - lib/ehbrs_ruby_utils/mudslide/message.rb
267
280
  - lib/ehbrs_ruby_utils/music.rb
268
281
  - lib/ehbrs_ruby_utils/music/lyrics_book.rb
269
282
  - lib/ehbrs_ruby_utils/music/lyrics_book/album.rb
@@ -393,50 +406,50 @@ signing_key:
393
406
  specification_version: 4
394
407
  summary: Utilities for EHB/RS's Ruby projects.
395
408
  test_files:
396
- - spec/rubocop_check_spec.rb
409
+ - spec/spec_helper.rb
410
+ - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec.rb
411
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.target.yaml
412
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.target.yaml
413
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.source.yaml
414
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.source.yaml
415
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.source.yaml
416
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.target.yaml
417
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.target.yaml
418
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.source.yaml
419
+ - spec/lib/ehbrs_ruby_utils/videos/resolution_spec.rb
420
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec.rb
421
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec.rb
422
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/counterpart_s01e01.target.yaml
423
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/wire-season-1-page-1.target.yaml
424
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/counterpart_s01e01.source.html
425
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/wire-season-1-page-1.source.html
426
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec_files/countepart.source.html
427
+ - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec_files/countepart.target.yaml
428
+ - spec/lib/ehbrs_ruby_utils/videos/stream_spec.rb
397
429
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_308782287.target.yaml
398
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_356513708.target.yaml
399
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_302873643.target.yaml
400
430
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_368448439.target.yaml
401
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_368448439.source.html
402
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_357408039.source.html
403
431
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_356513708.source.html
432
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_357408039.source.html
433
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_356513708.target.yaml
434
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373747455.target.yaml
435
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_302873643.target.yaml
404
436
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373747455.source.html
405
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373602409.source.html
406
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373602409.target.yaml
407
437
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_302873643.source.html
408
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_357408039.target.yaml
438
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373602409.target.yaml
409
439
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_308782287.source.html
410
- - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373747455.target.yaml
411
- - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/2.target.yaml
412
- - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/2.source.html
440
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_368448439.source.html
441
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_373602409.source.html
442
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec_files/table_357408039.target.yaml
413
443
  - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/1.source.html
444
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/2.target.yaml
414
445
  - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/1.target.yaml
446
+ - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec_files/2.source.html
415
447
  - spec/lib/ehbrs_ruby_utils/bga/parsers/game_stats_spec.rb
416
448
  - spec/lib/ehbrs_ruby_utils/bga/parsers/table_spec.rb
417
- - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec.rb
418
- - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/minimum.target.yaml
419
- - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/ehbrs_music1.source.yaml
420
449
  - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/minimum.source.yaml
450
+ - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/minimum.target.yaml
421
451
  - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/ehbrs_music1.target.yaml
422
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec_files/countepart.target.yaml
423
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec_files/countepart.source.html
424
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/title_spec.rb
425
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec.rb
426
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/counterpart_s01e01.source.html
427
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/wire-season-1-page-1.target.yaml
428
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/wire-season-1-page-1.source.html
429
- - spec/lib/ehbrs_ruby_utils/videos/opensubtitles/parsers/episode_spec_files/counterpart_s01e01.target.yaml
430
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec.rb
431
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.target.yaml
432
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.target.yaml
433
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.target.yaml
434
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.target.yaml
435
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_audio.source.yaml
436
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_attachment.source.yaml
437
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_subtitle.source.yaml
438
- - spec/lib/ehbrs_ruby_utils/videos/stream_spec_files/menina_ovo_video.source.yaml
439
- - spec/lib/ehbrs_ruby_utils/videos/resolution_spec.rb
440
- - spec/spec_helper.rb
452
+ - spec/lib/ehbrs_ruby_utils/circular_list_spreader_spec_files/ehbrs_music1.source.yaml
453
+ - spec/rubocop_check_spec.rb
441
454
  - ".rubocop.yml"
442
455
  - ".rspec"