codebreaker_vk 0.1.0 → 0.2.0
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 +4 -4
- data/.fasterer.yml +22 -0
- data/.gitignore +2 -0
- data/.overcommit.yml +56 -0
- data/.ruby-gemset +1 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +54 -2
- data/bin/console +0 -7
- data/bin/setup +0 -2
- data/codebreaker_vk-0.1.0.gem +0 -0
- data/codebreaker_vk.gemspec +1 -1
- data/lib/codebreaker_vk/config.rb +17 -0
- data/lib/codebreaker_vk/errors/autoload.rb +5 -0
- data/lib/codebreaker_vk/errors/difficulty_level_error.rb +5 -0
- data/lib/codebreaker_vk/errors/format_error.rb +5 -0
- data/lib/codebreaker_vk/errors/max_hint_error.rb +5 -0
- data/lib/codebreaker_vk/game.rb +89 -0
- data/lib/codebreaker_vk/game_process.rb +43 -0
- data/lib/codebreaker_vk/version.rb +3 -1
- data/lib/codebreaker_vk.rb +6 -1
- metadata +16 -11
- data/.idea/.rakeTasks +0 -7
- data/.idea/codebreaker_vk.iml +0 -26
- data/.idea/misc.xml +0 -7
- data/.idea/modules.xml +0 -8
- data/.idea/vcs.xml +0 -6
- data/.idea/workspace.xml +0 -263
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f7bedbd8a588ed943975d03c086942b9c7fcfa44f310b325ac89b51b55f2f20b
|
|
4
|
+
data.tar.gz: b6f322d1d155f676d10d479cf690e2dd49aea1346018f2a9f78f76fdd0b9eb35
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7aba7aff1db9db5aef5722614828a8c60cd4a81f730ed81823d8176b55b7cb9b5e847eaa1f63d51169590b7e5aaaf9986f186c96f23c1a70390175174b4a2c57
|
|
7
|
+
data.tar.gz: c7f2a4243ab18a1b69c60ea443e5f3b4f24e6e2c5e628f96a77a41646c5973904ab9c20ee19e0e19730e653c07ebea100d2e0ddb122f1c5c89f7785ae0a56095
|
data/.fasterer.yml
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
speedups:
|
|
2
|
+
rescue_vs_respond_to: true
|
|
3
|
+
module_eval: true
|
|
4
|
+
shuffle_first_vs_sample: true
|
|
5
|
+
for_loop_vs_each: true
|
|
6
|
+
each_with_index_vs_while: false
|
|
7
|
+
map_flatten_vs_flat_map: true
|
|
8
|
+
reverse_each_vs_reverse_each: true
|
|
9
|
+
select_first_vs_detect: true
|
|
10
|
+
sort_vs_sort_by: true
|
|
11
|
+
fetch_with_argument_vs_block: true
|
|
12
|
+
keys_each_vs_each_key: true
|
|
13
|
+
hash_merge_bang_vs_hash_brackets: true
|
|
14
|
+
block_vs_symbol_to_proc: true
|
|
15
|
+
proc_call_vs_yield: true
|
|
16
|
+
gsub_vs_tr: true
|
|
17
|
+
select_last_vs_reverse_detect: true
|
|
18
|
+
getter_vs_attr_reader: true
|
|
19
|
+
setter_vs_attr_writer: true
|
|
20
|
+
|
|
21
|
+
exclude_paths:
|
|
22
|
+
- spec/**/*.rb
|
data/.gitignore
CHANGED
data/.overcommit.yml
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
CommitMsg:
|
|
2
|
+
CapitalizedSubject:
|
|
3
|
+
enabled: false
|
|
4
|
+
|
|
5
|
+
EmptyMessage:
|
|
6
|
+
enabled: false
|
|
7
|
+
|
|
8
|
+
TrailingPeriod:
|
|
9
|
+
enabled: true
|
|
10
|
+
|
|
11
|
+
TextWidth:
|
|
12
|
+
enabled: false
|
|
13
|
+
|
|
14
|
+
PreCommit:
|
|
15
|
+
ALL:
|
|
16
|
+
on_warn: fail
|
|
17
|
+
|
|
18
|
+
AuthorEmail:
|
|
19
|
+
enabled: false
|
|
20
|
+
|
|
21
|
+
AuthorName:
|
|
22
|
+
enabled: false
|
|
23
|
+
|
|
24
|
+
MergeConflicts:
|
|
25
|
+
enabled: true
|
|
26
|
+
|
|
27
|
+
YamlSyntax:
|
|
28
|
+
enabled: true
|
|
29
|
+
|
|
30
|
+
BundleCheck:
|
|
31
|
+
enabled: true
|
|
32
|
+
|
|
33
|
+
Rubocop:
|
|
34
|
+
enabled: true
|
|
35
|
+
|
|
36
|
+
Fasterer:
|
|
37
|
+
enabled: true
|
|
38
|
+
|
|
39
|
+
BundleAudit:
|
|
40
|
+
enabled: true
|
|
41
|
+
|
|
42
|
+
RSpec:
|
|
43
|
+
enabled: true
|
|
44
|
+
|
|
45
|
+
BundleOutdated:
|
|
46
|
+
enabled: true
|
|
47
|
+
|
|
48
|
+
ExecutePermissions:
|
|
49
|
+
enabled: false
|
|
50
|
+
|
|
51
|
+
ForbiddenBranches:
|
|
52
|
+
enabled: true
|
|
53
|
+
branch_patterns: ['master']
|
|
54
|
+
|
|
55
|
+
LineEndings:
|
|
56
|
+
enabled: true
|
data/.ruby-gemset
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
codebreaker_vk
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,12 +1,36 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
codebreaker_vk (0.
|
|
4
|
+
codebreaker_vk (0.2.0)
|
|
5
5
|
|
|
6
6
|
GEM
|
|
7
7
|
remote: https://rubygems.org/
|
|
8
8
|
specs:
|
|
9
|
+
ast (2.4.0)
|
|
10
|
+
childprocess (0.9.0)
|
|
11
|
+
ffi (~> 1.0, >= 1.0.11)
|
|
12
|
+
coderay (1.1.2)
|
|
13
|
+
colorize (0.8.1)
|
|
9
14
|
diff-lcs (1.3)
|
|
15
|
+
docile (1.3.2)
|
|
16
|
+
fasterer (0.5.1)
|
|
17
|
+
colorize (~> 0.7)
|
|
18
|
+
ruby_parser (>= 3.13.0)
|
|
19
|
+
ffi (1.11.1)
|
|
20
|
+
iniparse (1.4.4)
|
|
21
|
+
jaro_winkler (1.5.3)
|
|
22
|
+
json (2.2.0)
|
|
23
|
+
method_source (0.9.2)
|
|
24
|
+
overcommit (0.48.1)
|
|
25
|
+
childprocess (~> 0.6, >= 0.6.3)
|
|
26
|
+
iniparse (~> 1.4)
|
|
27
|
+
parallel (1.17.0)
|
|
28
|
+
parser (2.6.3.0)
|
|
29
|
+
ast (~> 2.4.0)
|
|
30
|
+
pry (0.12.2)
|
|
31
|
+
coderay (~> 1.1.0)
|
|
32
|
+
method_source (~> 0.9.0)
|
|
33
|
+
rainbow (3.0.0)
|
|
10
34
|
rake (10.5.0)
|
|
11
35
|
rspec (3.8.0)
|
|
12
36
|
rspec-core (~> 3.8.0)
|
|
@@ -21,6 +45,27 @@ GEM
|
|
|
21
45
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
22
46
|
rspec-support (~> 3.8.0)
|
|
23
47
|
rspec-support (3.8.2)
|
|
48
|
+
rubocop (0.70.0)
|
|
49
|
+
jaro_winkler (~> 1.5.1)
|
|
50
|
+
parallel (~> 1.10)
|
|
51
|
+
parser (>= 2.6)
|
|
52
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
53
|
+
ruby-progressbar (~> 1.7)
|
|
54
|
+
unicode-display_width (>= 1.4.0, < 1.7)
|
|
55
|
+
rubocop-performance (1.3.0)
|
|
56
|
+
rubocop (>= 0.68.0)
|
|
57
|
+
rubocop-rspec (1.33.0)
|
|
58
|
+
rubocop (>= 0.60.0)
|
|
59
|
+
ruby-progressbar (1.10.1)
|
|
60
|
+
ruby_parser (3.13.1)
|
|
61
|
+
sexp_processor (~> 4.9)
|
|
62
|
+
sexp_processor (4.12.1)
|
|
63
|
+
simplecov (0.17.0)
|
|
64
|
+
docile (~> 1.1)
|
|
65
|
+
json (>= 1.8, < 3)
|
|
66
|
+
simplecov-html (~> 0.10.0)
|
|
67
|
+
simplecov-html (0.10.2)
|
|
68
|
+
unicode-display_width (1.6.0)
|
|
24
69
|
|
|
25
70
|
PLATFORMS
|
|
26
71
|
ruby
|
|
@@ -28,8 +73,15 @@ PLATFORMS
|
|
|
28
73
|
DEPENDENCIES
|
|
29
74
|
bundler (~> 2.0)
|
|
30
75
|
codebreaker_vk!
|
|
76
|
+
fasterer (~> 0.5.1)
|
|
77
|
+
overcommit
|
|
78
|
+
pry (~> 0.12.2)
|
|
31
79
|
rake (~> 10.0)
|
|
32
|
-
rspec (~> 3.
|
|
80
|
+
rspec (~> 3.8)
|
|
81
|
+
rubocop (~> 0.70.0)
|
|
82
|
+
rubocop-performance (~> 1.3)
|
|
83
|
+
rubocop-rspec (~> 1.33)
|
|
84
|
+
simplecov
|
|
33
85
|
|
|
34
86
|
BUNDLED WITH
|
|
35
87
|
2.0.2
|
data/bin/console
CHANGED
|
@@ -3,12 +3,5 @@
|
|
|
3
3
|
require "bundler/setup"
|
|
4
4
|
require "codebreaker_vk"
|
|
5
5
|
|
|
6
|
-
# You can add fixtures and/or initialization code here to make experimenting
|
|
7
|
-
# with your gem easier. You can also use a different console, if you like.
|
|
8
|
-
|
|
9
|
-
# (If you use this, don't forget to add pry to your Gemfile!)
|
|
10
|
-
# require "pry"
|
|
11
|
-
# Pry.start
|
|
12
|
-
|
|
13
6
|
require "irb"
|
|
14
7
|
IRB.start(__FILE__)
|
data/bin/setup
CHANGED
|
Binary file
|
data/codebreaker_vk.gemspec
CHANGED
|
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
|
|
|
27
27
|
|
|
28
28
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
|
29
29
|
spec.add_development_dependency 'fasterer', '~> 0.5.1'
|
|
30
|
-
spec.add_development_dependency 'overcommit'
|
|
30
|
+
spec.add_development_dependency 'overcommit'
|
|
31
31
|
spec.add_development_dependency 'pry', '~> 0.12.2'
|
|
32
32
|
spec.add_development_dependency 'rake', '~> 10.0'
|
|
33
33
|
spec.add_development_dependency 'rspec', '~> 3.8'
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module CodebreakerVk
|
|
4
|
+
CODE_LENGTH = 4
|
|
5
|
+
|
|
6
|
+
EXACT_MATCH_SIGN = '+'
|
|
7
|
+
NUMBER_MATCH_SIGN = '-'
|
|
8
|
+
|
|
9
|
+
MIN_CODE_NUMBER = 1
|
|
10
|
+
MAX_CODE_NUMBER = 6
|
|
11
|
+
|
|
12
|
+
DIFFICULTIES = {
|
|
13
|
+
kid: { tries: 15, hints: 2 },
|
|
14
|
+
average: { tries: 10, hints: 1 },
|
|
15
|
+
hacker: { tries: 5, hints: 1 }
|
|
16
|
+
}.freeze
|
|
17
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'config'
|
|
4
|
+
|
|
5
|
+
module CodebreakerVk
|
|
6
|
+
class Game
|
|
7
|
+
attr_reader :tries_count, :hints_count, :errors
|
|
8
|
+
|
|
9
|
+
def initialize(difficulty: :kid)
|
|
10
|
+
validate_difficulty(difficulty)
|
|
11
|
+
|
|
12
|
+
@difficulty = difficulty
|
|
13
|
+
|
|
14
|
+
@hint_indexes = (0...CODE_LENGTH).to_a
|
|
15
|
+
|
|
16
|
+
@secret = Array.new(CODE_LENGTH) { rand(MIN_CODE_NUMBER..MAX_CODE_NUMBER) }
|
|
17
|
+
|
|
18
|
+
@tries_count = DIFFICULTIES[@difficulty][:tries]
|
|
19
|
+
@hints_count = DIFFICULTIES[@difficulty][:hints]
|
|
20
|
+
|
|
21
|
+
@errors = []
|
|
22
|
+
|
|
23
|
+
@matches = ''
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def check_guess(input)
|
|
27
|
+
input = to_array(input)
|
|
28
|
+
|
|
29
|
+
return add_error(FormatError) unless valid? input
|
|
30
|
+
|
|
31
|
+
@tries_count -= 1
|
|
32
|
+
|
|
33
|
+
resolver = GameProcess.new(@secret, input)
|
|
34
|
+
|
|
35
|
+
@matches = resolver.matches
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def generate_hint
|
|
39
|
+
return add_error(MaxHintError) if @hints_count.zero?
|
|
40
|
+
|
|
41
|
+
index = @hint_indexes.sample
|
|
42
|
+
|
|
43
|
+
hint = @secret[index]
|
|
44
|
+
|
|
45
|
+
@hint_indexes.delete index
|
|
46
|
+
|
|
47
|
+
@hints_count -= 1
|
|
48
|
+
|
|
49
|
+
hint
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def win?
|
|
53
|
+
@matches == Array.new(CODE_LENGTH, EXACT_MATCH_SIGN).join
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def lose?
|
|
57
|
+
@tries_count.zero?
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def data
|
|
61
|
+
{
|
|
62
|
+
difficulty: DIFFICULTIES.keys.index(@difficulty),
|
|
63
|
+
secret: @secret,
|
|
64
|
+
tries_total: DIFFICULTIES[@difficulty][:tries],
|
|
65
|
+
hints_total: DIFFICULTIES[@difficulty][:hints],
|
|
66
|
+
tries_used: DIFFICULTIES[@difficulty][:tries] - @tries_count,
|
|
67
|
+
hints_used: DIFFICULTIES[@difficulty][:hints] - @hints_count
|
|
68
|
+
}
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
private
|
|
72
|
+
|
|
73
|
+
def add_error(err)
|
|
74
|
+
(@errors << err) && nil
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def validate_difficulty(difficulty)
|
|
78
|
+
raise DifficultyLevelError unless DIFFICULTIES.include? difficulty.to_sym
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def to_array(input)
|
|
82
|
+
input.to_i.digits.reverse
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def valid?(input)
|
|
86
|
+
input.size == CODE_LENGTH && input.all? { |number| number.between? MIN_CODE_NUMBER, MAX_CODE_NUMBER }
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'config'
|
|
4
|
+
|
|
5
|
+
module CodebreakerVk
|
|
6
|
+
class GameProcess
|
|
7
|
+
attr_reader :matches
|
|
8
|
+
|
|
9
|
+
def initialize(secret_code, user_code)
|
|
10
|
+
@secret_code = secret_code.clone
|
|
11
|
+
@user_code = user_code
|
|
12
|
+
|
|
13
|
+
@exact_matches = 0
|
|
14
|
+
@number_matches = 0
|
|
15
|
+
|
|
16
|
+
@matches = obtain_matches
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def obtain_matches
|
|
22
|
+
calculate_matches unless @secret_code.empty?
|
|
23
|
+
|
|
24
|
+
EXACT_MATCH_SIGN * @exact_matches << NUMBER_MATCH_SIGN * @number_matches
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def calculate_matches
|
|
28
|
+
@secret_code.zip(@user_code).each do |secret_code_number, user_code_number|
|
|
29
|
+
next unless @secret_code.include? user_code_number
|
|
30
|
+
|
|
31
|
+
next add_match(user_code_number, exact: true) if secret_code_number == user_code_number
|
|
32
|
+
|
|
33
|
+
add_match(user_code_number)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def add_match(matched_code_number, exact: false)
|
|
38
|
+
exact ? @exact_matches += 1 : @number_matches += 1
|
|
39
|
+
|
|
40
|
+
@secret_code.delete_at(@secret_code.index(matched_code_number))
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
data/lib/codebreaker_vk.rb
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'codebreaker_vk/game'
|
|
4
|
+
require_relative 'codebreaker_vk/game_process'
|
|
5
|
+
require_relative 'codebreaker_vk/errors/autoload'
|
|
6
|
+
require_relative 'codebreaker_vk/version'
|
|
2
7
|
|
|
3
8
|
module CodebreakerVk
|
|
4
9
|
class Error < StandardError; end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: codebreaker_vk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- VKuzmich
|
|
@@ -42,16 +42,16 @@ dependencies:
|
|
|
42
42
|
name: overcommit
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
|
-
- - "
|
|
45
|
+
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: 0
|
|
47
|
+
version: '0'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
|
-
- - "
|
|
52
|
+
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: 0
|
|
54
|
+
version: '0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: pry
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -157,14 +157,11 @@ executables: []
|
|
|
157
157
|
extensions: []
|
|
158
158
|
extra_rdoc_files: []
|
|
159
159
|
files:
|
|
160
|
+
- ".fasterer.yml"
|
|
160
161
|
- ".gitignore"
|
|
161
|
-
- ".
|
|
162
|
-
- ".idea/codebreaker_vk.iml"
|
|
163
|
-
- ".idea/misc.xml"
|
|
164
|
-
- ".idea/modules.xml"
|
|
165
|
-
- ".idea/vcs.xml"
|
|
166
|
-
- ".idea/workspace.xml"
|
|
162
|
+
- ".overcommit.yml"
|
|
167
163
|
- ".rspec"
|
|
164
|
+
- ".ruby-gemset"
|
|
168
165
|
- ".travis.yml"
|
|
169
166
|
- CODE_OF_CONDUCT.md
|
|
170
167
|
- Gemfile
|
|
@@ -174,8 +171,16 @@ files:
|
|
|
174
171
|
- Rakefile
|
|
175
172
|
- bin/console
|
|
176
173
|
- bin/setup
|
|
174
|
+
- codebreaker_vk-0.1.0.gem
|
|
177
175
|
- codebreaker_vk.gemspec
|
|
178
176
|
- lib/codebreaker_vk.rb
|
|
177
|
+
- lib/codebreaker_vk/config.rb
|
|
178
|
+
- lib/codebreaker_vk/errors/autoload.rb
|
|
179
|
+
- lib/codebreaker_vk/errors/difficulty_level_error.rb
|
|
180
|
+
- lib/codebreaker_vk/errors/format_error.rb
|
|
181
|
+
- lib/codebreaker_vk/errors/max_hint_error.rb
|
|
182
|
+
- lib/codebreaker_vk/game.rb
|
|
183
|
+
- lib/codebreaker_vk/game_process.rb
|
|
179
184
|
- lib/codebreaker_vk/version.rb
|
|
180
185
|
homepage: https://github.com/VKuzmich/codebreaker_vk
|
|
181
186
|
licenses:
|
data/.idea/.rakeTasks
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<Settings><!--This file was automatically generated by Ruby plugin.
|
|
3
|
-
You are allowed to:
|
|
4
|
-
1. Remove rake task
|
|
5
|
-
2. Add existing rake tasks
|
|
6
|
-
To add existing rake tasks automatically delete this file and reload the project.
|
|
7
|
-
--><RakeGroup description="" fullCmd="" taksId="rake" /></Settings>
|
data/.idea/codebreaker_vk.iml
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<module type="RUBY_MODULE" version="4">
|
|
3
|
-
<component name="ModuleRunConfigurationManager">
|
|
4
|
-
<shared />
|
|
5
|
-
</component>
|
|
6
|
-
<component name="NewModuleRootManager">
|
|
7
|
-
<content url="file://$MODULE_DIR$" />
|
|
8
|
-
<orderEntry type="inheritedJdk" />
|
|
9
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
|
10
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler (v2.0.2, ruby-2.3.7-p456) [gem]" level="application" />
|
|
11
|
-
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.3, ruby-2.3.7-p456) [gem]" level="application" />
|
|
12
|
-
<orderEntry type="library" scope="PROVIDED" name="fasterer (v0.5.1, ruby-2.3.7-p456) [gem]" level="application" />
|
|
13
|
-
<orderEntry type="library" scope="PROVIDED" name="overcommit (v0.48.1, ruby-2.3.7-p456) [gem]" level="application" />
|
|
14
|
-
<orderEntry type="library" scope="PROVIDED" name="pry (v0.12.2, ruby-2.3.7-p456) [gem]" level="application" />
|
|
15
|
-
<orderEntry type="library" scope="PROVIDED" name="rake (v10.5.0, ruby-2.3.7-p456) [gem]" level="application" />
|
|
16
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec (v3.8.0, ruby-2.3.7-p456) [gem]" level="application" />
|
|
17
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.8.2, ruby-2.3.7-p456) [gem]" level="application" />
|
|
18
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.8.4, ruby-2.3.7-p456) [gem]" level="application" />
|
|
19
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.8.1, ruby-2.3.7-p456) [gem]" level="application" />
|
|
20
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.8.2, ruby-2.3.7-p456) [gem]" level="application" />
|
|
21
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop (v0.70.0, ruby-2.3.7-p456) [gem]" level="application" />
|
|
22
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-performance (v1.4.0, ruby-2.3.7-p456) [gem]" level="application" />
|
|
23
|
-
<orderEntry type="library" scope="PROVIDED" name="rubocop-rspec (v1.33.0, ruby-2.3.7-p456) [gem]" level="application" />
|
|
24
|
-
<orderEntry type="library" scope="PROVIDED" name="simplecov (v0.16.1, ruby-2.3.7-p456) [gem]" level="application" />
|
|
25
|
-
</component>
|
|
26
|
-
</module>
|
data/.idea/misc.xml
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="JavaScriptSettings">
|
|
4
|
-
<option name="languageLevel" value="ES6" />
|
|
5
|
-
</component>
|
|
6
|
-
<component name="ProjectRootManager" version="2" project-jdk-name="ruby-2.3.7-p456" project-jdk-type="RUBY_SDK" />
|
|
7
|
-
</project>
|
data/.idea/modules.xml
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ProjectModuleManager">
|
|
4
|
-
<modules>
|
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/codebreaker_vk.iml" filepath="$PROJECT_DIR$/.idea/codebreaker_vk.iml" />
|
|
6
|
-
</modules>
|
|
7
|
-
</component>
|
|
8
|
-
</project>
|
data/.idea/vcs.xml
DELETED
data/.idea/workspace.xml
DELETED
|
@@ -1,263 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<project version="4">
|
|
3
|
-
<component name="ChangeListManager">
|
|
4
|
-
<list default="true" id="6a8131cf-cac3-4900-8aba-05a2d544b668" name="Default Changelist" comment="">
|
|
5
|
-
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
|
6
|
-
</list>
|
|
7
|
-
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
|
8
|
-
<option name="SHOW_DIALOG" value="false" />
|
|
9
|
-
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
|
10
|
-
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
|
11
|
-
<option name="LAST_RESOLUTION" value="IGNORE" />
|
|
12
|
-
</component>
|
|
13
|
-
<component name="FUSProjectUsageTrigger">
|
|
14
|
-
<session id="-2059431398">
|
|
15
|
-
<usages-collector id="statistics.lifecycle.project">
|
|
16
|
-
<counts>
|
|
17
|
-
<entry key="project.closed" value="1" />
|
|
18
|
-
<entry key="project.open.time.0" value="2" />
|
|
19
|
-
<entry key="project.opened" value="2" />
|
|
20
|
-
</counts>
|
|
21
|
-
</usages-collector>
|
|
22
|
-
<usages-collector id="statistics.file.extensions.open">
|
|
23
|
-
<counts>
|
|
24
|
-
<entry key="console" value="1" />
|
|
25
|
-
<entry key="gemspec" value="1" />
|
|
26
|
-
<entry key="lock" value="1" />
|
|
27
|
-
<entry key="md" value="1" />
|
|
28
|
-
<entry key="rb" value="1" />
|
|
29
|
-
<entry key="setup" value="1" />
|
|
30
|
-
</counts>
|
|
31
|
-
</usages-collector>
|
|
32
|
-
<usages-collector id="statistics.file.types.open">
|
|
33
|
-
<counts>
|
|
34
|
-
<entry key="Markdown" value="1" />
|
|
35
|
-
<entry key="PLAIN_TEXT" value="2" />
|
|
36
|
-
<entry key="Ruby" value="3" />
|
|
37
|
-
</counts>
|
|
38
|
-
</usages-collector>
|
|
39
|
-
<usages-collector id="statistics.file.extensions.edit">
|
|
40
|
-
<counts>
|
|
41
|
-
<entry key="gemspec" value="15" />
|
|
42
|
-
<entry key="md" value="1" />
|
|
43
|
-
</counts>
|
|
44
|
-
</usages-collector>
|
|
45
|
-
<usages-collector id="statistics.file.types.edit">
|
|
46
|
-
<counts>
|
|
47
|
-
<entry key="Markdown" value="1" />
|
|
48
|
-
<entry key="Ruby" value="15" />
|
|
49
|
-
</counts>
|
|
50
|
-
</usages-collector>
|
|
51
|
-
</session>
|
|
52
|
-
</component>
|
|
53
|
-
<component name="FileEditorManager">
|
|
54
|
-
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
|
55
|
-
<file pinned="false" current-in-tab="false">
|
|
56
|
-
<entry file="file://$PROJECT_DIR$/README.md">
|
|
57
|
-
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
|
58
|
-
<state split_layout="SPLIT">
|
|
59
|
-
<first_editor relative-caret-position="255">
|
|
60
|
-
<caret line="17" selection-start-line="17" selection-end-line="17" />
|
|
61
|
-
</first_editor>
|
|
62
|
-
<second_editor />
|
|
63
|
-
</state>
|
|
64
|
-
</provider>
|
|
65
|
-
</entry>
|
|
66
|
-
</file>
|
|
67
|
-
<file pinned="false" current-in-tab="false">
|
|
68
|
-
<entry file="file://$PROJECT_DIR$/codebreaker_vk.gemspec">
|
|
69
|
-
<provider selected="true" editor-type-id="text-editor">
|
|
70
|
-
<state relative-caret-position="90">
|
|
71
|
-
<caret line="6" column="15" selection-start-line="6" selection-start-column="15" selection-end-line="6" selection-end-column="15" />
|
|
72
|
-
</state>
|
|
73
|
-
</provider>
|
|
74
|
-
</entry>
|
|
75
|
-
</file>
|
|
76
|
-
<file pinned="false" current-in-tab="false">
|
|
77
|
-
<entry file="file://$PROJECT_DIR$/bin/console">
|
|
78
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
79
|
-
</entry>
|
|
80
|
-
</file>
|
|
81
|
-
<file pinned="false" current-in-tab="false">
|
|
82
|
-
<entry file="file://$PROJECT_DIR$/bin/setup">
|
|
83
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
84
|
-
</entry>
|
|
85
|
-
</file>
|
|
86
|
-
<file pinned="false" current-in-tab="true">
|
|
87
|
-
<entry file="file://$PROJECT_DIR$/lib/codebreaker_vk/version.rb">
|
|
88
|
-
<provider selected="true" editor-type-id="text-editor">
|
|
89
|
-
<state relative-caret-position="15">
|
|
90
|
-
<caret line="1" column="18" lean-forward="true" selection-start-line="1" selection-start-column="13" selection-end-line="1" selection-end-column="18" />
|
|
91
|
-
</state>
|
|
92
|
-
</provider>
|
|
93
|
-
</entry>
|
|
94
|
-
</file>
|
|
95
|
-
<file pinned="false" current-in-tab="false">
|
|
96
|
-
<entry file="file://$PROJECT_DIR$/Gemfile.lock">
|
|
97
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
98
|
-
</entry>
|
|
99
|
-
</file>
|
|
100
|
-
</leaf>
|
|
101
|
-
</component>
|
|
102
|
-
<component name="Git.Settings">
|
|
103
|
-
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
|
104
|
-
</component>
|
|
105
|
-
<component name="IdeDocumentHistory">
|
|
106
|
-
<option name="CHANGED_PATHS">
|
|
107
|
-
<list>
|
|
108
|
-
<option value="$PROJECT_DIR$/README.md" />
|
|
109
|
-
<option value="$PROJECT_DIR$/codebreaker_vk.gemspec" />
|
|
110
|
-
</list>
|
|
111
|
-
</option>
|
|
112
|
-
</component>
|
|
113
|
-
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
|
114
|
-
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
|
115
|
-
<component name="JsGulpfileManager">
|
|
116
|
-
<detection-done>true</detection-done>
|
|
117
|
-
<sorting>DEFINITION_ORDER</sorting>
|
|
118
|
-
</component>
|
|
119
|
-
<component name="ProjectFrameBounds">
|
|
120
|
-
<option name="x" value="509" />
|
|
121
|
-
<option name="y" value="29" />
|
|
122
|
-
<option name="width" value="931" />
|
|
123
|
-
<option name="height" value="805" />
|
|
124
|
-
</component>
|
|
125
|
-
<component name="ProjectView">
|
|
126
|
-
<navigator proportions="" version="1">
|
|
127
|
-
<foldersAlwaysOnTop value="true" />
|
|
128
|
-
</navigator>
|
|
129
|
-
<panes>
|
|
130
|
-
<pane id="ProjectPane">
|
|
131
|
-
<subPane>
|
|
132
|
-
<expand>
|
|
133
|
-
<path>
|
|
134
|
-
<item name="codebreaker_vk" type="b2602c69:ProjectViewProjectNode" />
|
|
135
|
-
<item name="codebreaker_vk" type="462c0819:PsiDirectoryNode" />
|
|
136
|
-
</path>
|
|
137
|
-
<path>
|
|
138
|
-
<item name="codebreaker_vk" type="b2602c69:ProjectViewProjectNode" />
|
|
139
|
-
<item name="codebreaker_vk" type="462c0819:PsiDirectoryNode" />
|
|
140
|
-
<item name="bin" type="462c0819:PsiDirectoryNode" />
|
|
141
|
-
</path>
|
|
142
|
-
<path>
|
|
143
|
-
<item name="codebreaker_vk" type="b2602c69:ProjectViewProjectNode" />
|
|
144
|
-
<item name="codebreaker_vk" type="462c0819:PsiDirectoryNode" />
|
|
145
|
-
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
146
|
-
</path>
|
|
147
|
-
<path>
|
|
148
|
-
<item name="codebreaker_vk" type="b2602c69:ProjectViewProjectNode" />
|
|
149
|
-
<item name="codebreaker_vk" type="462c0819:PsiDirectoryNode" />
|
|
150
|
-
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
151
|
-
<item name="codebreaker_vk" type="462c0819:PsiDirectoryNode" />
|
|
152
|
-
</path>
|
|
153
|
-
</expand>
|
|
154
|
-
<select />
|
|
155
|
-
</subPane>
|
|
156
|
-
</pane>
|
|
157
|
-
<pane id="Scope" />
|
|
158
|
-
</panes>
|
|
159
|
-
</component>
|
|
160
|
-
<component name="PropertiesComponent">
|
|
161
|
-
<property name="WebServerToolWindowFactoryState" value="false" />
|
|
162
|
-
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
|
163
|
-
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
|
164
|
-
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
|
165
|
-
</component>
|
|
166
|
-
<component name="RunDashboard">
|
|
167
|
-
<option name="ruleStates">
|
|
168
|
-
<list>
|
|
169
|
-
<RuleState>
|
|
170
|
-
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
|
171
|
-
</RuleState>
|
|
172
|
-
<RuleState>
|
|
173
|
-
<option name="name" value="StatusDashboardGroupingRule" />
|
|
174
|
-
</RuleState>
|
|
175
|
-
</list>
|
|
176
|
-
</option>
|
|
177
|
-
</component>
|
|
178
|
-
<component name="SpringUtil" SPRING_PRE_LOADER_OPTION="true" />
|
|
179
|
-
<component name="SvnConfiguration">
|
|
180
|
-
<configuration />
|
|
181
|
-
</component>
|
|
182
|
-
<component name="TaskManager">
|
|
183
|
-
<task active="true" id="Default" summary="Default task">
|
|
184
|
-
<changelist id="6a8131cf-cac3-4900-8aba-05a2d544b668" name="Default Changelist" comment="" />
|
|
185
|
-
<created>1563268081514</created>
|
|
186
|
-
<option name="number" value="Default" />
|
|
187
|
-
<option name="presentableId" value="Default" />
|
|
188
|
-
<updated>1563268081514</updated>
|
|
189
|
-
<workItem from="1563268082708" duration="1449000" />
|
|
190
|
-
<workItem from="1563269944398" duration="267000" />
|
|
191
|
-
</task>
|
|
192
|
-
<servers />
|
|
193
|
-
</component>
|
|
194
|
-
<component name="TimeTrackingManager">
|
|
195
|
-
<option name="totallyTimeSpent" value="1716000" />
|
|
196
|
-
</component>
|
|
197
|
-
<component name="ToolWindowManager">
|
|
198
|
-
<frame x="509" y="29" width="931" height="805" extended-state="0" />
|
|
199
|
-
<layout>
|
|
200
|
-
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.25534308" />
|
|
201
|
-
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
|
202
|
-
<window_info id="Favorites" order="2" side_tool="true" />
|
|
203
|
-
<window_info anchor="bottom" id="Message" order="0" />
|
|
204
|
-
<window_info anchor="bottom" id="Find" order="1" />
|
|
205
|
-
<window_info anchor="bottom" id="Run" order="2" />
|
|
206
|
-
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
|
207
|
-
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
|
208
|
-
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
|
209
|
-
<window_info anchor="bottom" id="TODO" order="6" />
|
|
210
|
-
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
|
|
211
|
-
<window_info anchor="bottom" id="Database Changes" order="8" show_stripe_button="false" />
|
|
212
|
-
<window_info anchor="bottom" id="Version Control" order="9" show_stripe_button="false" />
|
|
213
|
-
<window_info active="true" anchor="bottom" id="Terminal" order="10" visible="true" weight="0.3286517" />
|
|
214
|
-
<window_info anchor="bottom" id="Event Log" order="11" side_tool="true" />
|
|
215
|
-
<window_info anchor="bottom" id="Messages" order="12" weight="0.3286517" />
|
|
216
|
-
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
|
217
|
-
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
|
218
|
-
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
|
219
|
-
<window_info anchor="right" id="Database" order="3" />
|
|
220
|
-
</layout>
|
|
221
|
-
</component>
|
|
222
|
-
<component name="TypeScriptGeneratedFilesManager">
|
|
223
|
-
<option name="version" value="1" />
|
|
224
|
-
</component>
|
|
225
|
-
<component name="VcsContentAnnotationSettings">
|
|
226
|
-
<option name="myLimit" value="2678400000" />
|
|
227
|
-
</component>
|
|
228
|
-
<component name="editorHistoryManager">
|
|
229
|
-
<entry file="file://$PROJECT_DIR$/README.md">
|
|
230
|
-
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
|
231
|
-
<state split_layout="SPLIT">
|
|
232
|
-
<first_editor relative-caret-position="255">
|
|
233
|
-
<caret line="17" selection-start-line="17" selection-end-line="17" />
|
|
234
|
-
</first_editor>
|
|
235
|
-
<second_editor />
|
|
236
|
-
</state>
|
|
237
|
-
</provider>
|
|
238
|
-
</entry>
|
|
239
|
-
<entry file="file://$PROJECT_DIR$/Gemfile.lock">
|
|
240
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
241
|
-
</entry>
|
|
242
|
-
<entry file="file://$PROJECT_DIR$/codebreaker_vk.gemspec">
|
|
243
|
-
<provider selected="true" editor-type-id="text-editor">
|
|
244
|
-
<state relative-caret-position="90">
|
|
245
|
-
<caret line="6" column="15" selection-start-line="6" selection-start-column="15" selection-end-line="6" selection-end-column="15" />
|
|
246
|
-
</state>
|
|
247
|
-
</provider>
|
|
248
|
-
</entry>
|
|
249
|
-
<entry file="file://$PROJECT_DIR$/bin/console">
|
|
250
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
251
|
-
</entry>
|
|
252
|
-
<entry file="file://$PROJECT_DIR$/bin/setup">
|
|
253
|
-
<provider selected="true" editor-type-id="text-editor" />
|
|
254
|
-
</entry>
|
|
255
|
-
<entry file="file://$PROJECT_DIR$/lib/codebreaker_vk/version.rb">
|
|
256
|
-
<provider selected="true" editor-type-id="text-editor">
|
|
257
|
-
<state relative-caret-position="15">
|
|
258
|
-
<caret line="1" column="18" lean-forward="true" selection-start-line="1" selection-start-column="13" selection-end-line="1" selection-end-column="18" />
|
|
259
|
-
</state>
|
|
260
|
-
</provider>
|
|
261
|
-
</entry>
|
|
262
|
-
</component>
|
|
263
|
-
</project>
|