chrono_batch_render/
Coverage:
low: ≥ 0%
medium: ≥ 75.0%
high: ≥ 90.0%
Lines:
9 / 9
100.0%
Branches:
18 / 24
75.0%
Functions:
2 / 2
100.0%

util/environment.cpp
Line Branch Exec Source
1 // SPDX-License-Identifier: BSD-3-Clause
2 #include "chrono_batch_render/util/environment.h"
3
4 #include <cstdlib>
5
6 #include "chrono_batch_render/util/error.h"
7
8 namespace chrono::batch_render {
9
10 592 std::string Environment(const char* name) {
11 592 const char* value = std::getenv(name);
12
2/2
✓ Branch 0 taken 556 times.
✓ Branch 1 taken 36 times.
1148 return value != nullptr ? value : "";
13 }
14
15 3 void ThrowUnknownChoice(const char* name, std::string_view value,
16 const std::vector<std::string>& names) {
17
2/2
✓ Branch 0 taken 1 time.
✓ Branch 1 taken 2 times.
3 const std::string alternatives =
18
2/2
✓ Branch 0 taken 1 time.
✓ Branch 1 taken 2 times.
3 names.size() < 2 ? Join(names)
19
11/17
✓ Branch 1 taken 1 time.
✓ Branch 4 taken 2 times.
✓ Branch 7 taken 2 times.
✓ Branch 10 taken 2 times.
✓ Branch 13 taken 2 times.
✓ Branch 15 taken 2 times.
✓ Branch 16 taken 1 time.
✓ Branch 17 taken 2 times.
✓ Branch 18 taken 1 time.
✓ Branch 19 taken 2 times.
✓ Branch 20 taken 1 time.
✗ Branch 23 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✗ Branch 27 not taken.
✗ Branch 28 not taken.
9 : Join({names.begin(), names.end() - 1}) + " or " + names.back();
20
1/1
✓ Branch 2 taken 3 times.
3 throw Error("{} is \"{}\"; it may be {}", name, value, alternatives);
21 3 }
22
23 }
24