quiz 0.1.3 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/lib/quiz.rb +20 -2
  5. metadata +64 -22
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5e86fb7e887fcf8e9c48a255facbea73883b360a
4
- data.tar.gz: e7a4749c424b475ff83f67d2782e7b4d15d33b81
3
+ metadata.gz: 69d07124bff92e24ea789c418c5f9cd083eefc53
4
+ data.tar.gz: ca20ff236417a73f9590c3c041ac8d3913b3065f
5
5
  SHA512:
6
- metadata.gz: 03f2d8442948b9ec436aa7177c39fa702014121b3414cf9ed447d18c67494f073279c0dccff176bf0c5a152637fcf6a650a902d4a5bae5201dfe6abfe55331c2
7
- data.tar.gz: 9a98c01e73f18b86fa888dd80e0aa4bc93296c92f85d8c6e5a5be95f52e6e5d9223386a2d92198f271f1800a8999d7decf3e2b36e89672916bcfff7a78cac539
6
+ metadata.gz: 96c1736b2cc79bc8d9a1a7e5ac1d09f43ead7bf7cf7e5361da07b4444e0c37b7385f8c89f0332f5fd51252956bb3eee050dc03644adda7312b40e3e7c1c8cad6
7
+ data.tar.gz: 2385e5c42762f8974194afc0e931dff01523cfa3227f9505b693a7b7460fe9ecdf8ffd43aa122ce844ad5aeab35cf140dc4d2972bd98f09ea1f882bf941a3007
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -4,21 +4,37 @@
4
4
 
5
5
  require 'rxfhelper'
6
6
  require 'rexml/document'
7
+ require 'rowx'
7
8
 
8
9
  class Quiz
9
10
  include REXML
10
11
 
11
12
  def initialize(x)
12
- @doc = Document.new(RXFHelper.read(x))
13
+
14
+ s, type = RXFHelper.read(x)
15
+
16
+ xml = case type
17
+ when :xml then
18
+ s
19
+ when :unknown
20
+ lines = s.strip.lines
21
+ title = lines.first
22
+ title.prepend 'title: ' unless title =~ /^title:/
23
+ RowX.new(lines.join).to_xml
24
+ end
25
+
26
+ @doc = Document.new(xml)
27
+
13
28
  end
14
29
 
15
- def start(n=3)
30
+ def start(n=3, return_score: true)
16
31
 
17
32
  nodes = XPath.match(@doc.root, '*[question]')
18
33
  list = (0...nodes.length).to_a.sample(n)
19
34
  questions = nodes.values_at(*list)
20
35
 
21
36
  @results = questions.map do |q|
37
+
22
38
  question, answer = q.text('question').strip, q.text('answer').strip
23
39
  *options = XPath.match(q,'./options//option/text()').sort{rand}
24
40
  a_options = options.length.times.map {|x| (97 + x).chr }.\
@@ -39,6 +55,8 @@ class Quiz
39
55
  end
40
56
  result
41
57
  end
58
+
59
+ score() if return_score
42
60
  end
43
61
 
44
62
  def score()
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quiz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,27 +10,69 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDRDCCAiygAwIBAgIBADANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
14
  YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTEzMDIwNjIxMDIyN1oXDTE0MDIwNjIxMDIyN1owSDESMBAG
15
+ 8ixkARkWAmV1MB4XDTE2MDYwOTA5MzAyOFoXDTE3MDYwOTA5MzAyOFowSDESMBAG
16
16
  A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
17
  EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAM4Y3vyEfgNJWUYC2FZFrNNAryCI+guK4rs/XsfUVHfJKzofhKTh72OhMd8E
