ruripara 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9ca5710d0c676cb1a2ed733e803f35dcdc52b404f97a67e08cd4454901557609
4
- data.tar.gz: ee89b56ecd399e0988ff2dc61c76296d23ae71233ea28d7e704e50f56a2ad2e1
3
+ metadata.gz: f7ad941fe32adf2807da1b8c9becaa75485a97b7700376a41a714b91d5005876
4
+ data.tar.gz: 121ff559428a154d535f02ddac500ac43ef4df86c0981100b8d776a99df4860b
5
5
  SHA512:
6
- metadata.gz: 70888a929598160979a8d269fea8130c00ccb7d4603610312f3aaae002ff47f33fae1bad0a8ef5e6739ace7466639c279c7082711541be2ff551fd53a4f3415d
7
- data.tar.gz: 1a471529ae133a7cb33929b6a7708fc3c209f26a4eefe643c031ab201d07dfadbec14335b9ba489cee7b52594e5ff2dd75623704c492ceede4d0996fb7ed18c1
6
+ metadata.gz: 48668d09b74fef53c5a09f659efb88a9a1e7fb280634789d3e419a0eb4edc4a553955dc7f06c7450c134c9eb9f79404dd4c2030c6f0dcd16076bc14d3d4beaa6
7
+ data.tar.gz: a884db4cb27543f879e01450b0914bbeada45f35591ccb92465a0931a65606bf3f804c1fc8c6ad802eb029070afe142c0a7ceb93c0d91d4a18957043140f4a6f
@@ -0,0 +1,34 @@
1
+ version: 2
2
+ jobs:
3
+ build:
4
+ docker:
5
+ - image: circleci/ruby:2.5.1
6
+
7
+ working_directory: ~/repo
8
+
9
+ steps:
10
+ - checkout
11
+
12
+ - run:
13
+ name: install dependencies
14
+ command: |
15
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
16
+
17
+ - run:
18
+ name: run rubocop
19
+ command: |
20
+ bundle exec rubocop
21
+
22
+ - run:
23
+ name: run tests
24
+ command: |
25
+ mkdir /tmp/test-results
26
+ bundle exec rspec --format progress \
27
+ --out /tmp/test-results/rspec.xml \
28
+ --format progress
29
+
30
+ - store_test_results:
31
+ path: /tmp/test-results
32
+ - store_artifacts:
33
+ path: /tmp/test-results
34
+ destination: test-results
@@ -0,0 +1,16 @@
1
+ Style/StringLiterals:
2
+ EnforcedStyle: double_quotes
3
+
4
+ Style/Documentation:
5
+ Enabled: false
6
+
7
+ Metrics/LineLength:
8
+ Max: 90
9
+
10
+ Layout/SpaceInsideBlockBraces:
11
+ Enabled: false
12
+
13
+ Style/PercentLiteralDelimiters:
14
+ PreferredDelimiters:
15
+ '%i': ()
16
+ '%q': {}
data/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Ruripara
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/ruripara.svg)](https://badge.fury.io/rb/ruripara)
4
+
5
+ [![CircleCI](https://circleci.com/gh/yensaki/ruripara/tree/master.svg?style=svg)](https://circleci.com/gh/yensaki/ruripara/tree/master)
6
+
3
7
  This gem will be all about Pripara.
4
8
  You can get Pripara data, easily.
5
9
 
@@ -25,7 +29,16 @@ Or install it yourself as:
25
29
  require 'ruripara'
26
30
  girl = Pripara::Idol.find_by(name: '南みれぃ')
27
31
  girl.cast_name
28
- # => '芹澤優'
32
+ # => '芹澤優'
33
+ girl.chram.name
34
+ # => ポップ
35
+
36
+ brands = Pripara::Brand.all
37
+ brand = brands.first
38
+ brand.name
39
+ # => Twinkle Ribbon
40
+ brand.charm.name
41
+ # => ラブリー
29
42
  ```
30
43
 
31
44
  ## Contributing
data/Rakefile CHANGED
@@ -3,4 +3,4 @@ require "rspec/core/rake_task"
3
3
 
4
4
  RSpec::Core::RakeTask.new(:spec)
5
5
 
6
- task :default => :spec
6
+ task defaul: :spec
@@ -0,0 +1,72 @@
1
+ - id: 1
2
+ name: TwinkleRibbon
3
+ kana: トゥインクルリボン
4
+ charm_id: 1
5
+ - id: 2
6
+ name: CandyAlamode
7
+ kana: キャンディアラモード
8
+ charm_id: 2
9
+ - id: 3
10
+ name: HolicTrick
11
+ kana: ホリックトリック
12
+ charm_id: 3
13
+ - id: 4
14
+ name: BabyMonster
15
+ kana: ベイビーモンスター
16
+ charm_id: 3
17
+ - id: 5
18
+ name: FortuneParty
19
+ kana: フォーチュンパーティー
20
+ charm_id: 2
21
+ - id: 6
22
+ name: MarionetteMu
23
+ kana: マリオネットミュー
24
+ charm_id: 1
25
+ - id: 7
26
+ name: DreamingGirl
27
+ kana: ドリーミングガール
28
+ charm_id: 6
29
+ - id: 8
30
+ name: PrismStone
31
+ kana: プリズムストーン
32
+ charm_id: 6
33
+ - id: 9
34
+ name: SilkyHeart
35
+ kana: シルキーハート
36
+ charm_id: 1
37
+ - id: 10
38
+ name: HolicTrick classic
39
+ kana: ホリックトリッククラシック
40
+ charm_id: 3
41
+ - id: 11
42
+ name: CocoFlower
43
+ kana: ココフラワー
44
+ charm_id: 4
45
+ - id: 12
46
+ name: CandyAlamode more
47
+ kana: キャンディアラモードモア
48
+ charm_id: 2
49
+ - id: 13
50
+ name: BrilliantPrince
51
+ kana: ブリリアントプリンス
52
+ charm_id: 5
53
+ - id: 14
54
+ name: RosetteJewel
55
+ kana: ロゼットジュエル
56
+ charm_id: 6 # temporal
57
+ - id: 15
58
+ name: LOVEDEVI
59
+ kana: ラブデビ
60
+ charm_id: 3
61
+ - id: 16
62
+ name: DearCrown
63
+ kana: ディアクラウン
64
+ charm_id: 5
65
+ - id: 17
66
+ name: SunnyZoo
67
+ kana: サニーズー
68
+ charm_id: 4
69
+ - id: 18
70
+ name: TwinkleRibbon Sweet
71
+ kana: トゥインクルリボンスウィート
72
+ charm_id: 1
@@ -0,0 +1,24 @@
1
+ - id: 1
2
+ slug: lovely
3
+ name: ラブリー
4
+ color: pink
5
+ - id: 2
6
+ slug: pop
7
+ name: ポップ
8
+ color: blue
9
+ - id: 3
10
+ slug: cool
11
+ name: クール
12
+ color: purple
13
+ - id: 4
14
+ slug: natural
15
+ name: ナチュラル
16
+ color: green
17
+ - id: 5
18
+ slug: celeb
19
+ name: セレブ
20
+ color: yellow
21
+ - id: 6
22
+ slug: premium
23
+ name: プレミアム
24
+ color: white
@@ -2,87 +2,147 @@
2
2
  slug: laala
3
3
  name: 真中らぁら
4
4
  cast_name: 茜屋日海夏
5
+ charm_id: 1
5
6
  # birthday: 11/20
6
7
  # blood_type: O
7
8
  # favorite_brand: Twinkle Ribbon
8
- # charm: ラブリー
9
9
  - id: 2
10
10
  slug: mirei
11
11
  name: 南みれぃ
12
12
  cast_name: 芹澤優
13
+ charm_id: 2
13
14
  - id: 3
14
15
  slug: sophie
15
16
  name: 北条そふぃ
16
17
  cast_name: 久保田未夢
18
+ charm_id: 3
17
19
  - id: 4
18
20
  slug: sion
19
21
  name: 東堂シオン
20
22
  cast_name: 山北早紀
23
+ charm_id: 3
21
24
  - id: 5
22
25
  slug: dorothy
23
26
  name: ドロシー・ウェスト
24
27
  cast_name: 澁谷梓希
28
+ charm_id: 2
25
29
  - id: 6
26
30
  slug: reona
27
31
  name: レオナ・ウェスト
28
32
  cast_name: 若井友希
33
+ charm_id: 2
29
34
  - id: 7
30
35
  slug: falulu
31
36
  name: ファルル
32
37
  cast_name: 赤﨑千夏
38
+ charm_id: 1
33
39
  - id: 8
34
40
  slug: cosmo
35
41
  name: 北条コスモ
36
42
  cast_name: 山本希望
43
+ charm_id: 3
37
44
  - id: 9
38
45
  slug: aroma
39
46
  name: 黒須あろま
40
47
  cast_name: 牧野由依
48
+ charm_id: 3
41
49
  - id: 10
42
50
  slug: mikan
43
51
  name: 白玉みかん
44
52
  cast_name: 渡部優衣
53
+ charm_id: 1
45
54
  - id: 11
46
55
  slug: fuwari
47
56
  name: 緑風ふわり
48
57
  cast_name: 佐藤あずさ
58
+ charm_id: 4
49
59
  - id: 12
50
60
  slug: hibiki
51
61
  name: 紫京院ひびき
52
62
  cast_name: 斎賀みつき
63
+ charm_id: 5
53
64
  - id: 13
54
65
  slug: galulu
55
66
  name: ガァルル
56
67
  cast_name: 真田アサミ
68
+ charm_id: 1
57
69
  - id: 14
58
70
  slug: non
59
71
  name: 真中のん
60
72
  cast_name: 田中美海
73
+ charm_id: 1 # maybe
61
74
  - id: 15
62
75
  slug: chiri
63
76
  name: 月川ちり
64
77
  cast_name: 大森日雅
78
+ charm_id: 1
65
79
  - id: 16
66
80
  slug: pepper
67
81
  name: 太陽ペッパー
68
82
  cast_name: 山下七海
83
+ charm_id: 4
69
84
  - id: 17
70
85
  slug: ajimi
71
86
  name: 黄木あじみ
72
87
  cast_name: 上田麗奈
88
+ charm_id: 2
73
89
  - id: 18
74
90
  slug: chanko
75
91
  name: 鍋島ちゃん子
76
92
  cast_name: 赤﨑千夏
93
+ charm_id: 3
77
94
  - id: 19
78
95
  slug: jury
79
96
  name: ジュリィ
80
97
  cast_name: 上田麗奈
98
+ charm_id: 6 # temporal
81
99
  - id: 20
82
100
  slug: janis
83
101
  name: ジャニス
84
102
  cast_name: 豊崎愛生
103
+ charm_id: 6 # temporal
85
104
  - id: 21
86
105
  slug: meganee
87
106
  name: 赤井めが姉ぇ
88
107
  cast_name: 伊藤かな恵
108
+ charm_id: ~
109
+ - id: 22
110
+ slug: kanon
111
+ name: かのん
112
+ cast_name: 田中美海
113
+ charm_id: 1
114
+ - id: 23
115
+ slug: pinon
116
+ name: ぴのん
117
+ cast_name: 田中美海
118
+ charm_id: 2
119
+ - id: 24
120
+ slug: junon
121
+ name: じゅのん
122
+ cast_name: 田中美海
123
+ charm_id: 3
124
+ - id: 25
125
+ slug: eiko
126
+ name: 栄子
127
+ cast_name: ブリドカットセーラ恵美
128
+ charm_id: 1 # maybe
129
+ - id: 26
130
+ slug: love
131
+ name: 栃乙女愛
132
+ cast_name: 森下由樹子
133
+ charm_id: 3 # maye
134
+ - id: 27
135
+ slug: cupicon
136
+ name: 白井ななみ
137
+ cast_name: 南條愛乃
138
+ charm_id: 2 # maybe
139
+ - id: 28
140
+ slug: lantern
141
+ name: 蘭たん
142
+ cast_name: いのくちゆか
143
+ charm_id: ~
144
+ - id: 29
145
+ slug: iroha
146
+ name: 香川いろは
147
+ cast_name: 大久保瑠美
148
+ charm_id: ~
@@ -1,8 +1,10 @@
1
1
  require "ruripara/version"
2
2
  require "yaml"
3
3
  require "ruripara/base"
4
+ require "ruripara/charm"
4
5
  require "ruripara/idol"
5
6
  require "ruripara/song"
7
+ require "ruripara/brand"
6
8
 
7
9
  module Pripara
8
10
  # Your code goes here...
@@ -1,5 +1,7 @@
1
1
  module Pripara
2
2
  class Base
3
+ attr_reader :attributes
4
+
3
5
  def initialize(attributes)
4
6
  @attributes = attributes.map { |k, v| [k.to_sym, v] }.to_h
5
7
  end
@@ -21,9 +23,11 @@ module Pripara
21
23
  private
22
24
 
23
25
  def config
24
- return @config if @config
25
- config_file = File.join(File.dirname(__FILE__), '../../config/', config_file_name)
26
- @config = YAML.load_file(config_file)
26
+ @config ||= YAML.load_file(config_file_path)
27
+ end
28
+
29
+ def config_file_path
30
+ File.join(File.dirname(__FILE__), "../../config/", config_file_name)
27
31
  end
28
32
 
29
33
  def config_file_name
@@ -0,0 +1,27 @@
1
+ module Pripara
2
+ class Brand < Base
3
+ ATTR_KEYS = %i(id name kana charm_id).freeze
4
+
5
+ ATTR_KEYS.each do |key|
6
+ define_method key do
7
+ @attributes[key.to_sym]
8
+ end
9
+ end
10
+
11
+ def charm
12
+ @charm ||= Pripara::Charm.find_by(id: charm_id) if charm_id
13
+ end
14
+
15
+ class << self
16
+ def config_file_name
17
+ "brands.yml"
18
+ end
19
+
20
+ private
21
+
22
+ def attr_keys
23
+ ATTR_KEYS
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,23 @@
1
+ module Pripara
2
+ class Charm < Base
3
+ ATTR_KEYS = %i(id slug name).freeze
4
+
5
+ ATTR_KEYS.each do |key|
6
+ define_method key do
7
+ @attributes[key.to_sym]
8
+ end
9
+ end
10
+
11
+ class << self
12
+ def config_file_name
13
+ "charms.yml"
14
+ end
15
+
16
+ private
17
+
18
+ def attr_keys
19
+ ATTR_KEYS
20
+ end
21
+ end
22
+ end
23
+ end
@@ -1,16 +1,20 @@
1
1
  module Pripara
2
2
  class Idol < Base
3
- ATTR_KEYS = %i(slug name cast_name).freeze
3
+ ATTR_KEYS = %i(slug name cast_name charm_id).freeze
4
4
 
5
5
  ATTR_KEYS.each do |key|
6
6
  define_method key do
7
- @attributes[key.to_s]
7
+ @attributes[key.to_sym]
8
8
  end
9
9
  end
10
10
 
11
+ def charm
12
+ @charm ||= Pripara::Charm.find_by(id: charm_id) if charm_id
13
+ end
14
+
11
15
  class << self
12
16
  def config_file_name
13
- 'idols.yml'
17
+ "idols.yml"
14
18
  end
15
19
 
16
20
  private
@@ -20,4 +24,4 @@ module Pripara
20
24
  end
21
25
  end
22
26
  end
23
- end
27
+ end
@@ -4,13 +4,13 @@ module Pripara
4
4
 
5
5
  ATTR_KEYS.each do |key|
6
6
  define_method key do
7
- @attributes[key.to_s]
7
+ @attributes[key.to_sym]
8
8
  end
9
9
  end
10
10
 
11
11
  class << self
12
12
  def config_file_name
13
- 'songs.yml'
13
+ "songs.yml"
14
14
  end
15
15
 
16
16
  private
@@ -1,3 +1,3 @@
1
1
  module Ruripara
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1".freeze
3
3
  end
@@ -1,5 +1,4 @@
1
-
2
- lib = File.expand_path("../lib", __FILE__)
1
+ lib = File.expand_path("lib", __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require "ruripara/version"
5
4
 
@@ -9,8 +8,8 @@ Gem::Specification.new do |spec|
9
8
  spec.authors = ["yensaki"]
10
9
  spec.email = ["mov.an.double@gmail.com"]
11
10
 
12
- spec.summary = %q{All about Pripara}
13
- spec.description = %q{All about Pripara}
11
+ spec.summary = "All about Pripara"
12
+ spec.description = "All about Pripara"
14
13
  spec.homepage = "https://github.com/yensaki/ruripara"
15
14
  spec.license = "MIT"
16
15
 
@@ -24,4 +23,5 @@ Gem::Specification.new do |spec|
24
23
  spec.add_development_dependency "bundler", "~> 1.16"
25
24
  spec.add_development_dependency "rake", "~> 10.0"
26
25
  spec.add_development_dependency "rspec", "~> 3.0"
26
+ spec.add_development_dependency "rubocop", "0.57.2"
27
27
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruripara
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - yensaki
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-06-28 00:00:00.000000000 Z
11
+ date: 2018-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '3.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubocop
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '='
60
+ - !ruby/object:Gem::Version
61
+ version: 0.57.2
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '='
67
+ - !ruby/object:Gem::Version
68
+ version: 0.57.2
55
69
  description: All about Pripara
56
70
  email:
57
71
  - mov.an.double@gmail.com
@@ -59,8 +73,10 @@ executables: []
59
73
  extensions: []
60
74
  extra_rdoc_files: []
61
75
  files:
76
+ - ".circleci/config.yml"
62
77
  - ".gitignore"
63
78
  - ".rspec"
79
+ - ".rubocop.yml"
64
80
  - ".travis.yml"
65
81
  - Gemfile
66
82
  - LICENSE.txt
@@ -68,10 +84,14 @@ files:
68
84
  - Rakefile
69
85
  - bin/console
70
86
  - bin/setup
87
+ - config/brands.yml
88
+ - config/charms.yml
71
89
  - config/idols.yml
72
90
  - config/songs.yml
73
91
  - lib/ruripara.rb
74
92
  - lib/ruripara/base.rb
93
+ - lib/ruripara/brand.rb
94
+ - lib/ruripara/charm.rb
75
95
  - lib/ruripara/idol.rb
76
96
  - lib/ruripara/song.rb
77
97
  - lib/ruripara/version.rb