oj 3.7.6 → 3.7.7
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.
- checksums.yaml +4 -4
- data/ext/oj/encode.h +2 -0
- data/ext/oj/fast.c +1 -1
- data/ext/oj/object.c +0 -29
- data/ext/oj/oj.c +0 -16
- data/ext/oj/saj.c +1 -1
- data/ext/oj/stream_writer.c +11 -5
- data/lib/oj/version.rb +1 -1
- data/test/bar.rb +25 -0
- data/test/foo.rb +78 -2
- data/test/test_object.rb +24 -0
- data/test/test_writer.rb +19 -2
- data/test/zoo.rb +13 -0
- metadata +73 -107
- data/test/bug.rb +0 -51
- data/test/bug2.rb +0 -10
- data/test/bug3.rb +0 -46
- data/test/bug_fast.rb +0 -32
- data/test/bug_load.rb +0 -24
- data/test/crash.rb +0 -111
- data/test/example.rb +0 -11
- data/test/io.rb +0 -48
- data/test/isolated/test_mimic_rails_datetime.rb +0 -27
- data/test/mem.rb +0 -20
- data/test/mod.rb +0 -16
- data/test/omit.rb +0 -20
- data/test/rails.rb +0 -50
- data/test/rails_datetime_test.rb +0 -24
- data/test/russian.rb +0 -18
- data/test/struct.rb +0 -29
- data/test/test_serializer.rb +0 -59
- data/test/write_timebars.rb +0 -31
- data/test/x_test.rb +0 -185
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 389ece68dade91713fa132445f6b5d7cefdef5b6e7787a8b66f530c13173271c
|
4
|
+
data.tar.gz: 49d899629ebbb41cb5b545400262f1644b93140c62b57f7f8c7ef98200ad2bb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15c6bd0b3324687ef248e2f67270bab76b1c70da8e92b54dc474082ae717d601142a745a7e365b3ffdf82c1b6fbb12d72cdb7db3cdefb34a50b3eaf28c941786
|
7
|
+
data.tar.gz: 28fa1bb71e89c195ccb840d6c4b639ffc5c2244eba48aa69aab07cc76757b954ddffbe83801eb6624745ab21c73e5493c4858cbcbfa630f6a3df2a5a2d3899b8
|
data/ext/oj/encode.h
CHANGED
data/ext/oj/fast.c
CHANGED
@@ -839,7 +839,7 @@ parse_json(VALUE clas, char *json, bool given, bool allocated) {
|
|
839
839
|
{
|
840
840
|
struct rlimit lim;
|
841
841
|
|
842
|
-
if (0 == getrlimit(RLIMIT_STACK, &lim)) {
|
842
|
+
if (0 == getrlimit(RLIMIT_STACK, &lim) && RLIM_INFINITY != lim.rlim_cur) {
|
843
843
|
pi.stack_min = (void*)((char*)&lim - (lim.rlim_cur / 4 * 3)); // let 3/4ths of the stack be used only
|
844
844
|
} else {
|
845
845
|
pi.stack_min = 0; // indicates not to check stack limit
|
data/ext/oj/object.c
CHANGED
@@ -403,23 +403,6 @@ hat_value(ParseInfo pi, Val parent, const char *key, size_t klen, volatile VALUE
|
|
403
403
|
return 0;
|
404
404
|
}
|
405
405
|
|
406
|
-
static void
|
407
|
-
copy_ivars(VALUE target, VALUE src) {
|
408
|
-
volatile VALUE vars = rb_funcall(src, oj_instance_variables_id, 0);
|
409
|
-
volatile VALUE *np = RARRAY_PTR(vars);
|
410
|
-
ID vid;
|
411
|
-
int i, cnt = (int)RARRAY_LEN(vars);
|
412
|
-
const char *attr;
|
413
|
-
|
414
|
-
for (i = cnt; 0 < i; i--, np++) {
|
415
|
-
vid = rb_to_id(*np);
|
416
|
-
attr = rb_id2name(vid);
|
417
|
-
if ('@' == *attr) {
|
418
|
-
rb_ivar_set(target, vid, rb_ivar_get(src, vid));
|
419
|
-
}
|
420
|
-
}
|
421
|
-
}
|
422
|
-
|
423
406
|
void
|
424
407
|
oj_set_obj_ivar(Val parent, Val kval, VALUE value) {
|
425
408
|
const char *key = kval->key;
|
@@ -427,18 +410,6 @@ oj_set_obj_ivar(Val parent, Val kval, VALUE value) {
|
|
427
410
|
ID var_id;
|
428
411
|
ID *slot;
|
429
412
|
|
430
|
-
if ('~' == *key && Qtrue == rb_obj_is_kind_of(parent->val, rb_eException)) {
|
431
|
-
if (5 == klen && 0 == strncmp("~mesg", key, klen)) {
|
432
|
-
VALUE args[1];
|
433
|
-
volatile VALUE prev = parent->val;
|
434
|
-
|
435
|
-
args[0] = value;
|
436
|
-
parent->val = rb_class_new_instance(1, args, rb_class_of(parent->val));
|
437
|
-
copy_ivars(parent->val, prev);
|
438
|
-
} else if (3 == klen && 0 == strncmp("~bt", key, klen)) {
|
439
|
-
rb_funcall(parent->val, rb_intern("set_backtrace"), 1, value);
|
440
|
-
}
|
441
|
-
}
|
442
413
|
#if HAVE_LIBPTHREAD
|
443
414
|
pthread_mutex_lock(&oj_cache_mutex);
|
444
415
|
#else
|
data/ext/oj/oj.c
CHANGED
@@ -1322,22 +1322,6 @@ extern VALUE oj_compat_parse(int argc, VALUE *argv, VALUE self);
|
|
1322
1322
|
* valid. If the input is not a valid JSON document (an empty string is not a
|
1323
1323
|
* valid JSON document) an exception is raised.
|
1324
1324
|
*
|
1325
|
-
* Note: Oj is not able to automatically deserialize all classes that are a
|
1326
|
-
* subclass of a Ruby Exception. Only exception that take one required string
|
1327
|
-
* argument in the initialize() method are supported. This is an example of how
|
1328
|
-
* to write an Exception subclass that supports both a single string intializer
|
1329
|
-
* and an Exception as an argument. Additional optional arguments can be added
|
1330
|
-
* as well.
|
1331
|
-
*
|
1332
|
-
* The reason for this restriction has to do with a design decision on the part
|
1333
|
-
* of the Ruby developers. Exceptions are special Objects. They do not follow the
|
1334
|
-
* rules of other Objects. Exceptions have 'mesg' and a 'bt' attribute. Note that
|
1335
|
-
* these are not '@mesg' and '@bt'. They can not be set using the normal C or
|
1336
|
-
* Ruby calls. The only way I have found to set the 'mesg' attribute is through
|
1337
|
-
* the initializer. Unfortunately that means any subclass that provides a
|
1338
|
-
* different initializer can not be automatically decoded. A way around this is
|
1339
|
-
* to use a create function but this example shows an alternative.
|
1340
|
-
*
|
1341
1325
|
* A block can be provided with a single argument. That argument will be the
|
1342
1326
|
* parsed JSON document. This is useful when parsing a string that includes
|
1343
1327
|
* multiple JSON documents. The block can take up to 3 arguments, the parsed
|
data/ext/oj/saj.c
CHANGED
@@ -626,7 +626,7 @@ saj_parse(VALUE handler, char *json) {
|
|
626
626
|
{
|
627
627
|
struct rlimit lim;
|
628
628
|
|
629
|
-
if (0 == getrlimit(RLIMIT_STACK, &lim)) {
|
629
|
+
if (0 == getrlimit(RLIMIT_STACK, &lim) && RLIM_INFINITY != lim.rlim_cur) {
|
630
630
|
pi.stack_min = (void*)((char*)&obj - (lim.rlim_cur / 4 * 3)); /* let 3/4ths of the stack be used only */
|
631
631
|
} else {
|
632
632
|
pi.stack_min = 0; /* indicates not to check stack limit */
|
data/ext/oj/stream_writer.c
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
#include <ruby.h>
|
9
9
|
|
10
|
-
#include "
|
10
|
+
#include "encode.h"
|
11
11
|
|
12
12
|
extern VALUE Oj;
|
13
13
|
|
@@ -36,11 +36,17 @@ stream_writer_write(StreamWriter sw) {
|
|
36
36
|
|
37
37
|
switch (sw->type) {
|
38
38
|
case STRING_IO:
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
39
|
+
case STREAM_IO: {
|
40
|
+
volatile VALUE rs = rb_str_new(sw->sw.out.buf, size);
|
41
|
+
|
42
|
+
// Oddly enough, when pushing ASCII characters with UTF-8 encoding or
|
43
|
+
// even ASCII-8BIT does not change the output encoding. Pushing any
|
44
|
+
// non-ASCII no matter what the encoding changes the output encoding
|
45
|
+
// to ASCII-8BIT if it the string is not forced to UTF-8 here.
|
46
|
+
rs = oj_encode(rs);
|
47
|
+
rb_funcall(sw->stream, oj_write_id, 1, rs);
|
43
48
|
break;
|
49
|
+
}
|
44
50
|
case FILE_IO:
|
45
51
|
if (size != write(sw->fd, sw->sw.out.buf, size)) {
|
46
52
|
rb_raise(rb_eIOError, "Write failed. [_%d_:%s]\n", errno, strerror(errno));
|
data/lib/oj/version.rb
CHANGED
data/test/bar.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: UTF-8
|
3
|
+
|
4
|
+
$: << File.dirname(__FILE__)
|
5
|
+
$oj_dir = File.dirname(File.expand_path(File.dirname(__FILE__)))
|
6
|
+
%w(lib ext).each do |dir|
|
7
|
+
$: << File.join($oj_dir, dir)
|
8
|
+
end
|
9
|
+
|
10
|
+
require 'oj'
|
11
|
+
|
12
|
+
#Oj.load_file(ARGV[0], mode: :strict) { |obj|
|
13
|
+
# puts Oj.dump(obj, indent: 2)
|
14
|
+
#}
|
15
|
+
|
16
|
+
data = open('invalid_unicode.data').read
|
17
|
+
|
18
|
+
puts data
|
19
|
+
|
20
|
+
puts Oj.dump(data)
|
21
|
+
|
22
|
+
Oj.mimic_JSON
|
23
|
+
puts Oj.dump(data, escape_mode: :json)
|
24
|
+
|
25
|
+
puts Oj.default_options
|
data/test/foo.rb
CHANGED
@@ -2,6 +2,82 @@
|
|
2
2
|
# encoding: UTF-8
|
3
3
|
|
4
4
|
$: << File.dirname(__FILE__)
|
5
|
+
$oj_dir = File.dirname(File.expand_path(File.dirname(__FILE__)))
|
6
|
+
%w(lib ext).each do |dir|
|
7
|
+
$: << File.join($oj_dir, dir)
|
8
|
+
end
|
5
9
|
|
6
|
-
require '
|
7
|
-
require '
|
10
|
+
require 'oj'
|
11
|
+
require 'tracer'
|
12
|
+
|
13
|
+
#Tracer.on
|
14
|
+
|
15
|
+
class MyParser
|
16
|
+
attr_accessor :enum
|
17
|
+
|
18
|
+
def initialize
|
19
|
+
@io = StringIO.new
|
20
|
+
@writer = Oj::StreamWriter.new(@io)
|
21
|
+
|
22
|
+
json_string = Oj.dump({ records: 1.upto(2).map{|i| { id: i, name: "record_#{i}" }} }, mode: :strict)
|
23
|
+
@test_json = StringIO.new(json_string)
|
24
|
+
|
25
|
+
@enum = Enumerator.new do |yielder|
|
26
|
+
@yielder = yielder
|
27
|
+
Oj.sc_parse(self, @test_json)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
# Stream parsing methods
|
32
|
+
def hash_start
|
33
|
+
@writer.push_object
|
34
|
+
end
|
35
|
+
|
36
|
+
def hash_end
|
37
|
+
@writer.pop unless @io.eof
|
38
|
+
end
|
39
|
+
|
40
|
+
def hash_key(key)
|
41
|
+
@writer.push_key(key)
|
42
|
+
end
|
43
|
+
|
44
|
+
def hash_set(h, key, value)
|
45
|
+
@writer.push_value(value)
|
46
|
+
end
|
47
|
+
|
48
|
+
def array_start
|
49
|
+
@writer.push_array
|
50
|
+
end
|
51
|
+
|
52
|
+
def array_end
|
53
|
+
@writer.pop
|
54
|
+
end
|
55
|
+
|
56
|
+
def array_append(a, value)
|
57
|
+
yield_data
|
58
|
+
end
|
59
|
+
|
60
|
+
def add_value(value);end
|
61
|
+
|
62
|
+
def yield_data
|
63
|
+
@writer.pop_all
|
64
|
+
@yielder << @io.string
|
65
|
+
@io.reopen("")
|
66
|
+
array_start
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
#puts MyParser.new.enum.to_a
|
71
|
+
|
72
|
+
puts "------------"
|
73
|
+
|
74
|
+
MyError = Class.new(StandardError)
|
75
|
+
|
76
|
+
MyParser.new.enum.each.with_index do |r, i|
|
77
|
+
puts "========="
|
78
|
+
raise MyError.new('hello')
|
79
|
+
#raise StopIteration if i == 0
|
80
|
+
#break if i >= 4
|
81
|
+
end
|
82
|
+
|
83
|
+
#{"records":[{"id":1,"name":"record_1"},{"id":2,"name":"record_2"},{"id":3,"name":"record_3"},{"id":4,"name":"record_4"},{"id":5,"name":"record_5"},{"id":6,"name":"record_6"},{"id":7,"name":"record_7"},{"id":8,"name":"record_8"},{"id":9,"name":"record_9"},{"id":10,"name":"record_10"},{"id":11,"name":"record_11"},{"id":12,"name":"record_12"},{"id":13,"name":"record_13"},{"id":14,"name":"record_14"},{"id":15,"name":"record_15"},{"id":16,"name":"record_16"},{"id":17,"name":"record_17"},{"id":18,"name":"record_18"},{"id":19,"name":"record_19"},{"id":20,"name":"record_20"},{"id":21,"name":"record_21"},{"id":22,"name":"record_22"},{"id":23,"name":"record_23"},{"id":24,"name":"record_24"},{"id":25,"name":"record_25"}]}
|
data/test/test_object.rb
CHANGED
@@ -793,6 +793,30 @@ class ObjectJuice < Minitest::Test
|
|
793
793
|
end
|
794
794
|
end
|
795
795
|
|
796
|
+
class SubX < Exception
|
797
|
+
def initialize
|
798
|
+
super("sub")
|
799
|
+
@xyz = 123
|
800
|
+
end
|
801
|
+
end
|
802
|
+
|
803
|
+
def test_exception_subclass
|
804
|
+
err = nil
|
805
|
+
begin
|
806
|
+
raise SubX.new
|
807
|
+
rescue Exception => e
|
808
|
+
err = e
|
809
|
+
end
|
810
|
+
json = Oj.dump(err, :mode => :object, :indent => 2)
|
811
|
+
#puts "*** #{json}"
|
812
|
+
e2 = Oj.load(json, :mode => :strict)
|
813
|
+
assert_equal(err.class.to_s, e2['^o'])
|
814
|
+
assert_equal(err.message, e2['~mesg'])
|
815
|
+
assert_equal(err.backtrace, e2['~bt'])
|
816
|
+
e2 = Oj.load(json, :mode => :object)
|
817
|
+
assert_equal(e, e2);
|
818
|
+
end
|
819
|
+
|
796
820
|
def test_range_object
|
797
821
|
Oj.default_options = { :mode => :object }
|
798
822
|
json = Oj.dump(1..7, :mode => :object, :indent => 0)
|
data/test/test_writer.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# encoding:
|
2
|
+
# encoding: utf-8
|
3
3
|
|
4
4
|
$: << File.dirname(__FILE__)
|
5
5
|
|
@@ -227,6 +227,22 @@ class OjWriter < Minitest::Test
|
|
227
227
|
|
228
228
|
# Stream Writer
|
229
229
|
|
230
|
+
class SString < ::String
|
231
|
+
alias :write :concat
|
232
|
+
end
|
233
|
+
|
234
|
+
def test_stream_writer_encoding
|
235
|
+
output = SString.new.force_encoding(::Encoding::UTF_8)
|
236
|
+
w = Oj::StreamWriter.new(output, :indent => 0)
|
237
|
+
# Oddly enough, when pushing ASCII characters with UTF-8 encoding or even
|
238
|
+
# ASCII-8BIT does not change the output encoding. Pushing any non-ASCII no
|
239
|
+
# matter what the encoding changes the output encoding to ASCII-8BIT.
|
240
|
+
x = "香港" # Hong Kong
|
241
|
+
x = x.force_encoding('ASCII-8BIT')
|
242
|
+
w.push_value(x)
|
243
|
+
assert_equal(::Encoding::UTF_8, output.encoding)
|
244
|
+
end
|
245
|
+
|
230
246
|
def test_stream_writer_empty_array
|
231
247
|
output = StringIO.open("", "w+")
|
232
248
|
w = Oj::StreamWriter.new(output, :indent => 0)
|
@@ -251,7 +267,8 @@ class OjWriter < Minitest::Test
|
|
251
267
|
w.push_object("a3")
|
252
268
|
w.pop()
|
253
269
|
w.pop()
|
254
|
-
|
270
|
+
result = output.string()
|
271
|
+
assert_equal(%|{"a1":{},"a2":{"b":[7,true,"string"]},"a3":{}}\n|, result)
|
255
272
|
end
|
256
273
|
|
257
274
|
def test_stream_writer_mixed_file
|
data/test/zoo.rb
ADDED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.7.
|
4
|
+
version: 3.7.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Ohler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-01-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake-compiler
|
@@ -79,16 +79,16 @@ extensions:
|
|
79
79
|
- ext/oj/extconf.rb
|
80
80
|
extra_rdoc_files:
|
81
81
|
- README.md
|
82
|
-
- pages/Custom.md
|
83
|
-
- pages/WAB.md
|
84
|
-
- pages/Advanced.md
|
85
82
|
- pages/Rails.md
|
83
|
+
- pages/JsonGem.md
|
86
84
|
- pages/Encoding.md
|
87
|
-
- pages/
|
85
|
+
- pages/WAB.md
|
86
|
+
- pages/Custom.md
|
87
|
+
- pages/Advanced.md
|
88
88
|
- pages/Options.md
|
89
89
|
- pages/Compatibility.md
|
90
90
|
- pages/Modes.md
|
91
|
-
- pages/
|
91
|
+
- pages/Security.md
|
92
92
|
files:
|
93
93
|
- LICENSE
|
94
94
|
- README.md
|
@@ -175,17 +175,10 @@ files:
|
|
175
175
|
- test/activesupport5/encoding_test_cases.rb
|
176
176
|
- test/activesupport5/test_helper.rb
|
177
177
|
- test/activesupport5/time_zone_test_helpers.rb
|
178
|
-
- test/
|
179
|
-
- test/bug2.rb
|
180
|
-
- test/bug3.rb
|
181
|
-
- test/bug_fast.rb
|
182
|
-
- test/bug_load.rb
|
183
|
-
- test/crash.rb
|
184
|
-
- test/example.rb
|
178
|
+
- test/bar.rb
|
185
179
|
- test/files.rb
|
186
180
|
- test/foo.rb
|
187
181
|
- test/helper.rb
|
188
|
-
- test/io.rb
|
189
182
|
- test/isolated/shared.rb
|
190
183
|
- test/isolated/test_mimic_after.rb
|
191
184
|
- test/isolated/test_mimic_alone.rb
|
@@ -194,7 +187,6 @@ files:
|
|
194
187
|
- test/isolated/test_mimic_define.rb
|
195
188
|
- test/isolated/test_mimic_rails_after.rb
|
196
189
|
- test/isolated/test_mimic_rails_before.rb
|
197
|
-
- test/isolated/test_mimic_rails_datetime.rb
|
198
190
|
- test/isolated/test_mimic_redefine.rb
|
199
191
|
- test/json_gem/json_addition_test.rb
|
200
192
|
- test/json_gem/json_common_interface_test.rb
|
@@ -206,9 +198,6 @@ files:
|
|
206
198
|
- test/json_gem/json_parser_test.rb
|
207
199
|
- test/json_gem/json_string_matching_test.rb
|
208
200
|
- test/json_gem/test_helper.rb
|
209
|
-
- test/mem.rb
|
210
|
-
- test/mod.rb
|
211
|
-
- test/omit.rb
|
212
201
|
- test/perf.rb
|
213
202
|
- test/perf_compat.rb
|
214
203
|
- test/perf_fast.rb
|
@@ -219,9 +208,6 @@ files:
|
|
219
208
|
- test/perf_simple.rb
|
220
209
|
- test/perf_strict.rb
|
221
210
|
- test/perf_wab.rb
|
222
|
-
- test/rails.rb
|
223
|
-
- test/rails_datetime_test.rb
|
224
|
-
- test/russian.rb
|
225
211
|
- test/sample.rb
|
226
212
|
- test/sample/change.rb
|
227
213
|
- test/sample/dir.rb
|
@@ -236,7 +222,6 @@ files:
|
|
236
222
|
- test/sample/shape.rb
|
237
223
|
- test/sample/text.rb
|
238
224
|
- test/sample_json.rb
|
239
|
-
- test/struct.rb
|
240
225
|
- test/test_compat.rb
|
241
226
|
- test/test_custom.rb
|
242
227
|
- test/test_debian.rb
|
@@ -249,7 +234,6 @@ files:
|
|
249
234
|
- test/test_object.rb
|
250
235
|
- test/test_saj.rb
|
251
236
|
- test/test_scp.rb
|
252
|
-
- test/test_serializer.rb
|
253
237
|
- test/test_strict.rb
|
254
238
|
- test/test_various.rb
|
255
239
|
- test/test_wab.rb
|
@@ -257,8 +241,7 @@ files:
|
|
257
241
|
- test/tests.rb
|
258
242
|
- test/tests_mimic.rb
|
259
243
|
- test/tests_mimic_addition.rb
|
260
|
-
- test/
|
261
|
-
- test/x_test.rb
|
244
|
+
- test/zoo.rb
|
262
245
|
homepage: http://www.ohler.com/oj
|
263
246
|
licenses:
|
264
247
|
- MIT
|
@@ -294,99 +277,82 @@ signing_key:
|
|
294
277
|
specification_version: 4
|
295
278
|
summary: A fast JSON parser and serializer.
|
296
279
|
test_files:
|
297
|
-
- test/
|
298
|
-
- test/
|
299
|
-
- test/
|
300
|
-
- test/
|
301
|
-
- test/
|
302
|
-
- test/
|
303
|
-
- test/
|
304
|
-
- test/
|
280
|
+
- test/foo.rb
|
281
|
+
- test/test_integer_range.rb
|
282
|
+
- test/test_strict.rb
|
283
|
+
- test/perf_strict.rb
|
284
|
+
- test/tests.rb
|
285
|
+
- test/perf_saj.rb
|
286
|
+
- test/test_compat.rb
|
287
|
+
- test/helper.rb
|
288
|
+
- test/perf_file.rb
|
289
|
+
- test/test_scp.rb
|
290
|
+
- test/perf_compat.rb
|
291
|
+
- test/json_gem/json_common_interface_test.rb
|
305
292
|
- test/json_gem/json_addition_test.rb
|
306
|
-
- test/json_gem/
|
307
|
-
- test/json_gem/json_parser_test.rb
|
293
|
+
- test/json_gem/json_fixtures_test.rb
|
308
294
|
- test/json_gem/json_ext_parser_test.rb
|
309
|
-
- test/json_gem/json_encoding_test.rb
|
310
|
-
- test/json_gem/json_common_interface_test.rb
|
311
|
-
- test/json_gem/test_helper.rb
|
312
295
|
- test/json_gem/json_string_matching_test.rb
|
313
|
-
- test/json_gem/
|
314
|
-
- test/
|
315
|
-
- test/
|
316
|
-
- test/
|
317
|
-
- test/
|
318
|
-
- test/
|
319
|
-
- test/
|
320
|
-
- test/
|
321
|
-
- test/
|
322
|
-
- test/
|
296
|
+
- test/json_gem/json_generic_object_test.rb
|
297
|
+
- test/json_gem/json_generator_test.rb
|
298
|
+
- test/json_gem/test_helper.rb
|
299
|
+
- test/json_gem/json_encoding_test.rb
|
300
|
+
- test/json_gem/json_parser_test.rb
|
301
|
+
- test/perf_wab.rb
|
302
|
+
- test/test_file.rb
|
303
|
+
- test/test_object.rb
|
304
|
+
- test/sample.rb
|
305
|
+
- test/perf_object.rb
|
306
|
+
- test/test_hash.rb
|
307
|
+
- test/test_custom.rb
|
308
|
+
- test/bar.rb
|
309
|
+
- test/activesupport4/encoding_test.rb
|
310
|
+
- test/activesupport4/test_helper.rb
|
311
|
+
- test/activesupport4/decoding_test.rb
|
312
|
+
- test/sample_json.rb
|
313
|
+
- test/activesupport5/encoding_test_cases.rb
|
314
|
+
- test/activesupport5/encoding_test.rb
|
315
|
+
- test/activesupport5/time_zone_test_helpers.rb
|
316
|
+
- test/activesupport5/test_helper.rb
|
317
|
+
- test/activesupport5/decoding_test.rb
|
318
|
+
- test/test_saj.rb
|
319
|
+
- test/perf_scp.rb
|
320
|
+
- test/test_wab.rb
|
321
|
+
- test/test_null.rb
|
322
|
+
- test/_test_active.rb
|
323
|
+
- test/_test_mimic_rails.rb
|
324
|
+
- test/test_fast.rb
|
325
|
+
- test/perf_fast.rb
|
326
|
+
- test/sample/change.rb
|
327
|
+
- test/sample/text.rb
|
328
|
+
- test/sample/doc.rb
|
329
|
+
- test/sample/shape.rb
|
330
|
+
- test/sample/layer.rb
|
323
331
|
- test/sample/group.rb
|
324
|
-
- test/sample/
|
332
|
+
- test/sample/file.rb
|
325
333
|
- test/sample/rect.rb
|
326
334
|
- test/sample/hasprops.rb
|
327
|
-
- test/sample/layer.rb
|
328
|
-
- test/sample/text.rb
|
329
|
-
- test/sample/doc.rb
|
330
335
|
- test/sample/line.rb
|
331
336
|
- test/sample/dir.rb
|
332
|
-
- test/sample/
|
333
|
-
- test/
|
337
|
+
- test/sample/oval.rb
|
338
|
+
- test/tests_mimic.rb
|
339
|
+
- test/perf_simple.rb
|
340
|
+
- test/zoo.rb
|
334
341
|
- test/activerecord/result_test.rb
|
335
|
-
- test/
|
336
|
-
- test/io.rb
|
337
|
-
- test/test_object.rb
|
338
|
-
- test/struct.rb
|
339
|
-
- test/mod.rb
|
340
|
-
- test/sample.rb
|
341
|
-
- test/perf_scp.rb
|
342
|
-
- test/bug2.rb
|
342
|
+
- test/_test_active_mimic.rb
|
343
343
|
- test/tests_mimic_addition.rb
|
344
|
-
- test/
|
345
|
-
- test/
|
346
|
-
- test/
|
347
|
-
- test/
|
348
|
-
- test/perf_fast.rb
|
349
|
-
- test/test_wab.rb
|
350
|
-
- test/tests.rb
|
351
|
-
- test/example.rb
|
352
|
-
- test/_test_active.rb
|
353
|
-
- test/perf_compat.rb
|
354
|
-
- test/test_various.rb
|
355
|
-
- test/test_null.rb
|
356
|
-
- test/test_integer_range.rb
|
357
|
-
- test/test_scp.rb
|
358
|
-
- test/bug_load.rb
|
359
|
-
- test/files.rb
|
360
|
-
- test/x_test.rb
|
361
|
-
- test/foo.rb
|
344
|
+
- test/test_writer.rb
|
345
|
+
- test/perf.rb
|
346
|
+
- test/isolated/test_mimic_define.rb
|
347
|
+
- test/isolated/test_mimic_after.rb
|
362
348
|
- test/isolated/test_mimic_rails_after.rb
|
363
|
-
- test/isolated/
|
349
|
+
- test/isolated/test_mimic_before.rb
|
350
|
+
- test/isolated/test_mimic_rails_before.rb
|
364
351
|
- test/isolated/test_mimic_redefine.rb
|
365
|
-
- test/isolated/test_mimic_as_json.rb
|
366
352
|
- test/isolated/shared.rb
|
367
353
|
- test/isolated/test_mimic_alone.rb
|
368
|
-
- test/isolated/
|
369
|
-
- test/isolated/test_mimic_before.rb
|
370
|
-
- test/isolated/test_mimic_rails_before.rb
|
371
|
-
- test/isolated/test_mimic_define.rb
|
372
|
-
- test/_test_mimic_rails.rb
|
373
|
-
- test/test_file.rb
|
374
|
-
- test/perf_wab.rb
|
375
|
-
- test/activesupport5/time_zone_test_helpers.rb
|
376
|
-
- test/activesupport5/encoding_test.rb
|
377
|
-
- test/activesupport5/test_helper.rb
|
378
|
-
- test/activesupport5/encoding_test_cases.rb
|
379
|
-
- test/activesupport5/decoding_test.rb
|
380
|
-
- test/bug.rb
|
381
|
-
- test/mem.rb
|
382
|
-
- test/sample_json.rb
|
354
|
+
- test/isolated/test_mimic_as_json.rb
|
383
355
|
- test/test_debian.rb
|
384
|
-
- test/
|
385
|
-
- test/
|
386
|
-
- test/
|
387
|
-
- test/test_compat.rb
|
388
|
-
- test/helper.rb
|
389
|
-
- test/tests_mimic.rb
|
390
|
-
- test/perf.rb
|
391
|
-
- test/bug_fast.rb
|
392
|
-
- test/perf_strict.rb
|
356
|
+
- test/test_gc.rb
|
357
|
+
- test/files.rb
|
358
|
+
- test/test_various.rb
|