rroonga 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. data/README.textile +71 -0
  2. data/Rakefile +213 -128
  3. data/TODO +0 -0
  4. data/example/bookmark.rb +12 -12
  5. data/ext/groonga/Makefile +233 -0
  6. data/ext/groonga/extconf.rb +1 -1
  7. data/ext/groonga/rb-grn-column.c +5 -5
  8. data/ext/groonga/rb-grn-index-column.c +31 -0
  9. data/ext/groonga/rb-grn-index-cursor.c +106 -0
  10. data/ext/groonga/rb-grn-logger.c +5 -5
  11. data/ext/groonga/rb-grn-object.c +48 -0
  12. data/ext/groonga/rb-grn-patricia-trie.c +1 -1
  13. data/ext/groonga/rb-grn-plugin.c +32 -0
  14. data/ext/groonga/rb-grn-posting.c +51 -0
  15. data/ext/groonga/rb-grn-table-cursor.c +6 -1
  16. data/ext/groonga/rb-grn-table.c +31 -13
  17. data/ext/groonga/rb-grn.h +21 -3
  18. data/ext/groonga/rb-groonga.c +3 -1
  19. data/lib/groonga.rb +1 -0
  20. data/lib/groonga/dumper.rb +25 -5
  21. data/lib/groonga/expression-builder.rb +2 -2
  22. data/lib/groonga/pagination.rb +99 -7
  23. data/lib/groonga/posting.rb +87 -0
  24. data/lib/groonga/record.rb +118 -11
  25. data/lib/groonga/schema.rb +18 -1
  26. data/test/groonga-test-utils.rb +1 -6
  27. data/test/run-test.rb +13 -28
  28. data/test/test-column.rb +4 -0
  29. data/test/test-database-dumper.rb +53 -10
  30. data/test/test-hash.rb +6 -6
  31. data/test/test-index-cursor.rb +93 -0
  32. data/test/test-plugin.rb +6 -0
  33. data/test/test-record.rb +162 -1
  34. data/test/test-schema-type.rb +6 -0
  35. data/test/test-schema.rb +17 -0
  36. data/test/test-table.rb +7 -2
  37. data/test/test-type.rb +9 -1
  38. metadata +135 -245
  39. data/AUTHORS +0 -5
  40. data/NEWS.ja.rdoc +0 -344
  41. data/NEWS.rdoc +0 -346
  42. data/README.ja.rdoc +0 -68
  43. data/README.rdoc +0 -68
  44. data/example/search/config.ru +0 -230
  45. data/example/search/public/css/groonga.css +0 -122
  46. data/ext/.gitignore +0 -2
  47. data/html/bar.svg +0 -153
  48. data/html/developer.html +0 -151
  49. data/html/developer.svg +0 -469
  50. data/html/download.svg +0 -253
  51. data/html/favicon.ico +0 -0
  52. data/html/favicon.svg +0 -591
  53. data/html/footer.html.erb +0 -33
  54. data/html/head.html.erb +0 -4
  55. data/html/header.html.erb +0 -17
  56. data/html/heading-mark.svg +0 -393
  57. data/html/index.html +0 -243
  58. data/html/install.svg +0 -636
  59. data/html/logo.svg +0 -612
  60. data/html/ranguba.css +0 -342
  61. data/html/readme.svg +0 -256
  62. data/html/tutorial.svg +0 -559
  63. data/license/LGPL +0 -504
  64. data/test-unit-notify/Rakefile +0 -47
  65. data/test-unit-notify/lib/test/unit/notify.rb +0 -104
  66. data/test-unit/COPYING +0 -56
  67. data/test-unit/GPL +0 -340
  68. data/test-unit/PSFL +0 -271
  69. data/test-unit/Rakefile +0 -53
  70. data/test-unit/TODO +0 -5
  71. data/test-unit/bin/testrb +0 -5
  72. data/test-unit/html/bar.svg +0 -153
  73. data/test-unit/html/developer.svg +0 -469
  74. data/test-unit/html/favicon.ico +0 -0
  75. data/test-unit/html/favicon.svg +0 -82
  76. data/test-unit/html/heading-mark.svg +0 -393
  77. data/test-unit/html/index.html +0 -247
  78. data/test-unit/html/index.html.ja +0 -270
  79. data/test-unit/html/install.svg +0 -636
  80. data/test-unit/html/logo.svg +0 -483
  81. data/test-unit/html/test-unit.css +0 -339
  82. data/test-unit/html/tutorial.svg +0 -559
  83. data/test-unit/lib/test/unit.rb +0 -328
  84. data/test-unit/lib/test/unit/assertionfailederror.rb +0 -25
  85. data/test-unit/lib/test/unit/assertions.rb +0 -1334
  86. data/test-unit/lib/test/unit/attribute.rb +0 -125
  87. data/test-unit/lib/test/unit/autorunner.rb +0 -363
  88. data/test-unit/lib/test/unit/collector.rb +0 -36
  89. data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
  90. data/test-unit/lib/test/unit/collector/dir.rb +0 -108
  91. data/test-unit/lib/test/unit/collector/load.rb +0 -144
  92. data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
  93. data/test-unit/lib/test/unit/color-scheme.rb +0 -106
  94. data/test-unit/lib/test/unit/color.rb +0 -96
  95. data/test-unit/lib/test/unit/diff.rb +0 -740
  96. data/test-unit/lib/test/unit/error.rb +0 -130
  97. data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
  98. data/test-unit/lib/test/unit/failure.rb +0 -136
  99. data/test-unit/lib/test/unit/fixture.rb +0 -176
  100. data/test-unit/lib/test/unit/notification.rb +0 -129
  101. data/test-unit/lib/test/unit/omission.rb +0 -191
  102. data/test-unit/lib/test/unit/pending.rb +0 -150
  103. data/test-unit/lib/test/unit/priority.rb +0 -180
  104. data/test-unit/lib/test/unit/runner/console.rb +0 -52
  105. data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
  106. data/test-unit/lib/test/unit/runner/tap.rb +0 -8
  107. data/test-unit/lib/test/unit/testcase.rb +0 -483
  108. data/test-unit/lib/test/unit/testresult.rb +0 -121
  109. data/test-unit/lib/test/unit/testsuite.rb +0 -110
  110. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
  111. data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -430
  112. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -63
  113. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +0 -82
  114. data/test-unit/lib/test/unit/ui/testrunner.rb +0 -53
  115. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
  116. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  117. data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -42
  118. data/test-unit/lib/test/unit/util/method-owner-finder.rb +0 -28
  119. data/test-unit/lib/test/unit/util/observable.rb +0 -90
  120. data/test-unit/lib/test/unit/util/output.rb +0 -31
  121. data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
  122. data/test-unit/lib/test/unit/version.rb +0 -7
  123. data/test-unit/sample/adder.rb +0 -13
  124. data/test-unit/sample/subtracter.rb +0 -12
  125. data/test-unit/sample/test_adder.rb +0 -20
  126. data/test-unit/sample/test_subtracter.rb +0 -20
  127. data/test-unit/sample/test_user.rb +0 -23
  128. data/test-unit/test/collector/test-descendant.rb +0 -133
  129. data/test-unit/test/collector/test-load.rb +0 -442
  130. data/test-unit/test/collector/test_dir.rb +0 -406
  131. data/test-unit/test/collector/test_objectspace.rb +0 -100
  132. data/test-unit/test/run-test.rb +0 -15
  133. data/test-unit/test/test-attribute.rb +0 -86
  134. data/test-unit/test/test-color-scheme.rb +0 -69
  135. data/test-unit/test/test-color.rb +0 -47
  136. data/test-unit/test/test-diff.rb +0 -518
  137. data/test-unit/test/test-emacs-runner.rb +0 -60
  138. data/test-unit/test/test-fixture.rb +0 -287
  139. data/test-unit/test/test-notification.rb +0 -33
  140. data/test-unit/test/test-omission.rb +0 -81
  141. data/test-unit/test/test-pending.rb +0 -70
  142. data/test-unit/test/test-priority.rb +0 -119
  143. data/test-unit/test/test-testcase.rb +0 -544
  144. data/test-unit/test/test_assertions.rb +0 -1197
  145. data/test-unit/test/test_error.rb +0 -26
  146. data/test-unit/test/test_failure.rb +0 -33
  147. data/test-unit/test/test_testresult.rb +0 -113
  148. data/test-unit/test/test_testsuite.rb +0 -129
  149. data/test-unit/test/testunit-test-util.rb +0 -14
  150. data/test-unit/test/ui/test_tap.rb +0 -33
  151. data/test-unit/test/ui/test_testrunmediator.rb +0 -20
  152. data/test-unit/test/util/test-method-owner-finder.rb +0 -38
  153. data/test-unit/test/util/test-output.rb +0 -11
  154. data/test-unit/test/util/test_backtracefilter.rb +0 -41
  155. data/test-unit/test/util/test_observable.rb +0 -102
  156. data/test-unit/test/util/test_procwrapper.rb +0 -36
  157. data/test/.gitignore +0 -1
  158. data/text/expression.rdoc +0 -285
  159. data/text/tutorial.ja.rdoc +0 -433
