GCC Code Coverage Report


Directory: ./
File: TestStretchableArray.cpp
Date: 2026-03-21 20:51:59
Exec Total Coverage
Lines: 11 11 100.0%
Functions: 3 3 100.0%
Branches: 20 86 23.3%

Line Branch Exec Source
1 #include "StretchableArray.hpp"
2 #include <gtest/gtest.h>
3
4 8 TEST(StretchableArray, Stretch) {
5 2 auto size = gsl::index{3};
6
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
2 auto array = StretchableArray{size};
7
2/2
✓ Branch 1 taken 3 times.
✓ Branch 2 taken 1 times.
8 for (auto x = gsl::index{0}; x < size; x++) {
8
1/2
✓ Branch 3 taken 3 times.
✗ Branch 4 not taken.
6 array[x] = gsl::narrow_cast<double>(x);
9 }
10
2/10
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
2 EXPECT_EQ(array.size(), size);
11
4/34
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 12 taken 1 times.
✗ Branch 13 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
✗ Branch 26 not taken.
✗ Branch 27 not taken.
✗ Branch 31 not taken.
✗ Branch 32 not taken.
✗ Branch 35 not taken.
✗ Branch 36 not taken.
✗ Branch 44 not taken.
✗ Branch 45 not taken.
✗ Branch 49 not taken.
✗ Branch 50 not taken.
✗ Branch 57 not taken.
✗ Branch 58 not taken.
✗ Branch 61 not taken.
✗ Branch 62 not taken.
✗ Branch 66 not taken.
✗ Branch 67 not taken.
✗ Branch 76 not taken.
✗ Branch 77 not taken.
✗ Branch 79 not taken.
✗ Branch 80 not taken.
✗ Branch 84 not taken.
✗ Branch 85 not taken.
✗ Branch 87 not taken.
✗ Branch 88 not taken.
2 EXPECT_NO_THROW(array[size] = size);
12
2/10
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
2 EXPECT_GT(array.size(), size);
13
5/14
✓ Branch 4 taken 3 times.
✗ Branch 5 not taken.
✓ Branch 8 taken 3 times.
✗ Branch 9 not taken.
✗ Branch 11 not taken.
✓ Branch 12 taken 3 times.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 21 not taken.
✗ Branch 22 not taken.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✓ Branch 32 taken 3 times.
✓ Branch 33 taken 1 times.
8 for (auto x = gsl::index{0}; x < size; x++) { EXPECT_EQ(array[x], x); }
14
3/12
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 8 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
✗ Branch 14 not taken.
✗ Branch 15 not taken.
✗ Branch 20 not taken.
✗ Branch 21 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
2 EXPECT_EQ(array[size], size);
15 4 }
16