examen 1.2.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +7 -0
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +14 -0
  4. data/.rspec +2 -0
  5. data/.travis.yml +6 -0
  6. data/Gemfile +8 -0
  7. data/Gemfile.lock +91 -0
  8. data/Guardfile +40 -0
  9. data/LICENSE.txt +22 -0
  10. data/README.md +65 -0
  11. data/README.rdoc +65 -0
  12. data/Rakefile +25 -0
  13. data/doc/prct10.pdf +0 -0
  14. data/doc/prct5.pdf +0 -0
  15. data/doc/prct6.pdf +0 -0
  16. data/doc/prct7.pdf +0 -0
  17. data/doc/prct8.pdf +0 -0
  18. data/doc/prct9.pdf +0 -0
  19. data/doc/pruebas/index.html +430 -0
  20. data/examen.gemspec +29 -0
  21. data/html/Exam.html +296 -0
  22. data/html/Examen.html +119 -0
  23. data/html/ExamenIu.html +278 -0
  24. data/html/Lista.html +536 -0
  25. data/html/Object.html +119 -0
  26. data/html/Pregunta.html +361 -0
  27. data/html/PreguntaVerdaderoFalso.html +169 -0
  28. data/html/Quiz.html +363 -0
  29. data/html/README_rdoc.html +154 -0
  30. data/html/created.rid +11 -0
  31. data/html/fonts.css +167 -0
  32. data/html/fonts/Lato-Light.ttf +0 -0
  33. data/html/fonts/Lato-LightItalic.ttf +0 -0
  34. data/html/fonts/Lato-Regular.ttf +0 -0
  35. data/html/fonts/Lato-RegularItalic.ttf +0 -0
  36. data/html/fonts/SourceCodePro-Bold.ttf +0 -0
  37. data/html/fonts/SourceCodePro-Regular.ttf +0 -0
  38. data/html/images/add.png +0 -0
  39. data/html/images/arrow_up.png +0 -0
  40. data/html/images/brick.png +0 -0
  41. data/html/images/brick_link.png +0 -0
  42. data/html/images/bug.png +0 -0
  43. data/html/images/bullet_black.png +0 -0
  44. data/html/images/bullet_toggle_minus.png +0 -0
  45. data/html/images/bullet_toggle_plus.png +0 -0
  46. data/html/images/date.png +0 -0
  47. data/html/images/delete.png +0 -0
  48. data/html/images/find.png +0 -0
  49. data/html/images/loadingAnimation.gif +0 -0
  50. data/html/images/macFFBgHack.png +0 -0
  51. data/html/images/package.png +0 -0
  52. data/html/images/page_green.png +0 -0
  53. data/html/images/page_white_text.png +0 -0
  54. data/html/images/page_white_width.png +0 -0
  55. data/html/images/plugin.png +0 -0
  56. data/html/images/ruby.png +0 -0
  57. data/html/images/tag_blue.png +0 -0
  58. data/html/images/tag_green.png +0 -0
  59. data/html/images/transparent.png +0 -0
  60. data/html/images/wrench.png +0 -0
  61. data/html/images/wrench_orange.png +0 -0
  62. data/html/images/zoom.png +0 -0
  63. data/html/index.html +178 -0
  64. data/html/js/darkfish.js +140 -0
  65. data/html/js/jquery.js +4 -0
  66. data/html/js/navigation.js +142 -0
  67. data/html/js/search.js +109 -0
  68. data/html/js/search_index.js +1 -0
  69. data/html/js/searcher.js +228 -0
  70. data/html/rdoc.css +580 -0
  71. data/html/table_of_contents.html +204 -0
  72. data/lib/examen.rb +3 -0
  73. data/lib/examen/base.rb +3 -0
  74. data/lib/examen/exam.rb +24 -0
  75. data/lib/examen/examen_iu.rb +38 -0
  76. data/lib/examen/lista.rb +108 -0
  77. data/lib/examen/pregunta.rb +38 -0
  78. data/lib/examen/pregunta_verdadero_falso.rb +16 -0
  79. data/lib/examen/quiz.rb +35 -0
  80. data/lib/examen/version.rb +4 -0
  81. data/spec/examen_spec.rb +334 -0
  82. data/spec/spec_helper.rb +99 -0
  83. metadata +229 -0
