glimmer 0.1.5.470 → 0.1.8.470

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +1 -0
  3. data/.rspec +2 -0
  4. data/Gemfile +2 -0
  5. data/README.markdown +7 -2
  6. data/Rakefile +7 -8
  7. data/TODO.md +1 -1
  8. data/VERSION +1 -1
  9. data/bin/girb +3 -0
  10. data/bin/girb_runner.rb +5 -0
  11. data/glimmer.gemspec +29 -19
  12. data/lib/glimmer_application.rb +1 -2
  13. data/lib/shine.rb +23 -21
  14. data/lib/xml_command_handlers/models/node.rb +11 -11
  15. data/lib/xml_command_handlers/models/xml_visitor.rb +12 -12
  16. data/samples/tictactoe/tic_tac_toe.rb +11 -11
  17. data/spec/lib/command_handlers/models/observable_model_spec.rb +22 -0
  18. data/spec/lib/command_handlers/models/r_widget_spec.rb +52 -0
  19. data/{test/glimmer_combo_data_binding_test.rb → spec/lib/glimmer__combo_data_binding__spec.rb} +48 -49
  20. data/spec/lib/glimmer__constant__spec.rb +30 -0
  21. data/{test/glimmer_data_binding_test.rb → spec/lib/glimmer__data_binding__spec.rb} +95 -94
  22. data/spec/lib/glimmer__list_data_binding__spec.rb +224 -0
  23. data/{test/glimmer_listeners_test.rb → spec/lib/glimmer__listeners__spec.rb} +18 -19
  24. data/spec/lib/glimmer__shine_data_binding__spec.rb +89 -0
  25. data/spec/lib/glimmer__tab_item__spec.rb +55 -0
  26. data/spec/lib/glimmer__table_data_binding__spec.rb +121 -0
  27. data/spec/lib/glimmer_spec.rb +251 -0
  28. data/spec/lib/xml/glimmer_xml_spec.rb +154 -0
  29. data/spec/samples/contactmanager/contact_manager_presenter_spec.rb +81 -0
  30. data/spec/samples/tictactoe/tic_tac_toe_spec.rb +263 -0
  31. data/spec/spec_helper.rb +123 -0
  32. metadata +50 -17
  33. data/test/glimmer_constant_test.rb +0 -30
  34. data/test/glimmer_list_data_binding_test.rb +0 -223
  35. data/test/glimmer_shine_data_binding_test.rb +0 -89
  36. data/test/glimmer_tab_item_test.rb +0 -61
  37. data/test/glimmer_table_data_binding_test.rb +0 -122
  38. data/test/glimmer_test.rb +0 -237
  39. data/test/helper.rb +0 -24
  40. data/test/observable_model_test.rb +0 -25
  41. data/test/r_widget_test.rb +0 -52
  42. data/test/samples/contactmanager/contact_manager_presenter_test.rb +0 -81
  43. data/test/samples/tictactoe/tic_tac_toe_test.rb +0 -262
  44. data/test/xml/glimmer_xml_test.rb +0 -163
