Well, high-performance code in C++ is not a Java, where you can tolerate unnecessary indirections... Sure, you can use static polymorphism to inject mocks of the lower-layer, but it makes code a bit ugly. And those mocks aren't free to setup either.
So, I think devs made a good trade-off here. Code is still testable, you just need to "hide" errors from higher-level tests if you notice errors from the lower-level ones.