MCPcopy Create free account
hub / github.com/boostorg/json / testIterators

Method testIterators

test/array.cpp:616–724  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

614 }
615
616 void
617 testIterators()
618 {
619 array a({1, true, str_});
620 auto const& ac(a);
621
622 {
623 auto it = a.begin();
624 BOOST_TEST(it->is_number()); ++it;
625 BOOST_TEST(it->is_bool()); it++;
626 BOOST_TEST(it->is_string()); ++it;
627 BOOST_TEST(it == a.end());
628 }
629 {
630 auto it = a.cbegin();
631 BOOST_TEST(it->is_number()); ++it;
632 BOOST_TEST(it->is_bool()); it++;
633 BOOST_TEST(it->is_string()); ++it;
634 BOOST_TEST(it == a.cend());
635 }
636 {
637 auto it = ac.begin();
638 BOOST_TEST(it->is_number()); ++it;
639 BOOST_TEST(it->is_bool()); it++;
640 BOOST_TEST(it->is_string()); ++it;
641 BOOST_TEST(it == ac.end());
642 }
643 {
644 auto it = a.end();
645 --it; BOOST_TEST(it->is_string());
646 it--; BOOST_TEST(it->is_bool());
647 --it; BOOST_TEST(it->is_number());
648 BOOST_TEST(it == a.begin());
649 }
650 {
651 auto it = a.cend();
652 --it; BOOST_TEST(it->is_string());
653 it--; BOOST_TEST(it->is_bool());
654 --it; BOOST_TEST(it->is_number());
655 BOOST_TEST(it == a.cbegin());
656 }
657 {
658 auto it = ac.end();
659 --it; BOOST_TEST(it->is_string());
660 it--; BOOST_TEST(it->is_bool());
661 --it; BOOST_TEST(it->is_number());
662 BOOST_TEST(it == ac.begin());
663 }
664
665 {
666 auto it = a.rbegin();
667 BOOST_TEST(it->is_string()); ++it;
668 BOOST_TEST(it->is_bool()); it++;
669 BOOST_TEST(it->is_number()); ++it;
670 BOOST_TEST(it == a.rend());
671 }
672 {
673 auto it = a.crbegin();

Callers

nothing calls this directly

Calls 11

is_numberMethod · 0.80
is_boolMethod · 0.80
is_stringMethod · 0.80
cbeginMethod · 0.80
cendMethod · 0.80
rbeginMethod · 0.80
rendMethod · 0.80
crbeginMethod · 0.80
crendMethod · 0.80
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected