|
7 | 7 | #include <memory> |
8 | 8 | #include <mutex> // lock_guard, mutex, unique_lock |
9 | 9 | #include <thread> // this_thread |
| 10 | +#include <utility> |
10 | 11 | #include <vector> |
11 | 12 |
|
12 | 13 | #include "databento/constants.hpp" // dataset |
@@ -55,23 +56,28 @@ TEST_F(LiveBlockingTests, TestAuthentication) { |
55 | 56 | .BuildBlocking(); |
56 | 57 | } |
57 | 58 |
|
58 | | -TEST_F(LiveBlockingTests, TestStart) { |
| 59 | +TEST_F(LiveBlockingTests, TestStartAndUpgrade) { |
59 | 60 | constexpr auto kTsOut = true; |
60 | | - const mock::MockLsgServer mock_server{dataset::kGlbxMdp3, kTsOut, |
61 | | - [](mock::MockLsgServer& self) { |
62 | | - self.Accept(); |
63 | | - self.Authenticate(); |
64 | | - self.Start(); |
65 | | - }}; |
66 | | - |
67 | | - LiveBlocking target = builder_.SetAddress(kLocalhost, mock_server.Port()) |
68 | | - .SetSendTsOut(kTsOut) |
69 | | - .SetDataset(dataset::kGlbxMdp3) |
70 | | - .BuildBlocking(); |
71 | | - const auto metadata = target.Start(); |
72 | | - EXPECT_EQ(metadata.version, 1); |
73 | | - EXPECT_TRUE(metadata.has_mixed_schema); |
74 | | - EXPECT_EQ(metadata.dataset, dataset::kGlbxMdp3); |
| 61 | + for (const auto policy_and_version : |
| 62 | + {std::make_pair(VersionUpgradePolicy::AsIs, 1), |
| 63 | + std::make_pair(VersionUpgradePolicy::Upgrade, 2)}) { |
| 64 | + const mock::MockLsgServer mock_server{dataset::kGlbxMdp3, kTsOut, |
| 65 | + [](mock::MockLsgServer& self) { |
| 66 | + self.Accept(); |
| 67 | + self.Authenticate(); |
| 68 | + self.Start(); |
| 69 | + }}; |
| 70 | + |
| 71 | + LiveBlocking target = builder_.SetAddress(kLocalhost, mock_server.Port()) |
| 72 | + .SetSendTsOut(kTsOut) |
| 73 | + .SetDataset(dataset::kGlbxMdp3) |
| 74 | + .SetUpgradePolicy(policy_and_version.first) |
| 75 | + .BuildBlocking(); |
| 76 | + const auto metadata = target.Start(); |
| 77 | + EXPECT_EQ(metadata.version, policy_and_version.second); |
| 78 | + EXPECT_TRUE(metadata.has_mixed_schema); |
| 79 | + EXPECT_EQ(metadata.dataset, dataset::kGlbxMdp3); |
| 80 | + } |
75 | 81 | } |
76 | 82 |
|
77 | 83 | TEST_F(LiveBlockingTests, TestSubscribe) { |
|
0 commit comments