Use frozen string literals
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
This commit is contained in:
parent
5f97468958
commit
82f7550f65
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require 'json/common'
|
||||
|
||||
##
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
# This file requires the implementations of ruby core's custom objects for
|
||||
# serialisation/deserialisation.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,5 +1,4 @@
|
||||
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
|
||||
require 'json'
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
#frozen_string_literal: true
|
||||
require 'json/version'
|
||||
|
||||
module JSON
|
||||
@ -117,23 +117,17 @@ module JSON
|
||||
attr_accessor :state
|
||||
end
|
||||
|
||||
DEFAULT_CREATE_ID = 'json_class'.freeze
|
||||
private_constant :DEFAULT_CREATE_ID
|
||||
|
||||
CREATE_ID_TLS_KEY = "JSON.create_id".freeze
|
||||
private_constant :CREATE_ID_TLS_KEY
|
||||
|
||||
# Sets create identifier, which is used to decide if the _json_create_
|
||||
# hook of a class should be called; initial value is +json_class+:
|
||||
# JSON.create_id # => 'json_class'
|
||||
def self.create_id=(new_value)
|
||||
Thread.current[CREATE_ID_TLS_KEY] = new_value.dup.freeze
|
||||
Thread.current[:"JSON.create_id"] = new_value.dup.freeze
|
||||
end
|
||||
|
||||
# Returns the current create identifier.
|
||||
# See also JSON.create_id=.
|
||||
def self.create_id
|
||||
Thread.current[CREATE_ID_TLS_KEY] || DEFAULT_CREATE_ID
|
||||
Thread.current[:"JSON.create_id"] || 'json_class'
|
||||
end
|
||||
|
||||
NaN = 0.0/0
|
||||
@ -415,7 +409,7 @@ module JSON
|
||||
self.load_default_options = {
|
||||
:max_nesting => false,
|
||||
:allow_nan => true,
|
||||
:allow_blank => true,
|
||||
:allow_blank => true,
|
||||
:create_additions => true,
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
begin
|
||||
require 'ostruct'
|
||||
rescue LoadError
|
||||
|
@ -1,4 +1,4 @@
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
module JSON
|
||||
# JSON version
|
||||
VERSION = '2.7.2'
|
||||
|
@ -1,4 +1,4 @@
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require 'mkmf'
|
||||
|
||||
have_func("rb_enc_raise", "ruby.h")
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
require 'json/add/core'
|
||||
require 'json/add/complex'
|
||||
@ -114,8 +114,7 @@ class JSONAdditionTest < Test::Unit::TestCase
|
||||
end
|
||||
|
||||
def test_raw_strings
|
||||
raw = ''
|
||||
raw.respond_to?(:encode!) and raw.encode!(Encoding::ASCII_8BIT)
|
||||
raw = ''.b
|
||||
raw_array = []
|
||||
for i in 0..255
|
||||
raw << i
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
require 'stringio'
|
||||
require 'tempfile'
|
||||
|
@ -1,4 +1,4 @@
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
|
||||
class JSONEncodingTest < Test::Unit::TestCase
|
||||
@ -26,8 +26,8 @@ class JSONEncodingTest < Test::Unit::TestCase
|
||||
end
|
||||
|
||||
def test_generate
|
||||
assert_equal @generated, JSON.generate(@parsed, :ascii_only => true)
|
||||
assert_equal @generated, JSON.generate(@utf_16_data, :ascii_only => true)
|
||||
assert_equal @generated, JSON.generate(@parsed, ascii_only: true)
|
||||
assert_equal @generated, JSON.generate(@utf_16_data, ascii_only: true)
|
||||
end
|
||||
|
||||
def test_unicode
|
||||
@ -39,35 +39,35 @@ class JSONEncodingTest < Test::Unit::TestCase
|
||||
assert_equal "\"#{0x7f.chr}\"", 0x7f.chr.to_json
|
||||
utf8 = [ "© ≠ €! \01" ]
|
||||
json = '["© ≠ €! \u0001"]'
|
||||
assert_equal json, utf8.to_json(:ascii_only => false)
|
||||
assert_equal json, utf8.to_json(ascii_only: false)
|
||||
assert_equal utf8, parse(json)
|
||||
json = '["\u00a9 \u2260 \u20ac! \u0001"]'
|
||||
assert_equal json, utf8.to_json(:ascii_only => true)
|
||||
assert_equal json, utf8.to_json(ascii_only: true)
|
||||
assert_equal utf8, parse(json)
|
||||
utf8 = ["\343\201\202\343\201\204\343\201\206\343\201\210\343\201\212"]
|
||||
json = "[\"\343\201\202\343\201\204\343\201\206\343\201\210\343\201\212\"]"
|
||||
assert_equal utf8, parse(json)
|
||||
assert_equal json, utf8.to_json(:ascii_only => false)
|
||||
assert_equal json, utf8.to_json(ascii_only: false)
|
||||
utf8 = ["\343\201\202\343\201\204\343\201\206\343\201\210\343\201\212"]
|
||||
assert_equal utf8, parse(json)
|
||||
json = "[\"\\u3042\\u3044\\u3046\\u3048\\u304a\"]"
|
||||
assert_equal json, utf8.to_json(:ascii_only => true)
|
||||
assert_equal json, utf8.to_json(ascii_only: true)
|
||||
assert_equal utf8, parse(json)
|
||||
utf8 = ['საქართველო']
|
||||
json = '["საქართველო"]'
|
||||
assert_equal json, utf8.to_json(:ascii_only => false)
|
||||
assert_equal json, utf8.to_json(ascii_only: false)
|
||||
json = "[\"\\u10e1\\u10d0\\u10e5\\u10d0\\u10e0\\u10d7\\u10d5\\u10d4\\u10da\\u10dd\"]"
|
||||
assert_equal json, utf8.to_json(:ascii_only => true)
|
||||
assert_equal json, utf8.to_json(ascii_only: true)
|
||||
assert_equal utf8, parse(json)
|
||||
assert_equal '["Ã"]', generate(["Ã"], :ascii_only => false)
|
||||
assert_equal '["\\u00c3"]', generate(["Ã"], :ascii_only => true)
|
||||
assert_equal '["Ã"]', generate(["Ã"], ascii_only: false)
|
||||
assert_equal '["\\u00c3"]', generate(["Ã"], ascii_only: true)
|
||||
assert_equal ["€"], parse('["\u20ac"]')
|
||||
utf8 = ["\xf0\xa0\x80\x81"]
|
||||
json = "[\"\xf0\xa0\x80\x81\"]"
|
||||
assert_equal json, generate(utf8, :ascii_only => false)
|
||||
assert_equal json, generate(utf8, ascii_only: false)
|
||||
assert_equal utf8, parse(json)
|
||||
json = '["\ud840\udc01"]'
|
||||
assert_equal json, generate(utf8, :ascii_only => true)
|
||||
assert_equal json, generate(utf8, ascii_only: true)
|
||||
assert_equal utf8, parse(json)
|
||||
assert_raise(JSON::ParserError) { parse('"\u"') }
|
||||
assert_raise(JSON::ParserError) { parse('"\ud800"') }
|
||||
@ -75,21 +75,21 @@ class JSONEncodingTest < Test::Unit::TestCase
|
||||
|
||||
def test_chars
|
||||
(0..0x7f).each do |i|
|
||||
json = '["\u%04x"]' % i
|
||||
json = '"\u%04x"' % i
|
||||
i = i.chr
|
||||
assert_equal i, parse(json).first[0]
|
||||
assert_equal i, parse(json)[0]
|
||||
if i == ?\b
|
||||
generated = generate(["" << i])
|
||||
assert '["\b"]' == generated || '["\10"]' == generated
|
||||
generated = generate(i)
|
||||
assert '"\b"' == generated || '"\10"' == generated
|
||||
elsif [?\n, ?\r, ?\t, ?\f].include?(i)
|
||||
assert_equal '[' << ('' << i).dump << ']', generate(["" << i])
|
||||
assert_equal i.dump, generate(i)
|
||||
elsif i.chr < 0x20.chr
|
||||
assert_equal json, generate(["" << i])
|
||||
assert_equal json, generate(i)
|
||||
end
|
||||
end
|
||||
assert_raise(JSON::GeneratorError) do
|
||||
generate(["\x80"], :ascii_only => true)
|
||||
generate(["\x80"], ascii_only: true)
|
||||
end
|
||||
assert_equal "\302\200", parse('["\u0080"]').first
|
||||
assert_equal "\302\200", parse('"\u0080"')
|
||||
end
|
||||
end
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
|
||||
class JSONExtParserTest < Test::Unit::TestCase
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
|
||||
class JSONFixturesTest < Test::Unit::TestCase
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env ruby
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
|
||||
require_relative 'test_helper'
|
||||
|
||||
@ -304,12 +304,12 @@ EOT
|
||||
state.configure(:indent => '1')
|
||||
assert_equal '1', state.indent
|
||||
state = JSON.state.new
|
||||
foo = 'foo'
|
||||
foo = 'foo'.dup
|
||||
assert_raise(TypeError) do
|
||||
state.configure(foo)
|
||||
end
|
||||
def foo.to_h
|
||||
{ :indent => '2' }
|
||||
{ indent: '2' }
|
||||
end
|
||||
state.configure(foo)
|
||||
assert_equal '2', state.indent
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
|
||||
class JSONGenericObjectTest < Test::Unit::TestCase
|
||||
|
@ -1,5 +1,4 @@
|
||||
# encoding: utf-8
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
require 'stringio'
|
||||
require 'tempfile'
|
||||
@ -36,7 +35,8 @@ class JSONParserTest < Test::Unit::TestCase
|
||||
pend if RUBY_ENGINE == 'truffleruby'
|
||||
|
||||
bug10705 = '[ruby-core:67386] [Bug #10705]'
|
||||
json = ".\"\xE2\x88\x9A\"".force_encoding(Encoding::UTF_8)
|
||||
json = ".\"\xE2\x88\x9A\""
|
||||
assert_equal(Encoding::UTF_8, json.encoding)
|
||||
e = assert_raise(JSON::ParserError) {
|
||||
JSON::Ext::Parser.new(json).parse
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
#frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
require_relative 'test_helper'
|
||||
require 'time'
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# frozen_string_literal: false
|
||||
# frozen_string_literal: true
|
||||
|
||||
require_relative 'test_helper'
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user