@@ -0,0 +1,263 @@
1
+ require "spec_helper"
2
+
3
+ require_relative "../../../samples/tictactoe/tic_tac_toe_board"
4
+
5
+ describe TicTacToeBoard do
6
+
7
+ before do
8
+ @board = TicTacToeBoard.new
9
+ end
10
+
11
+ it "tests mark_center_x" do
12
+ expect(@board.box(2, 2).sign).to eq("")
13
+ @board.mark_box(2, 2)
14
+ expect(@board.box(2, 2).empty).to be_false
15
+ expect(@board.box(2, 2).sign).to eq("X")
16
+ expect(@board.box(1, 1).empty).to be_true
17
+ expect(@board.box(1, 2).empty).to be_true
18
+ expect(@board.box(1, 3).empty).to be_true
19
+ expect(@board.box(2, 1).empty).to be_true
20
+ expect(@board.box(2, 3).empty).to be_true
21
+ expect(@board.box(3, 1).empty).to be_true
22
+ expect(@board.box(3, 2).empty).to be_true
23
+ expect(@board.box(3, 3).empty).to be_true
24
+ end
25
+
26
+ it "tests mark_center_x_top_center_o_bottom_right_x" do
27
+ @board.mark_box(2, 2)
28
+ @board.mark_box(1, 2)
29
+ @board.mark_box(3, 3)
30
+ expect(@board.box(2, 2).empty).to be_false
31
+ expect(@board.box(1, 2).empty).to be_false
32
+ expect(@board.box(3, 3).empty).to be_false
33
+ expect(@board.box(2, 2).sign).to eq("X")
34
+ expect(@board.box(1, 2).sign).to eq("O")
35
+ expect(@board.box(3, 3).sign).to eq("X")
36
+ end
37
+
38
+ it "tests top_center_not_marked" do
39
+ expect(@board.box(1, 2).empty).to be_true
40
+ end
41
+
42
+ it "tests top_right_marked" do
43
+ @board.mark_box(1, 3)
44
+ expect(@board.box(1, 3).empty).to be_false
45
+ end
46
+
47
+ it "tests lower_right_marked" do
48
+ @board.mark_box(3, 3)
49
+ expect(@board.box(3, 3).empty).to be_false
50
+ end
51
+
52
+ it "tests game_over_false" do
53
+ expect(@board.game_over?).to be_false
54
+ expect(@board.current_sign).to eq("X")
55
+ expect(@board.game_status).to eq(TicTacToeBoard::IN_PROGRESS)
56
+ end
57
+
58
+ it "tests game_over_X_wins_top_row_across" do
59
+ @board.mark_box(1, 1)
60
+ expect(@board.box(1, 1).sign).to eq("X")
61
+ @board.mark_box(2, 1)
62
+ expect(@board.box(2, 1).sign).to eq("O")
63
+ @board.mark_box(1, 2)
64
+ expect(@board.box(1, 2).sign).to eq("X")
65
+ @board.mark_box(2, 2)
66
+ expect(@board.box(2, 2).sign).to eq("O")
67
+ @board.mark_box(1, 3)
68
+ expect(@board.box(1, 3).sign).to eq("X")
69
+ expect(@board.game_over?).to be_true
70
+ expect(@board.winning_sign).to eq("X")
71
+ expect(@board.game_status).to eq(TicTacToeBoard::WIN)
72
+ end
73
+
74
+ it "tests game_over_O_wins_top_row_across" do
75
+ @board.mark_box(2, 1)
76
+ @board.mark_box(1, 1)
77
+ @board.mark_box(2, 2)
78
+ @board.mark_box(1, 2)
79
+ @board.mark_box(3, 3)
80
+ @board.mark_box(1, 3)
81
+ expect(@board.game_over?).to be_true
82
+ expect(@board.winning_sign).to eq("O")
83
+ end
84
+
85
+ it "tests game_over_X_wins_second_row_across" do
86
+ @board.mark_box(2, 1)
87
+ @board.mark_box(1, 1)
88
+ @board.mark_box(2, 2)
89
+ @board.mark_box(1, 2)
90
+ @board.mark_box(2, 3)
91
+ expect(@board.game_over?).to be_true
92
+ expect(@board.winning_sign).to eq("X")
93
+ end
94
+
95
+ it "tests game_over_O_wins_second_row_across" do
96
+ @board.mark_box(1, 1)
97
+ @board.mark_box(2, 1)
98
+ @board.mark_box(3, 1)
99
+ @board.mark_box(2, 2)
100
+ @board.mark_box(1, 2)
101
+ @board.mark_box(2, 3)
102
+ expect(@board.game_over?).to be_true
103
+ expect(@board.winning_sign).to eq("O")
104
+ end
105
+
106
+ it "tests game_over_X_wins_third_row_across" do
107
+ @board.mark_box(3, 1)
108
+ @board.mark_box(1, 1)
109
+ @board.mark_box(3, 2)
110
+ @board.mark_box(1, 2)
111
+ @board.mark_box(3, 3)
112
+ expect(@board.game_over?).to be_true
113
+ expect(@board.winning_sign).to eq("X")
114
+ end
115
+
116
+ it "tests game_over_O_wins_third_row_across" do
117
+ @board.mark_box(1, 1)
118
+ @board.mark_box(3, 1)
119
+ @board.mark_box(1, 2)
120
+ @board.mark_box(3, 2)
121
+ @board.mark_box(2, 3)
122
+ @board.mark_box(3, 3)
123
+ expect(@board.game_over?).to be_true
124
+ end
125
+
126
+ it "tests game_over_X_wins_first_column_down" do
127
+ @board.mark_box(1, 1)
128
+ @board.mark_box(2, 2)
129
+ @board.mark_box(2, 1)
130
+ @board.mark_box(3, 2)
131
+ @board.mark_box(3, 1)
132
+ expect(@board.game_over?).to be_true
133
+ expect(@board.winning_sign).to eq("X")
134
+ end
135
+
136
+ it "tests game_over_O_wins_first_column_down" do
137
+ @board.mark_box(2, 2)
138
+ @board.mark_box(1, 1)
139
+ @board.mark_box(3, 2)
140
+ @board.mark_box(2, 1)
141
+ @board.mark_box(3, 3)
142
+ @board.mark_box(3, 1)
143
+ expect(@board.game_over?).to be_true
144
+ end
145
+
146
+ it "tests game_over_X_wins_second_column_down" do
147
+ @board.mark_box(1, 2)
148
+ @board.mark_box(2, 1)
149
+ @board.mark_box(2, 2)
150
+ @board.mark_box(3, 1)
151
+ @board.mark_box(3, 2)
152
+ expect(@board.game_over?).to be_true
153
+ expect(@board.winning_sign).to eq("X")
154
+ end
155
+
156
+ it "tests game_over_O_wins_second_column_down" do
157
+ @board.mark_box(2, 1)
158
+ @board.mark_box(1, 2)
159
+ @board.mark_box(3, 1)
160
+ @board.mark_box(2, 2)
161
+ @board.mark_box(2, 3)
162
+ @board.mark_box(3, 2)
163
+ expect(@board.game_over?).to be_true
164
+ expect(@board.winning_sign).to eq("O")
165
+ end
166
+
167
+ it "tests game_over_X_wins_third_column_down" do
168
+ @board.mark_box(1, 3)
169
+ @board.mark_box(2, 1)
170
+ @board.mark_box(2, 3)
171
+ @board.mark_box(3, 1)
172
+ @board.mark_box(3, 3)
173
+ expect(@board.game_over?).to be_true
174
+ expect(@board.winning_sign).to eq("X")
175
+ end
176
+
177
+ it "tests game_over_O_wins_third_column_down" do
178
+ @board.mark_box(2, 1)
179
+ @board.mark_box(1, 3)
180
+ @board.mark_box(3, 1)
181
+ @board.mark_box(2, 3)
182
+ @board.mark_box(3, 2)
183
+ @board.mark_box(3, 3)
184
+ expect(@board.game_over?).to be_true
185
+ expect(@board.winning_sign).to eq("O")
186
+ end
187
+
188
+ it "tests game_over_X_wins_top_left_to_bottom_right" do
189
+ @board.mark_box(1, 1)
190
+ @board.mark_box(2, 1)
191
+ @board.mark_box(2, 2)
192
+ @board.mark_box(3, 2)
193
+ @board.mark_box(3, 3)
194
+ expect(@board.winning_sign).to eq("X")
195
+ expect(@board.game_over?).to be_true
196
+ end
197
+
198
+ it "tests game_over_O_wins_top_left_to_bottom_right" do
199
+ @board.mark_box(2, 1)
200
+ @board.mark_box(1, 1)
201
+ @board.mark_box(3, 2)
202
+ @board.mark_box(2, 2)
203
+ @board.mark_box(2, 3)
204
+ @board.mark_box(3, 3)
205
+ expect(@board.winning_sign).to eq("O")
206
+ expect(@board.game_over?).to be_true
207
+ end
208
+
209
+ it "tests game_over_X_wins_top_right_to_bottom_left" do
210
+ @board.mark_box(1, 3)
211
+ @board.mark_box(2, 1)
212
+ @board.mark_box(2, 2)
213
+ @board.mark_box(3, 2)
214
+ @board.mark_box(3, 1)
215
+ expect(@board.winning_sign).to eq("X")
216
+ expect(@board.game_over?).to be_true
217
+ end
218
+
219
+ it "tests game_over_O_wins_top_right_to_bottom_left" do
220
+ @board.mark_box(2, 1)
221
+ @board.mark_box(1, 3)
222
+ @board.mark_box(3, 2)
223
+ @board.mark_box(2, 2)
224
+ @board.mark_box(1, 1)
225
+ @board.mark_box(3, 1)
226
+ expect(@board.winning_sign).to eq("O")
227
+ expect(@board.game_over?).to be_true
228
+ end
229
+
230
+ # 1 2 3
231
+ #1 x o x
232
+ #2 o x x
233
+ #3 o x o
234
+ it "tests game_over_draw" do
235
+ @board.mark_box(1, 1)
236
+ @board.mark_box(1, 2)
237
+ @board.mark_box(1, 3)
238
+ @board.mark_box(2, 1)
239
+ @board.mark_box(2, 2)
240
+ @board.mark_box(3, 1)
241
+ @board.mark_box(2, 3)
242
+ @board.mark_box(3, 3)
243
+ expect(@board.game_over?).to be_false
244
+ @board.mark_box(3, 2)
245
+ expect(@board.game_over?).to be_true
246
+ expect(@board.winning_sign).to eq(TicTacToeBox::EMPTY)
247
+ expect(@board.game_status).to eq(TicTacToeBoard::DRAW)
248
+ end
249
+
250
+ it "tests reset" do
251
+ @board.mark_box(1, 3)
252
+ @board.mark_box(2, 1)
253
+ @board.mark_box(2, 2)
254
+ @board.mark_box(3, 2)
255
+ @board.mark_box(3, 1)
256
+ @board.reset
257
+ expect(@board.game_over?).to be_false
258
+ expect(@board.winning_sign).to eq(TicTacToeBox::EMPTY)
259
+ expect(@board.game_status).to eq(TicTacToeBoard::IN_PROGRESS)
260
+ expect(@board.current_sign).to eq("X")
261
+ end
262
+
263
+ end
@@ -0,0 +1,123 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+ require 'bundler'
4
+
5
+ begin
6
+ Bundler.require(:default, :development)
7
+ rescue Bundler::BundlerError => e
8
+ $stderr.puts e.message
9
+ $stderr.puts "Run `bundle install` to install missing gems"
10
+ exit e.status_code
11
+ end
12
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
13
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'samples'))
14
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
15
+ require 'glimmer'
16
+ # This file was generated by the `rspec --init` command. Conventionally, all
17
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
18
+ # The generated `.rspec` file contains `--require spec_helper` which will cause
19
+ # this file to always be loaded, without a need to explicitly require it in any
20
+ # files.
21
+ #
22
+ # Given that it is always loaded, you are encouraged to keep this file as
23
+ # light-weight as possible. Requiring heavyweight dependencies from this file
24
+ # will add to the boot time of your test suite on EVERY test run, even for an
25
+ # individual file that may not need all of that loaded. Instead, consider making
26
+ # a separate helper file that requires the additional dependencies and performs
27
+ # the additional setup, and require it from the spec files that actually need
28
+ # it.
29
+ #
30
+ # The `.rspec` file also contains a few flags that are not defaults but that
31
+ # users commonly want.
32
+ #
33
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
34
+ RSpec.configure do |config|
35
+ # rspec-expectations config goes here. You can use an alternate
36
+ # assertion/expectation library such as wrong or the stdlib/minitest
37
+ # assertions if you prefer.
38
+ config.expect_with :rspec do |expectations|
39
+ # This option will default to `true` in RSpec 4. It makes the `description`
40
+ # and `failure_message` of custom matchers include text for helper methods
41
+ # defined using `chain`, e.g.:
42
+ # be_bigger_than(2).and_smaller_than(4).description
43
+ # # => "be bigger than 2 and smaller than 4"
44
+ # ...rather than:
45
+ # # => "be bigger than 2"
46
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
47
+ end
48
+
49
+ # rspec-mocks config goes here. You can use an alternate test double
50
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
51
+ config.mock_with :rspec do |mocks|
52
+ # Prevents you from mocking or stubbing a method that does not exist on
53
+ # a real object. This is generally recommended, and will default to
54
+ # `true` in RSpec 4.
55
+ mocks.verify_partial_doubles = true
56
+ end
57
+
58
+ # This option will default to `:apply_to_host_groups` in RSpec 4 (and will
59
+ # have no way to turn it off -- the option exists only for backwards
60
+ # compatibility in RSpec 3). It causes shared context metadata to be
61
+ # inherited by the metadata hash of host groups and examples, rather than
62
+ # triggering implicit auto-inclusion in groups with matching metadata.
63
+ config.shared_context_metadata_behavior = :apply_to_host_groups
64
+
65
+ # The settings below are suggested to provide a good initial experience
66
+ # with RSpec, but feel free to customize to your heart's content.
67
+ =begin
68
+ # This allows you to limit a spec run to individual examples or groups
69
+ # you care about by tagging them with `:focus` metadata. When nothing
70
+ # is tagged with `:focus`, all examples get run. RSpec also provides
71
+ # aliases for `it`, `describe`, and `context` that include `:focus`
72
+ # metadata: `fit`, `fdescribe` and `fcontext`, respectively.
73
+ config.filter_run_when_matching :focus
74
+
75
+ # Allows RSpec to persist some state between runs in order to support
76
+ # the `--only-failures` and `--next-failure` CLI options. We recommend
77
+ # you configure your source control system to ignore this file.
78
+ config.example_status_persistence_file_path = "spec/examples.txt"
79
+
80
+ # Limits the available syntax to the non-monkey patched syntax that is
81
+ # recommended. For more details, see:
82
+ # - http://rspec.info/blog/2012/06/rspecs-new-expectation-syntax/
83
+ # - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
84
+ # - http://rspec.info/blog/2014/05/notable-changes-in-rspec-3/#zero-monkey-patching-mode
85
+ config.disable_monkey_patching!
86
+
87
+ # This setting enables warnings. It's recommended, but in some cases may
88
+ # be too noisy due to issues in dependencies.
89
+ config.warnings = true
90
+
91
+ # Many RSpec users commonly either run the entire suite or an individual
92
+ # file, and it's useful to allow more verbose output when running an
93
+ # individual spec file.
94
+ if config.files_to_run.one?
95
+ # Use the documentation formatter for detailed output,
96
+ # unless a formatter has already been configured
97
+ # (e.g. via a command-line flag).
98
+ config.default_formatter = 'doc'
99
+ end
100
+
101
+ # Print the 10 slowest examples and example groups at the
102
+ # end of the spec run, to help surface which specs are running
103
+ # particularly slow.
104
+ config.profile_examples = 10
105
+
106
+ # Run specs in random order to surface order dependencies. If you find an
107
+ # order dependency and want to debug it, you can fix the order by providing
108
+ # the seed, which is printed after each run.
109
+ # --seed 1234
110
+ config.order = :random
111
+
112
+ # Seed global randomization in this process using the `--seed` CLI option.
113
+ # Setting this allows you to use `--seed` to deterministically reproduce
114
+ # test failures related to randomization by passing the same `--seed` value
115
+ # as the one that triggered the failure.
116
+ Kernel.srand config.seed
117
+ =end
118
+ end
119
+ RSpec::Matchers.define :have_style do |style|
120
+ match do |widget|
121
+ expect(widget.getStyle & style.swt_constant).to eq(style.swt_constant)
122
+ end
123
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glimmer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5.470
4
+ version: 0.1.8.470
5
5
  platform: ruby
