@@ 373-389 (lines=17) @@ | ||
370 | self.assertEqual(cnf_2["b"]["b"], CNF_0["b"]["b"]) |
|
371 | self.assertEqual(cnf_2["b"]["c"], CNF_0["b"]["c"]) |
|
372 | ||
373 | def test_20_single_load_w_query(self): |
|
374 | cpath = os.path.join(self.workdir, "cnf.json") |
|
375 | TT.dump(CNF_0, cpath) |
|
376 | ||
377 | try: |
|
378 | if TT.query.jmespath: |
|
379 | self.assertEqual(TT.single_load(cpath, ac_query="a"), 1) |
|
380 | self.assertEqual(TT.single_load(cpath, ac_query="b.b"), [1, 2]) |
|
381 | self.assertEqual(TT.single_load(cpath, ac_query="b.b[1]"), 2) |
|
382 | self.assertEqual(TT.single_load(cpath, ac_query="b.b[1:]"), |
|
383 | [2]) |
|
384 | self.assertEqual(TT.single_load(cpath, ac_query="b.b[::-1]"), |
|
385 | [2, 1]) |
|
386 | self.assertEqual(TT.single_load(cpath, ac_query="length(b.b)"), |
|
387 | 2) |
|
388 | except (NameError, AttributeError): |
|
389 | pass # jmespath is not available. |
|
390 | ||
391 | ||
392 | class TestBaseWithIOMultiFiles(TestBaseWithIO): |
|
@@ 631-645 (lines=15) @@ | ||
628 | cnf1 = TT.single_load(cpath, ac_schema=spath) |
|
629 | self.assert_dicts_equal(cnf, cnf1) |
|
630 | ||
631 | def test_40_load_w_query(self): |
|
632 | cnf_path = os.path.join(self.workdir, "cnf.json") |
|
633 | TT.dump(CNF_0, cnf_path) |
|
634 | ||
635 | try: |
|
636 | if TT.query.jmespath: |
|
637 | self.assertEqual(TT.load(cnf_path, ac_query="a"), 1) |
|
638 | self.assertEqual(TT.load(cnf_path, ac_query="b.b"), [1, 2]) |
|
639 | self.assertEqual(TT.load(cnf_path, ac_query="b.b[1]"), 2) |
|
640 | self.assertEqual(TT.load(cnf_path, ac_query="b.b[1:]"), [2]) |
|
641 | self.assertEqual(TT.load(cnf_path, ac_query="b.b[::-1]"), |
|
642 | [2, 1]) |
|
643 | self.assertEqual(TT.load(cnf_path, ac_query="length(b.b)"), 2) |
|
644 | except (NameError, AttributeError): |
|
645 | pass # jmespath is not available. |
|
646 | ||
647 | # vim:sw=4:ts=4:et: |
|
648 |