quiz 0.1.3 → 0.2.0

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.
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