6
6
  authors:
7
7
  - AndyMaleh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-22 00:00:00.000000000 Z
11
+ date: 2017-07-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +38,34 @@ dependencies:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: 3.5.0
47
+ name: rspec
48
+ prerelease: false
49
+ type: :development
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 3.5.0
55
+ - !ruby/object:Gem::Dependency
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: 3.5.0
61
+ name: rspec-mocks
62
+ prerelease: false
63
+ type: :development
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 3.5.0
41
69
  - !ruby/object:Gem::Dependency
42
70
  requirement: !ruby/object:Gem::Requirement
43
71
  requirements:
@@ -127,11 +155,14 @@ description: JRuby DSL that enables easy and efficient authoring of user-interfa
127
155
  email: andy.am@gmail.com
128
156
  executables:
129
157
  - glimmer
158
+ - girb
130
159
  extensions: []
131
160
  extra_rdoc_files:
132
161
  - LICENSE.txt
133
162
  - README.markdown
134
163
  files:
164
+ - ".coveralls.yml"
165
+ - ".rspec"
135
166
  - ".ruby-gemset"
136
167
  - ".ruby-version"
137
168
  - Gemfile
@@ -140,6 +171,8 @@ files:
140
171
  - Rakefile
141
172
  - TODO.md
142
173
  - VERSION
174
+ - bin/girb
175
+ - bin/girb_runner.rb
143
176
  - bin/glimmer
144
177
  - glimmer.gemspec
145
178
  - images/Bitter-sweet.jpg
@@ -199,21 +232,21 @@ files:
199
232
  - samples/login.rb
200
233
  - samples/tictactoe/tic_tac_toe.rb
201
234
  - samples/tictactoe/tic_tac_toe_board.rb
202
- - test/glimmer_combo_data_binding_test.rb
203
- - test/glimmer_constant_test.rb
204
- - test/glimmer_data_binding_test.rb
205
- - test/glimmer_list_data_binding_test.rb
206
- - test/glimmer_listeners_test.rb
207
- - test/glimmer_shine_data_binding_test.rb
208
- - test/glimmer_tab_item_test.rb
209
- - test/glimmer_table_data_binding_test.rb
210
- - test/glimmer_test.rb
211
- - test/helper.rb
212
- - test/observable_model_test.rb
213
- - test/r_widget_test.rb
214
- - test/samples/contactmanager/contact_manager_presenter_test.rb
215
- - test/samples/tictactoe/tic_tac_toe_test.rb
216
- - test/xml/glimmer_xml_test.rb
235
+ - spec/lib/command_handlers/models/observable_model_spec.rb
236
+ - spec/lib/command_handlers/models/r_widget_spec.rb
237
+ - spec/lib/glimmer__combo_data_binding__spec.rb
238
+ - spec/lib/glimmer__constant__spec.rb
239
+ - spec/lib/glimmer__data_binding__spec.rb
240
+ - spec/lib/glimmer__list_data_binding__spec.rb
241
+ - spec/lib/glimmer__listeners__spec.rb
242
+ - spec/lib/glimmer__shine_data_binding__spec.rb
243
+ - spec/lib/glimmer__tab_item__spec.rb
244
+ - spec/lib/glimmer__table_data_binding__spec.rb
245
+ - spec/lib/glimmer_spec.rb
246
+ - spec/lib/xml/glimmer_xml_spec.rb
247
+ - spec/samples/contactmanager/contact_manager_presenter_spec.rb
248
+ - spec/samples/tictactoe/tic_tac_toe_spec.rb
249
+ - spec/spec_helper.rb
217
250
  homepage: http://github.com/AndyObtiva/glimmer
218
251
  licenses:
219
252
  - MIT