19
- csSgUgXXpjesGbDtviEOAzCuNrxIATsHP5UskpK6mMcr2MZk5XGIhDqJNFZaPCJ0
20
- 1C5V/Jl5defLs56oWKRvQnbRQf0ksKjHFDcpV/CymtfkkPMoTe4dSdINh3tR4ZPd
21
- NAB+EZXnQpbEMO94YJzaBJgsH0jULDTiaBfx/uNdn+FsA+GhjNOwHzZzVxOD9ell
22
- a4qnxtzWSPCTD3B6Dl5x9jjLu7MaPYLiwWL7/ti2RGiiVPZjM/EQGN4ioJ5+pGhn
23
- iVoqsOVLrUhpNkLfd5BynCDjJMcCAwEAAaM5MDcwCQYDVR0TBAIwADAdBgNVHQ4E
24
- FgQU3i+Yg9u3J6H+z6uwc58iTUkmJW4wCwYDVR0PBAQDAgSwMA0GCSqGSIb3DQEB
25
- BQUAA4IBAQDMHKnk4ON9g6WVhCqH7yyg24/GmtieHEinmCXSdaR9W2qPQ0/Af6vm
26
- ejXxdE0IrPoaG4+GSXjeR7r1RIY+Ptf/z1gyyvQUq3gjEIV2TKx1W5K9IZjT8PAY
27
- AkGHC2MtQVWkMFyk+cyM/xx8WFt82zRHKSIwQX7tk0/F9yjSyLatK1PFDLNAuXlK
28
- tKEu6b9IzJxVBYvMTompVcI9ETNd1UX/3BzU105woM97YpW6uYmYiFIldLR8euTk
29
- fkSrmWU0WpW6K2y48gkUgFk03Hkq0GXTe8lDFKL+QxUmoMP8yMdmH9kHrXnuiUHc
30
- a7dGEztbD2mnll31+u+WB3LIGSCZEd4M
18
+ ggEBALIoUOiE1EiwHDA+hvtLRNNmeSajTBQGsiU4PBn/BGbu/KwqB1ZQ4Wi/Hgqp
19
+ VktR9+/uER1ITUeJtoxrRrt9jjrd8d5nGGV39HGYM5XLtRKQsaNnCLZblwk6WXWH
20
+ YWEWUbaIiw0EfnNfFJYwpDITbJD5RtH0khbcVYHBHUY+3lByWzmZ1GeKxyWzNiJr
21
+ D5tjuJE6tIowep4G+y16Yc58HJMPToLp7s5bf/GnoS9GnJVUxZFe80keyzfvX3/3
22
+ qtrNt3iy6z2BKRhNirxBGF9egMkAOgVFfckLtpNRK5fRrB2zZ+4lBMP/+C+DaRKr
23
+ 6XYT01yfuXfvB8rOWxwJ8bW3WcMCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUswx80nyXCRJGqpQQ85tCEWxTqJgwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAjRmQoxB4
27
+ kqUB+2Zgm68drYTrqynKfFrlkHWQQQF1OcdYb0tCq8Rq+V7vzy+LBK5FenLnbQgb
28
+ pCG1uB/oevMyWgPxlwlCnW6OCAtgGb88JClXeWMr4Qy/Vg2V7XtkZuPvO7/12shh
29
+ ZvaAOMhFbbKNP9M4aR3qUCoZrEmgevdKIX4BP0PoAFDm9AIHYKTOzGKZExu7IJ+6
30
+ q+hSAxZ21kTd+pHQq+wkK8+fsb9dKMKuB9r26IZL68lnFcwNOfMExajWVXRcJ77j
31
+ 0cDuXXzbVNVDof6P6KMULtn9EEBW5q0LAPamvnn+ylgCEJs4CI+chyAQEQTNs8SM
32
+ 1EJ3IA+IZfb7Zw==
31
33
  -----END CERTIFICATE-----
32
- date: 2013-07-27 00:00:00.000000000 Z
33
- dependencies: []
34
+ date: 2016-06-09 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: rxfhelper
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.3'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 0.3.0
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '0.3'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.3.0
56
+ - !ruby/object:Gem::Dependency
57
+ name: rowx
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '0.5'
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: 0.5.0
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '0.5'
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 0.5.0
34
76
  description:
35
77
  email: james@r0bertson.co.uk
36
78
  executables: []
@@ -48,17 +90,17 @@ require_paths:
48
90
  - lib
49
91
  required_ruby_version: !ruby/object:Gem::Requirement
50
92
  requirements:
51
- - - '>='
93
+ - - ">="
52
94
  - !ruby/object:Gem::Version
53
- version: '0'
95
+ version: 2.1.2
54
96
  required_rubygems_version: !ruby/object:Gem::Requirement
55
97
  requirements:
56
- - - '>='
98
+ - - ">="
57
99
  - !ruby/object:Gem::Version
58
100
  version: '0'
59
101
  requirements: []
60
102
  rubyforge_project:
61
- rubygems_version: 2.0.0.rc.2
103
+ rubygems_version: 2.5.1
62
104
  signing_key:
63
105
  specification_version: 4
64
106
  summary: quiz
metadata.gz.sig CHANGED
Binary file