Initial commit
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
# Copyright 2026 jCloud Services GbR
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# https://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from src.jcloud_config_parser.serialize.json import serialize as serialize_json
|
||||
|
||||
def test_serialize_json():
|
||||
assert serialize_json(True) == 'true'
|
||||
assert serialize_json(False) == 'false'
|
||||
assert serialize_json(True, indent = 4) == 'true'
|
||||
|
||||
assert serialize_json(None) == 'null'
|
||||
|
||||
assert serialize_json({1: {None: True}}, indent = 4) == '''{
|
||||
"1": {
|
||||
"null": true
|
||||
}
|
||||
}'''
|
||||
assert serialize_json({1: {None: True}}) == '{"1": {"null": true}}'
|
||||
assert serialize_json({1: {None: True}, 2: 'Hello, World!'}, separators = (',', ':')) == '{"1":{"null":true},"2":"Hello, World!"}'
|
||||
|
||||
array = [True, False, 1, None, 'Hello, World!']
|
||||
assert serialize_json(array) == '[true, false, 1, null, "Hello, World!"]'
|
||||
assert serialize_json(array, 4, 'X', (';', ':')) == '''[
|
||||
XXXXtrue;
|
||||
XXXXfalse;
|
||||
XXXX1;
|
||||
XXXXnull;
|
||||
XXXX"Hello, World!"
|
||||
]'''
|
||||
assert serialize_json((1, 2, 3)) == '[1, 2, 3]'
|
||||
assert serialize_json(range(3)) == '[0, 1, 2]'
|
||||
assert serialize_json(b'\x0142') == '[1, 52, 50]'
|
||||
|
||||
assert serialize_json('Hello, World!') == '"Hello, World!"'
|
||||
assert serialize_json('Hello,\nWorld!') == '"Hello,\\nWorld!"'
|
||||
assert serialize_json('Hello,"World!') == '"Hello,\\"World!"'
|
||||
assert serialize_json('Hello,\\World!') == '"Hello,\\\\World!"'
|
||||
assert serialize_json('Hello,\bWorld!') == '"Hello,\\bWorld!"'
|
||||
assert serialize_json('Hello,\tWorld!') == '"Hello,\\tWorld!"'
|
||||
assert serialize_json('Hello,\rWorld!') == '"Hello,\\rWorld!"'
|
||||
assert serialize_json('Hello,\fWorld!') == '"Hello,\\fWorld!"'
|
||||
|
||||
assert serialize_json(0) == '0'
|
||||
assert serialize_json(1) == '1'
|
||||
assert serialize_json(-1) == '-1'
|
||||
assert serialize_json(0.0) == '0.0'
|
||||
assert serialize_json(-0.0) == '-0.0'
|
||||
assert serialize_json(-42.0) == '-42.0'
|
||||
|
||||
try:
|
||||
serialize_json({1, 2, 3})
|
||||
assert False, 'Expected TypeError'
|
||||
except TypeError:
|
||||
pass
|
||||
Reference in New Issue
Block a user