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

Method testStack

test/serializer.cpp:690–772  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

688 }
689
690 void
691 testStack()
692 {
693 char const* sample = "sample string";
694
695 detail::stack st;
696 BOOST_TEST( st.empty() );
697
698 st.clear();
699 BOOST_TEST( st.empty() );
700
701 st.push(1);
702 BOOST_TEST( !st.empty() );
703
704 st.push(sample);
705 st.push(3.4);
706
707 std::vector<int> v{1, 2, 3, 4, 5};
708 st.push(v);
709
710 v.pop_back();
711 st.push(v);
712
713 v.pop_back();
714 st.push(v);
715
716 {
717 std::vector<int> v1;
718 st.pop( v1 );
719
720 BOOST_TEST( v == v1 );
721 }
722 v.push_back(4);
723 {
724 std::vector<int> v1;
725 st.pop( v1 );
726
727 BOOST_TEST( v == v1 );
728 }
729 v.push_back(5);
730 {
731 std::vector<int> v1;
732 st.pop( v1 );
733
734 BOOST_TEST( v == v1 );
735 }
736 {
737 double d1;
738 st.peek( d1 );
739 BOOST_TEST( d1 == 3.4 );
740
741 double d2;
742 st.pop( d2 );
743 BOOST_TEST( d2 == d1 );
744 BOOST_TEST( !st.empty() );
745 }
746 {
747 char const* s1;

Callers

nothing calls this directly

Calls 5

pushMethod · 0.80
popMethod · 0.80
emptyMethod · 0.45
clearMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected