rungs 0.0.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 +7 -0
- data/.gitignore +17 -0
- data/.travis.yml +4 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +43 -0
- data/Rakefile +9 -0
- data/lib/rungs.rb +8 -0
- data/lib/rungs/climb.rb +32 -0
- data/lib/rungs/version.rb +3 -0
- data/lib/rungs/word_ladder.rb +41 -0
- data/rungs.gemspec +26 -0
- data/selected_four-letter_words.txt +3807 -0
- data/test/test_helper.rb +7 -0
- data/test/unit/rungs/climb_test.rb +34 -0
- data/test/unit/rungs/word_ladder_test.rb +28 -0
- metadata +132 -0
data/test/test_helper.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe Rungs::Climb do
|
4
|
+
before do
|
5
|
+
@subject = Rungs::Climb
|
6
|
+
@word_ladder_mock = MiniTest::Mock.new
|
7
|
+
@file_mock = MiniTest::Mock.new
|
8
|
+
|
9
|
+
@params = {
|
10
|
+
list: "",
|
11
|
+
word_ladder_class: @word_ladder_mock,
|
12
|
+
file_class: @file_mock
|
13
|
+
}
|
14
|
+
end
|
15
|
+
|
16
|
+
describe "as a class" do
|
17
|
+
it "initializes properly" do
|
18
|
+
@subject.new.must_respond_to :call
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "as an instance" do
|
23
|
+
it "executes successfully" do
|
24
|
+
@file_mock.expect(:readlines, ["blip"], [@params[:list]])
|
25
|
+
@word_ladder_mock.expect(:new, ladder_instance = MiniTest::Mock.new, [{ word: "blip", list: @params[:list], steps: 1 }])
|
26
|
+
ladder_instance.expect(:call, ladder = MiniTest::Mock.new)
|
27
|
+
ladder.expect(:data, {})
|
28
|
+
|
29
|
+
result = @subject.new(@params).call
|
30
|
+
result.successful?.must_equal true
|
31
|
+
result.must_be_kind_of PayDirt::Result
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe Rungs::WordLadder do
|
4
|
+
before do
|
5
|
+
@subject = Rungs::WordLadder
|
6
|
+
@params = {
|
7
|
+
word: "butt",
|
8
|
+
}
|
9
|
+
end
|
10
|
+
|
11
|
+
describe "as a class" do
|
12
|
+
it "initializes properly" do
|
13
|
+
@subject.new(@params).must_respond_to :call
|
14
|
+
end
|
15
|
+
|
16
|
+
it "errors when initialized without required dependencies" do
|
17
|
+
-> { @subject.new(@params.reject { |k| k.to_s == 'word' }) }.must_raise RuntimeError
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
describe "as an instance" do
|
22
|
+
it "executes successfully" do
|
23
|
+
result = @subject.new(@params).call
|
24
|
+
result.successful?.must_equal true
|
25
|
+
result.must_be_kind_of PayDirt::Result
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
metadata
ADDED
@@ -0,0 +1,132 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rungs
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Ryan T. Hosford
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-07-31 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: pry
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: minitest
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pay_dirt
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - '='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 1.0.7
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - '='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 1.0.7
|
83
|
+
description: 'Gem for messing around with https://github.com/alexkroman/word-ladder '
|
84
|
+
email:
|
85
|
+
- tad.hosford@gmail.com
|
86
|
+
executables: []
|
87
|
+
extensions: []
|
88
|
+
extra_rdoc_files: []
|
89
|
+
files:
|
90
|
+
- .gitignore
|
91
|
+
- .travis.yml
|
92
|
+
- Gemfile
|
93
|
+
- LICENSE.txt
|
94
|
+
- README.md
|
95
|
+
- Rakefile
|
96
|
+
- lib/rungs.rb
|
97
|
+
- lib/rungs/climb.rb
|
98
|
+
- lib/rungs/version.rb
|
99
|
+
- lib/rungs/word_ladder.rb
|
100
|
+
- rungs.gemspec
|
101
|
+
- selected_four-letter_words.txt
|
102
|
+
- test/test_helper.rb
|
103
|
+
- test/unit/rungs/climb_test.rb
|
104
|
+
- test/unit/rungs/word_ladder_test.rb
|
105
|
+
homepage: https://github.com/rthbound/rungs
|
106
|
+
licenses:
|
107
|
+
- MIT
|
108
|
+
metadata: {}
|
109
|
+
post_install_message:
|
110
|
+
rdoc_options: []
|
111
|
+
require_paths:
|
112
|
+
- lib
|
113
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - '>='
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '0'
|
123
|
+
requirements: []
|
124
|
+
rubyforge_project:
|
125
|
+
rubygems_version: 2.0.3
|
126
|
+
signing_key:
|
127
|
+
specification_version: 4
|
128
|
+
summary: Gem for messing around with https://github.com/alexkroman/word-ladder
|
129
|
+
test_files:
|
130
|
+
- test/test_helper.rb
|
131
|
+
- test/unit/rungs/climb_test.rb
|
132
|
+
- test/unit/rungs/word_ladder_test.rb
|