diff options
author | Stefan Kögl <stefan@skoegl.net> | 2012-09-07 11:25:32 +0200 |
---|---|---|
committer | Stefan Kögl <stefan@skoegl.net> | 2012-09-07 11:25:32 +0200 |
commit | 3fadd63a77c7074fa7a4cd6bc04b0c34891a0d64 (patch) | |
tree | 79fe27d661719ae8ae78de3642d1dcc03d4d23c7 /tests.py | |
parent | c446946cd179bc2bcfb79699e454519ade1d94c6 (diff) | |
download | python-json-pointer-3fadd63a77c7074fa7a4cd6bc04b0c34891a0d64.tar.gz |
update jsonpointer to current specv0.3
http://tools.ietf.org/html/draft-ietf-appsawg-json-pointer-04
Diffstat (limited to 'tests.py')
-rwxr-xr-x | tests.py | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -5,11 +5,46 @@ from __future__ import print_function import doctest import unittest import sys +from jsonpointer import resolve_pointer + +class SpecificationTests(unittest.TestCase): + """ Tests all examples from the JSON Pointer specification """ + + def test_example(self): + doc = { + "foo": ["bar", "baz"], + "": 0, + "a/b": 1, + "c%d": 2, + "e^f": 3, + "g|h": 4, + "i\\j": 5, + "k\"l": 6, + " ": 7, + "m~n": 8 + } + + self.assertEqual(resolve_pointer(doc, ""), doc) + self.assertEqual(resolve_pointer(doc, "/foo"), ["bar", "baz"]) + self.assertEqual(resolve_pointer(doc, "/foo/0"), "bar") + self.assertEqual(resolve_pointer(doc, "/"), 0) + self.assertEqual(resolve_pointer(doc, "/a~1b"), 1) + self.assertEqual(resolve_pointer(doc, "/c%d"), 2) + self.assertEqual(resolve_pointer(doc, "/e^f"), 3) + self.assertEqual(resolve_pointer(doc, "/g|h"), 4) + self.assertEqual(resolve_pointer(doc, "/i\\j"), 5) + self.assertEqual(resolve_pointer(doc, "/k\"l"), 6) + self.assertEqual(resolve_pointer(doc, "/ "), 7) + self.assertEqual(resolve_pointer(doc, "/m~0n"), 8) + + + modules = ['jsonpointer'] coverage_modules = [] suite = unittest.TestSuite() +suite.addTest(unittest.makeSuite(SpecificationTests)) for module in modules: m = __import__(module, fromlist=[module]) |