@@ -1,129 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Notification
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'N'
10
- LABEL = "Notification"
11
-
12
- # Creates a new Notification with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a notification.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- false
47
- end
48
- end
49
-
50
- class NotifiedError < StandardError
51
- end
52
-
53
-
54
- module TestCaseNotificationSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include NotificationHandler
59
- end
60
- end
61
- end
62
-
63
- # Notify some information.
64
- #
65
- # Example:
66
- # def test_notification
67
- # notify("I'm here!")
68
- # # Reached here
69
- # notify("Special!") if special_case?
70
- # # Reached here too
71
- # end
72
- def notify(message, &block)
73
- notification = Notification.new(name, filter_backtrace(caller), message)
74
- add_notification(notification)
75
- end
76
-
77
- private
78
- def add_notification(notification)
79
- current_result.add_notification(notification)
80
- end
81
- end
82
-
83
- module NotificationHandler
84
- class << self
85
- def included(base)
86
- base.exception_handler(:handle_notified_error)
87
- end
88
- end
89
-
90
- private
91
- def handle_notified_error(exception)
92
- return false unless exception.is_a?(NotifiedError)
93
- notification = Notification.new(name,
94
- filter_backtrace(exception.backtrace),
95
- exception.message)
96
- add_notification(notification)
97
- true
98
- end
99
- end
100
-
101
- module TestResultNotificationSupport
102
- attr_reader :notifications
103
-
104
- # Records a Test::Unit::Notification.
105
- def add_notification(notification)
106
- @notifications << notification
107
- notify_fault(notification)
108
- notify_changed
109
- end
110
-
111
- # Returns the number of notifications this TestResult has
112
- # recorded.
113
- def notification_count
114
- @notifications.size
115
- end
116
-
117
- private
118
- def initialize_containers
119
- super
120
- @notifications = []
121
- @summary_generators << :notification_summary
122
- end
123
-
124
- def notification_summary
125
- "#{notification_count} notifications"
126
- end
127
- end
128
- end
129
- end
@@ -1,191 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Omission
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'O'
10
- LABEL = "Omission"
11
-
12
- # Creates a new Omission with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a omission.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- true
47
- end
48
- end
49
-
50
- class OmittedError < StandardError
51
- end
52
-
53
-
54
- module TestCaseOmissionSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include OmissionHandler
59
- end
60
- end
61
- end
62
-
63
- # Omit the test or part of the test.
64
- #
65
- # Example:
66
- # def test_omission
67
- # omit
68
- # # Not reached here
69
- # end
70
- #
71
- # def test_omission_with_here
72
- # omit do
73
- # # Not ran here
74
- # end
75
- # # Reached here
76
- # end
77
- def omit(message=nil, &block)
78
- message ||= "omitted."
79
- if block_given?
80
- omission = Omission.new(name, filter_backtrace(caller), message)
81
- add_omission(omission)
82
- else
83
- raise OmittedError.new(message)
84
- end
85
- end
86
-
87
- # Omit the test or part of the test if _condition_ is
88
- # true.
89
- #
90
- # Example:
91
- # def test_omission
92
- # omit_if("".empty?)
93
- # # Not reached here
94
- # end
95
- #
96
- # def test_omission_with_here
97
- # omit_if(true) do
98
- # # Not ran here
99
- # end
100
- # omit_if(false) do
101
- # # Reached here
102
- # end
103
- # # Reached here too
104
- # end
105
- def omit_if(condition, *args, &block)
106
- if condition
107
- omit(*args, &block)
108
- else
109
- block.call if block
110
- end
111
- end
112
-
113
- # Omit the test or part of the test if _condition_ is
114
- # not true.
115
- #
116
- # Example:
117
- # def test_omission
118
- # omit_unless("string".empty?)
119
- # # Not reached here
120
- # end
121
- #
122
- # def test_omission_with_here
123
- # omit_unless(true) do
124
- # # Reached here
125
- # end
126
- # omit_unless(false) do
127
- # # Not ran here
128
- # end
129
- # # Reached here too
130
- # end
131
- def omit_unless(condition, *args, &block)
132
- if condition
133
- block.call if block
134
- else
135
- omit(*args, &block)
136
- end
137
- end
138
-
139
- private
140
- def add_omission(omission)
141
- current_result.add_omission(omission)
142
- end
143
- end
144
-
145
- module OmissionHandler
146
- class << self
147
- def included(base)
148
- base.exception_handler(:handle_omitted_error)
149
- end
150
- end
151
-
152
- private
153
- def handle_omitted_error(exception)
154
- return false unless exception.is_a?(OmittedError)
155
- omission = Omission.new(name,
156
- filter_backtrace(exception.backtrace),
157
- exception.message)
158
- add_omission(omission)
159
- true
160
- end
161
- end
162
-
163
- module TestResultOmissionSupport
164
- attr_reader :omissions
165
-
166
- # Records a Test::Unit::Omission.
167
- def add_omission(omission)
168
- @omissions << omission
169
- notify_fault(omission)
170
- notify_changed
171
- end
172
-
173
- # Returns the number of omissions this TestResult has
174
- # recorded.
175
- def omission_count
176
- @omissions.size
177
- end
178
-
179
- private
180
- def initialize_containers
181
- super
182
- @omissions = []
183
- @summary_generators << :omission_summary
184
- end
185
-
186
- def omission_summary
187
- "#{omission_count} omissions"
188
- end
189
- end
190
- end
191
- end
@@ -1,150 +0,0 @@
1
- require 'test/unit/util/backtracefilter'
2
-
3
- module Test
4
- module Unit
5
- class Pending
6
- include Util::BacktraceFilter
7
- attr_reader :test_name, :location, :message
8
-
9
- SINGLE_CHARACTER = 'P'
10
- LABEL = "Pending"
11
-
12
- # Creates a new Pending with the given location and
13
- # message.
14
- def initialize(test_name, location, message)
15
- @test_name = test_name
16
- @location = location
17
- @message = message
18
- end
19
-
20
- # Returns a single character representation of a pending.
21
- def single_character_display
22
- SINGLE_CHARACTER
23
- end
24
-
25
- def label
26
- LABEL
27
- end
28
-
29
- # Returns a brief version of the error description.
30
- def short_display
31
- "#{@test_name}: #{@message.split("\n")[0]}"
32
- end
33
-
34
- # Returns a verbose version of the error description.
35
- def long_display
36
- backtrace = filter_backtrace(location).join("\n")
37
- "#{label}: #{@message}\n#{@test_name}\n#{backtrace}"
38
- end
39
-
40
- # Overridden to return long_display.
41
- def to_s
42
- long_display
43
- end
44
-
45
- def critical?
46
- true
47
- end
48
- end
49
-
50
- class PendedError < StandardError
51
- end
52
-
53
-
54
- module TestCasePendingSupport
55
- class << self
56
- def included(base)
57
- base.class_eval do
58
- include PendingHandler
59
- end
60
- end
61
- end
62
-
63
- # Marks the test or part of the test is pending.
64
- #
65
- # Example:
66
- # def test_pending
67
- # pend
68
- # # Not reached here
69
- # end
70
- #
71
- # def test_pending_with_here
72
- # pend do
73
- # # Ran here
74
- # # Fails if the block doesn't raise any error.
75
- # # Because it means the block is passed unexpectedly.
76
- # end
77
- # # Reached here
78
- # end
79
- def pend(message=nil, &block)
80
- message ||= "pended."
81
- if block_given?
82
- pending = nil
83
- begin
84
- yield
85
- rescue Exception
86
- pending = Pending.new(name, filter_backtrace(caller), message)
87
- add_pending(pending)
88
- end
89
- unless pending
90
- flunk("Pending block should not be passed: #{message}")
91
- end
92
- else
93
- raise PendedError.new(message)
94
- end
95
- end
96
-
97
- private
98
- def add_pending(pending)
99
- problem_occurred
100
- current_result.add_pending(pending)
101
- end
102
- end
103
-
104
- module PendingHandler
105
- class << self
106
- def included(base)
107
- base.exception_handler(:handle_pended_error)
108
- end
109
- end
110
-
111
- private
112
- def handle_pended_error(exception)
113
- return false unless exception.is_a?(PendedError)
114
- pending = Pending.new(name,
115
- filter_backtrace(exception.backtrace),
116
- exception.message)
117
- add_pending(pending)
118
- true
119
- end
120
- end
121
-
122
- module TestResultPendingSupport
123
- attr_reader :pendings
124
-
125
- # Records a Test::Unit::Pending.
126
- def add_pending(pending)
127
- @pendings << pending
128
- notify_fault(pending)
129
- notify_changed
130
- end
131
-
132
- # Returns the number of pendings this TestResult has
133
- # recorded.
134
- def pending_count
135
- @pendings.size
136
- end
137
-
138
- private
139
- def initialize_containers
140
- super
141
- @pendings = []
142
- @summary_generators << :pending_summary
143
- end
144
-
145
- def pending_summary
146
- "#{pending_count} pendings"
147
- end
148
- end
149
- end
150
- end