From 3fadd63a77c7074fa7a4cd6bc04b0c34891a0d64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20K=C3=B6gl?= Date: Fri, 7 Sep 2012 11:25:32 +0200 Subject: update jsonpointer to current spec http://tools.ietf.org/html/draft-ietf-appsawg-json-pointer-04 --- tests.py | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'tests.py') diff --git a/tests.py b/tests.py index 3a4b6a2..df500cc 100755 --- a/tests.py +++ b/tests.py @@ -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]) -- cgit v1.2.1