MCPcopy Create free account
hub / github.com/Pagghiu/SaneCppLibraries / testBasicType

Method testBasicType

Tests/Libraries/Containers/VectorTest.cpp:673–794  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

671}
672
673void SC::VectorTest::testBasicType()
674{
675 using namespace SC;
676 if (test_section("base_resize"))
677 {
678 Vector<int> elements;
679 SC_TEST_EXPECT(elements.size() == 0);
680 SC_TEST_EXPECT(elements.capacity() == 0);
681 SC_TEST_EXPECT(not elements.resize(INSANE_NUMBER));
682
683 SC_TEST_EXPECT(elements.resize(10, 11));
684 elements[0] = -1;
685 size_t numFailures = 0;
686 for (size_t idx = 0; idx < elements.size(); ++idx)
687 {
688 if (elements[idx] != 11)
689 {
690 numFailures++;
691 }
692 elements[idx] = static_cast<int>(idx);
693 }
694
695 SC_TEST_EXPECT(numFailures == 1);
696
697 SC_TEST_EXPECT(not elements.resize(INSANE_NUMBER));
698 SC_TEST_EXPECT(elements.size() == 10);
699 SC_TEST_EXPECT(elements.size() == elements.capacity());
700 SC_TEST_EXPECT(elements.reserve(elements.capacity() + 1));
701
702 SC_TEST_EXPECT(elements.resize(20));
703 elements[0] = -1;
704 numFailures = 0;
705 for (size_t idx = 0; idx < 10; ++idx)
706 {
707 if (elements[idx] != static_cast<int>(idx))
708 {
709 numFailures++;
710 }
711 }
712 SC_TEST_EXPECT(numFailures == 1);
713 numFailures = 0;
714 elements[10] = -1;
715 for (size_t idx = 10; idx < 20; ++idx)
716 {
717 if (elements[idx] != 0)
718 {
719 numFailures++;
720 }
721 }
722 SC_TEST_EXPECT(numFailures == 1);
723 SC_TEST_EXPECT(elements.resize(5));
724 SC_TEST_EXPECT(elements.size() == 5);
725 SC_TEST_EXPECT(elements.capacity() == 20);
726 SC_TEST_EXPECT(elements.shrink_to_fit());
727 for (size_t idx = 0; idx < elements.size(); ++idx)
728 {
729 if (elements[idx] != static_cast<int>(idx))
730 {

Callers

nothing calls this directly

Calls 13

bubbleSortFunction · 0.85
reserveMethod · 0.80
sizeMethod · 0.45
capacityMethod · 0.45
resizeMethod · 0.45
clearMethod · 0.45
push_backMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
containsMethod · 0.45
findMethod · 0.45

Tested by

no test coverage detected