@@ -0,0 +1,4 @@
1
+ # encoding: utf-8
2
+ class Examen
3
+ VERSION = "1.2.4"
4
+ end
@@ -0,0 +1,334 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+ require 'examen'
4
+
5
+ class Pregunta
6
+ describe Examen do
7
+
8
+ before :each do
9
+ @q = Pregunta.new(:text => '2+2=', :right => 4 , :distractors => [9,3,5])
10
+ end
11
+
12
+ context "Pregunta" do
13
+ it "Debe tener texto y alguna pregunta" do
14
+ expect(@q.text)=='2+2='
15
+ expect(@q.right)==4
16
+ end
17
+ it "debe tener 3 componentes" do
18
+ expect {Pregunta.new(:text => '5*8=?')}.to raise_error(ArgumentError)
19
+ end
20
+ it "mostrar pregunta" do
21
+ expect(@q).to respond_to :text
22
+ end
23
+ it "mostrar respuesta correcta" do
24
+ expect(@q).to respond_to :right
25
+ end
26
+ it "mostrar opciones incorrectas" do
27
+ expect(@q).to respond_to :distractors
28
+ end
29
+ it "mostrar por pantalla" do
30
+ expect(@q).to respond_to :to_s
31
+ end
32
+ it "Debe indicar su dificultad" do
33
+ expect(@q).to respond_to :difficulty
34
+ end
35
+ it "mostrarse correctamente" do
36
+ expect(@q.to_s).to match(/.+\n(\w\)\s+(\w|\d)+\n)+/)
37
+ end
38
+ it "Debe incluir el modulo comparable" do
39
+ expect(@q).to be_kind_of Comparable
40
+ end
41
+ it "Debe comparase con otra pregunta correctamente" do
42
+ p = Pregunta.new(:text => '1+3=', :right => 4, :distractors => [0,5,9], :difficulty => 3)
43
+ expect(@q > p).to eq(false)
44
+ expect(@q < p).to eq(true)
45
+ expect(@q == p).to eq(false)
46
+ expect(@q <= p).to eq(true)
47
+ expect(@q >= p).to eq(false)
48
+ end
49
+
50
+ end
51
+ end
52
+ end
53
+
54
+
55
+ class Examen
56
+
57
+ describe Examen do
58
+ before :each do
59
+ @q = Pregunta.new(:text => '2+2=', :right => 4 , :distractors => [9,3,5])
60
+ @n = Nodo.new(@q, nil, nil)
61
+ @l = Lista.new(@q)
62
+
63
+ end
64
+
65
+ context "Nodo" do
66
+ it "Debe existir un nodo de la lista con sus datos con su siguiente y su anterior" do
67
+ expect(@n.value)==@q
68
+ expect(@n.next)==nil
69
+ expect(@n.prev)==nil
70
+ end
71
+ end
72
+
73
+ context "Lista" do
74
+ it "Se puede extraer el primer elemento de la lista" do
75
+ expect(@l).to respond_to :pop
76
+ expect(@l.pop)== @q
77
+
78
+ end
79
+ it "Se puede insertar un elemento" do
80
+ expect(@l).to respond_to :<<
81
+ expect {@l << @n}.to raise_error(TypeError)
82
+ expect {@l << @l}.to raise_error(TypeError)
83
+ expect {@l << @q}==@q
84
+
85
+ end
86
+ it "Se puede insertar varios elementos" do
87
+ expect(@l).to respond_to :push_back
88
+ expect(@l.push_back(@q, @q)).to be_instance_of(Array)
89
+ end
90
+
91
+ it "Debe existir una lista con su cabeza" do
92
+ expect(@l).to respond_to :cabeza
93
+ end
94
+
95
+ it "Debe inicializarse con una pregunta" do
96
+ expect {Lista.new()}.to raise_error(ArgumentError)
97
+ expect {Lista.new(Nodo.new(@q, nil, nil))}.to raise_error(TypeError)
98
+ end
99
+
100
+ it "Debe mostrarse correctamente" do
101
+ text = "¿Cuál es la salida del siguiente código Ruby?\nclass Xyz\n\sdef pots\n\s\s@nice\n\send\nend\n\nxyz = Xyz.new\np xyz.pots"
102
+ examen = Lista.new(Pregunta.new(:text => text, :right =>"nil", :distractors => ["#<Xyz:0xa000208>","0","Ninguna de las anteriores"]))
103
+
104
+ text = "La siguiente definición de un hash en Ruby es válida:\nhash_raro = {\n\s[1, 2, 3] => Object.new(),\nHash.new => :toto\n}"
105
+ examen << PreguntaVerdaderoFalso.new(:text => text, :right => false)
106
+
107
+ text = %Q{¿Cuál es la salida del siguiente código Ruby?\nclass Array\n\sdef say_hi\n\s\s"HEY!"\n\send\nend\n p [1, "bob"].say_hi}
108
+ examen << Pregunta.new(:text => text, :right =>"HEY!", :distractors => ["1","bob","Ninguna de las anteriores"])
109
+
110
+ text = "¿Cuál es el tipo del objeto en el siguiente código Ruby?\nclass Objeto\nend"
111
+ examen << Pregunta.new(:text => text, :right =>"Una instancia de la clase Class", :distractors => ["Una Constante", "Un Objeto", "Ninguna de las anteriores"])
112
+
113
+ text = "Es apropiado que una clase Tablero herede de una clase Juego"
114
+ examen << PreguntaVerdaderoFalso.new(:text => text, :right => false)
115
+
116
+ expect(examen.to_s).to match(/(\d+\.-\)(.|\s|\n)+)+/)
117
+ end
118
+ it "Debe incluir el modulo enumerable" do
119
+ expect(@l).to be_kind_of Enumerable
120
+ end
121
+ it "Debe ordenar correctamente" do
122
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
123
+ @l << p
124
+ expect(@l.sort).to eq([p, @q])
125
+ end
126
+ it "Debe indicar el maximo" do
127
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
128
+ @l << p
129
+ expect(@l.max).to eq(@q)
130
+ end
131
+ it "Debe indicar el minimo" do
132
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
133
+ @l << p
134
+ expect(@l.min).to eq(p)
135
+ end
136
+ it "Debe saber usar all?" do
137
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
138
+ @l << p
139
+ expect(@l.all?{|x| x.difficulty > 0}).to eq(false)
140
+ end
141
+ it "Debe saber contar" do
142
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
143
+ @l << p
144
+ expect(@l.count(p))==1
145
+ end
146
+ it "Debe encontrar correctamente" do
147
+ p = PreguntaVerdaderoFalso.new(:text => "¿2+2=4?", :right => true, :difficulty => 0)
148
+ @l << p
149
+ expect(@l.find{|x| x.difficulty == 1}).to eq(@q)
150
+ end
151
+ it " Debe existir metodo inv" do
152
+ expect(@l).to respond_to :inv
153
+ end
154
+ it " Debe existir metodo invertir como privado" do
155
+ expect(@l.private_methods.include? :invertir).to eq(true)
156
+ end
157
+ it "Debe saber invertir la lista" do
158
+ pp = Pregunta.new(:text => '2+2=', :right => 4 , :distractors => [9,3,5], :difficulty => 3)
159
+ @l << pp
160
+ expect(@l.inv.pop == pp).to be true
161
+ expect(@l.inv {|p| p.difficulty > 3} == nil).to be true
162
+ expect((@l.inv {|p| p.difficulty == 3}).pop).to eq(pp)
163
+ end
164
+ end
165
+
166
+ context "Exam" do
167
+ before :each do
168
+ @e = Exam.new(@q)
169
+ end
170
+
171
+ it "Debe tener un atributo lista" do
172
+ expect(@e).to respond_to :list
173
+ end
174
+ it "Debe mostrar por pantalla el examen" do
175
+ expect(@e).to respond_to :to_s
176
+ end
177
+ it "Debe mostrarse correctamente el examen" do
178
+ expect(@e.to_s).to match(/(\d+\.-\)(.|\s|\n)+)+/)
179
+ end
180
+
181
+ it "Se puede insertar un elemento" do
182
+ expect(@e).to respond_to :<<
183
+ expect {@e << @n}.to raise_error(TypeError)
184
+ expect {@e << @e}.to raise_error(TypeError)
185
+ expect {@e << @q}==@q
186
+
187
+ end
188
+ it "Se puede insertar varios elementos" do
189
+ expect(@e).to respond_to :push_back
190
+ expect(@e.push_back(@q, @q)).to be_instance_of(Array)
191
+ end
192
+
193
+ it "Debe inicializarse con una pregunta" do
194
+ expect {Exam.new()}.to raise_error(ArgumentError)
195
+ expect {Exam.new(Nodo.new(@q, nil, nil))}.to raise_error(TypeError)
196
+ end
197
+ end
198
+ end
199
+ end
200
+
201
+ class ExamenIu
202
+ describe ExamenIu do
203
+ before :each do
204
+ @q = Pregunta.new(:text => "2+2=", :right => 4, :distractors => [1, 2, 3])
205
+ @i = ExamenIu.new(@q)
206
+ end
207
+ context "ExamenIu" do
208
+ it "Debe tener un atributo examen" do
209
+ expect(@i).to respond_to :exam
210
+ end
211
+ it "Debe inicializarse con una pregunta" do
212
+ expect {ExamenIu.new()}.to raise_error(ArgumentError)
213
+ expect {ExamenIu.new(Nodo.new(@q, nil, nil))}.to raise_error(TypeError)
214
+ end
215
+ it "Debe tener un metodo test" do
216
+ expect(@i).to respond_to :test
217
+ expect(@i.test([4])).to eq([1])
218
+ expect(@i.test([3])).to eq([0])
219
+ @i.exam << @q
220
+ expect(@i.test([4, 3])).to eq([1, 0])
221
+ end
222
+ end
223
+ end
224
+ end
225
+
226
+
227
+ class PreguntaVerdaderoFalso
228
+
229
+ describe Examen do
230
+ before :each do
231
+ @q = PreguntaVerdaderoFalso.new(:text => '¿2+2=4?', :right => true)
232
+ end
233
+
234
+ context "Pregunta Verdadero y Falso" do
235
+ it "Debe tener texto y alguna pregunta" do
236
+ expect(@q.text)=='¿2+2=4?'
237
+ expect(@q.right)=='Cierto'
238
+ end
239
+
240
+ it "Debe heredar de Pregunta" do
241
+ expect(@q).to be_a Pregunta
242
+ end
243
+
244
+ it "Debe no ser instancia de Pregunta" do
245
+ expect(@q.instance_of?Pregunta).to eq(false)
246
+ end
247
+
248
+ it "debe tener 2 componentes" do
249
+ expect {PreguntaVerdaderoFalso.new(:text => '5*8=?')}.to raise_error(ArgumentError)
250
+ end
251
+ it "mostrar pregunta" do
252
+ expect(@q).to respond_to :text
253
+ end
254
+ it "mostrar respuesta correcta" do
255
+ expect(@q).to respond_to :right
256
+ end
257
+ it "mostrar opciones incorrectas" do
258
+ expect(@q).to respond_to :distractors
259
+ end
260
+ it "Debe indicar su dificultad" do
261
+ expect(@q).to respond_to :difficulty
262
+ end
263
+ it "mostrar por pantalla" do
264
+ expect(@q).to respond_to :to_s
265
+ end
266
+ it "mostrarse correctamente" do
267
+ expect(@q.to_s).to match(/(\d|\w)+\n(\w\)\s+(\w|\d)+\n)+/)
268
+ end
269
+ it "Debe incluir el modulo comparable" do
270
+ expect(@q).to be_kind_of Comparable
271
+ end
272
+ it "Debe comparase con otra pregunta correctamente" do
273
+ p = PreguntaVerdaderoFalso.new(:text => '¿1+3=4?', :right => true, :difficulty => 3)
274
+ expect(@q > p).to eq(false)
275
+ expect(@q < p).to eq(true)
276
+ expect(@q == p).to eq(false)
277
+ expect(@q <= p).to eq(true)
278
+ expect(@q >= p).to eq(false)
279
+ end
280
+ end
281
+ end
282
+ end
283
+
284
+ class Quiz
285
+ describe Examen do
286
+ before :each do
287
+ @q = Quiz.new("Cuestionario LPP 05/12/2014") do
288
+
289
+ question "¿Cuantos argumentos de tipo bloque puede recibir un metodo?",
290
+ right => "1",
291
+ wrong => "2",
292
+ wrong => "muchos",
293
+ wrong => "los que defina el usuario"
294
+
295
+ question "En Ruby los bloques son objetos que contienen codigo",
296
+ wrong => "Cierto",
297
+ right => "Falso"
298
+ end
299
+ end
300
+ context "Quiz" do
301
+
302
+ it "Debe tener un examen, un contador y un titulo" do
303
+ expect(@q.title)=="Cuestionario LPP 05/12/2014"
304
+ expect(@q.count)==2
305
+ expect(@q.exam.instance_of?Exam).to eq(true)
306
+ end
307
+ it "Debe mostrar examen" do
308
+ expect(@q).to respond_to :exam
309
+ end
310
+ it "Debe mostrar cantidad" do
311
+ expect(@q).to respond_to :count
312
+ end
313
+ it "Debe mostrar el titulo" do
314
+ expect(@q).to respond_to :title
315
+ end
316
+ it "Debe generar simbolo right" do
317
+ expect(@q).to respond_to :right
318
+ expect(@q.right.instance_of?Symbol).to eq(true)
319
+ end
320
+ it "Debe generar Array como simbolo" do
321
+ expect(@q).to respond_to :wrong
322
+ expect(@q.wrong.instance_of?Array).to eq(true)
323
+ end
324
+ it "Debe saber leer una pregunta" do
325
+ expect(@q).to respond_to :question
326
+ expect(@q.question("2+2=", @q.right=> "4", @q.wrong=> "5")).to be_instance_of(Exam)
327
+ end
328
+ it "mostrarse correctamente" do
329
+ expect(@q.to_s).to match(/\s\s.+\n#+\n\n.+/)
330
+ end
331
+ end
332
+ end
333
+ end
334
+
@@ -0,0 +1,99 @@
1
+ # encoding: utf-8
2
+ # This file was generated by the `rspec --init` command. Conventionally, all
3
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
4
+ # The generated `.rspec` file contains `--require spec_helper` which will cause this
5
+ # file to always be loaded, without a need to explicitly require it in any files.
6
+ #
7
+ # Given that it is always loaded, you are encouraged to keep this file as
8
+ # light-weight as possible. Requiring heavyweight dependencies from this file
9
+ # will add to the boot time of your test suite on EVERY test run, even for an
10
+ # individual file that may not need all of that loaded. Instead, consider making
11
+ # a separate helper file that requires the additional dependencies and performs
12
+ # the additional setup, and require it from the spec files that actually need it.
13
+ #
14
+ # The `.rspec` file also contains a few flags that are not defaults but that
15
+ # users commonly want.
16
+ #
17
+ require 'coveralls'
18
+ Coveralls.wear!
19
+
20
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
21
+ RSpec.configure do |config|
22
+ # rspec-expectations config goes here. You can use an alternate
23
+ # assertion/expectation library such as wrong or the stdlib/minitest
24
+ # assertions if you prefer.
25
+ config.expect_with :rspec do |expectations|
26
+ # This option will default to `true` in RSpec 4. It makes the `description`
27
+ # and `failure_message` of custom matchers include text for helper methods
28
+ # defined using `chain`, e.g.:
29
+ # be_bigger_than(2).and_smaller_than(4).description
30
+ # # => "be bigger than 2 and smaller than 4"
31
+ # ...rather than:
32
+ # # => "be bigger than 2"
33
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
34
+ end
35
+
36
+ # rspec-mocks config goes here. You can use an alternate test double
37
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
38
+ config.mock_with :rspec do |mocks|
39
+ # Prevents you from mocking or stubbing a method that does not exist on
40
+ # a real object. This is generally recommended, and will default to
41
+ # `true` in RSpec 4.
42
+ mocks.verify_partial_doubles = true
43
+ end
44
+
45
+ # The settings below are suggested to provide a good initial experience
46
+ # with RSpec, but feel free to customize to your heart's content.
47
+ =begin
48
+ # These two settings work together to allow you to limit a spec run
49
+ # to individual examples or groups you care about by tagging them with
50
+ # `:focus` metadata. When nothing is tagged with `:focus`, all examples
51
+ # get run.
52
+ config.filter_run :focus
53
+ config.run_all_when_everything_filtered = true
54
+
55
+ # Limits the available syntax to the non-monkey patched syntax that is recommended.
56
+ # For more details, see:
57
+ # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
58
+ # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
59
+ # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
60
+ config.disable_monkey_patching!
61
+
62
+ # This setting enables warnings. It's recommended, but in some cases may
63
+ # be too noisy due to issues in dependencies.
64
+ config.warnings = true
65
+
66
+ # Many RSpec users commonly either run the entire suite or an individual
67
+ # file, and it's useful to allow more verbose output when running an
68
+ # individual spec file.
69
+ if config.files_to_run.one?
70
+ # Use the documentation formatter for detailed output,
71
+ # unless a formatter has already been configured
72
+ # (e.g. via a command-line flag).
73
+ config.default_formatter = 'doc'
74
+ end
75
+
76
+ # Print the 10 slowest examples and example groups at the
77
+ # end of the spec run, to help surface which specs are running
78
+ # particularly slow.
79
+ config.profile_examples = 10
80
+
81
+ # Run specs in random order to surface order dependencies. If you find an
82
+ # order dependency and want to debug it, you can fix the order by providing
83
+ # the seed, which is printed after each run.
84
+ # --seed 1234
85
+ config.order = :random
86
+
87
+ # Seed global randomization in this process using the `--seed` CLI option.
88
+ # Setting this allows you to use `--seed` to deterministically reproduce
89
+ # test failures related to randomization by passing the same `--seed` value
90
+ # as the one that triggered the failure.
91
+ Kernel.srand config.seed
92
+ =end
93
+
94
+ config.run_all_when_everything_filtered = true
95
+ config.filter_run :focus
96
+
97
+ config.order = 'random'
98
+
99
+ end
metadata ADDED
@@ -0,0 +1,229 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: examen
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.4
5
+ platform: ruby
6
+ authors:
7
+ - César Ravelo Martínez
8
+ - Ayose Castillo Barroso
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2014-12-11 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '1.7'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '1.7'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rake
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: '10.0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '10.0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: rspec
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: '2.11'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: '2.11'
56
+ - !ruby/object:Gem::Dependency
57
+ name: guard
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: guard-rspec
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
84
+ - !ruby/object:Gem::Dependency
85
+ name: guard-bundler
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: coveralls
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
+ description: Gema para la implementación de preguntas de respuestas simple frente
113
+ a un conjunto de respuestas
114
+ email:
115
+ - alu0100511314@ull.edu.es
116
+ - alu0100600810@ull.edu.es
117
+ executables: []
118
+ extensions: []
119
+ extra_rdoc_files: []
120
+ files:
121
+ - ".coveralls.yml"
122
+ - ".gitignore"
123
+ - ".rspec"
124
+ - ".travis.yml"
125
+ - Gemfile
126
+ - Gemfile.lock
127
+ - Guardfile
128
+ - LICENSE.txt
129
+ - README.md
130
+ - README.rdoc
131
+ - Rakefile
132
+ - doc/prct10.pdf
133
+ - doc/prct5.pdf
134
+ - doc/prct6.pdf
135
+ - doc/prct7.pdf
136
+ - doc/prct8.pdf
137
+ - doc/prct9.pdf
138
+ - doc/pruebas/index.html
139
+ - examen.gemspec
140
+ - html/Exam.html
141
+ - html/Examen.html
142
+ - html/ExamenIu.html
143
+ - html/Lista.html
144
+ - html/Object.html
145
+ - html/Pregunta.html
146
+ - html/PreguntaVerdaderoFalso.html
147
+ - html/Quiz.html
148
+ - html/README_rdoc.html
149
+ - html/created.rid
150
+ - html/fonts.css
151
+ - html/fonts/Lato-Light.ttf
152
+ - html/fonts/Lato-LightItalic.ttf
153
+ - html/fonts/Lato-Regular.ttf
154
+ - html/fonts/Lato-RegularItalic.ttf
155
+ - html/fonts/SourceCodePro-Bold.ttf
156
+ - html/fonts/SourceCodePro-Regular.ttf
157
+ - html/images/add.png
158
+ - html/images/arrow_up.png
159
+ - html/images/brick.png
160
+ - html/images/brick_link.png
161
+ - html/images/bug.png
162
+ - html/images/bullet_black.png
163
+ - html/images/bullet_toggle_minus.png
164
+ - html/images/bullet_toggle_plus.png
165
+ - html/images/date.png
166
+ - html/images/delete.png
167
+ - html/images/find.png
168
+ - html/images/loadingAnimation.gif
169
+ - html/images/macFFBgHack.png
170
+ - html/images/package.png
171
+ - html/images/page_green.png
172
+ - html/images/page_white_text.png
173
+ - html/images/page_white_width.png
174
+ - html/images/plugin.png
175
+ - html/images/ruby.png
176
+ - html/images/tag_blue.png
177
+ - html/images/tag_green.png
178
+ - html/images/transparent.png
179
+ - html/images/wrench.png
180
+ - html/images/wrench_orange.png
181
+ - html/images/zoom.png
182
+ - html/index.html
183
+ - html/js/darkfish.js
184
+ - html/js/jquery.js
185
+ - html/js/navigation.js
186
+ - html/js/search.js
187
+ - html/js/search_index.js
188
+ - html/js/searcher.js
189
+ - html/rdoc.css
190
+ - html/table_of_contents.html
191
+ - lib/examen.rb
192
+ - lib/examen/base.rb
193
+ - lib/examen/exam.rb
194
+ - lib/examen/examen_iu.rb
195
+ - lib/examen/lista.rb
196
+ - lib/examen/pregunta.rb
197
+ - lib/examen/pregunta_verdadero_falso.rb
198
+ - lib/examen/quiz.rb
199
+ - lib/examen/version.rb
200
+ - spec/examen_spec.rb
201
+ - spec/spec_helper.rb
202
+ homepage: ''
203
+ licenses:
204
+ - MIT
205
+ metadata: {}
206
+ post_install_message:
207
+ rdoc_options: []
208
+ require_paths:
209
+ - lib
210
+ - lib/examen
211
+ required_ruby_version: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ required_rubygems_version: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - ">="
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ requirements: []
222
+ rubyforge_project:
223
+ rubygems_version: 2.2.2
224
+ signing_key:
225
+ specification_version: 4
226
+ summary: Gema para la implementación de preguntas de respuesta de selección simple
227
+ test_files:
228
+ - spec/examen_spec.rb
229
+ - spec/spec_helper.rb