sokoban 0.0.9

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.
@@ -0,0 +1,31 @@
1
+ require File.expand_path('../../spec_helper.rb', __FILE__)
2
+ include Sokoban
3
+
4
+ describe Level do
5
+ it "should default to level 1" do
6
+ Level.new.lnum.should == 1
7
+ end
8
+
9
+ it "should set @lnum to the given level" do
10
+ Level.new(42).lnum.should == 42
11
+ end
12
+
13
+ it "should raise RangeError when level is out of range" do
14
+ expect { Level.new(54) }.to raise_error(RangeError)
15
+ end
16
+
17
+ it "should play level 1" do
18
+ level = Level.new
19
+ level.count_free_boxes.should == 6
20
+ s = "WAAAWWWAWAASSWAASSSDDDDDDDDDDDDDSDWAAAAAAAAAWWWAWAASSSWWAASSSDDDD"
21
+ s << "DDDDDDDDWDSASDWAAAAAAAAWWWAAWASSSWWAASSSDDDDDDDDDDDDSDWAAAAAAAAWW"
22
+ s << "WAWAWWDSSWWAASSSSSWWAASSSDDDDDDDDDDDWDSASDWAAAAAAAWWWAAWASSSWWAAS"
23
+ s << "SSDDDDDDDDDDDDDAAAAAAAAAAAAAWAASDDDDDDDDDDDDD\n"
24
+ s.each_char {|c| level.parse_move(c.downcase) }
25
+ level.parse_move('d') #if rand(0..1).zero? # hehehe
26
+ level.count_free_boxes.should == 0
27
+ end
28
+ end
29
+
30
+ describe Game do
31
+ end
@@ -0,0 +1 @@
1
+ require File.expand_path('../../lib/sokoban.rb', __FILE__)
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sokoban
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.9
5
+ platform: ruby
6
+ authors:
7
+ - Boohbah
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-09-08 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
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: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '1.3'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.3'
55
+ description: A classic warehouse puzzle game by Hiroyuki Imabayashi
56
+ email:
57
+ - boohbah@gmail.com
58
+ executables:
59
+ - sokoban
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - .gitignore
64
+ - Gemfile
65
+ - LICENSE
66
+ - README.md
67
+ - Rakefile
68
+ - bin/sokoban
69
+ - lib/sokoban.rb
70
+ - lib/sokoban/version.rb
71
+ - sokoban.gemspec
72
+ - sokoban_levels.txt
73
+ - spec/lib/sokoban_spec.rb
74
+ - spec/spec_helper.rb
75
+ homepage: http://rubygems.org/gems/sokoban
76
+ licenses:
77
+ - GPL
78
+ metadata: {}
79
+ post_install_message:
80
+ rdoc_options: []
81
+ require_paths:
82
+ - lib
83
+ - bin
84
+ required_ruby_version: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - '>='
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ required_rubygems_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ requirements: []
95
+ rubyforge_project:
96
+ rubygems_version: 2.0.3
97
+ signing_key:
98
+ specification_version: 4
99
+ summary: A classic warehouse puzzle game
100
+ test_files:
101
+ - spec/lib/sokoban_spec.rb
102
+ - spec/spec_helper.rb
103
+ has_rdoc: