-
Notifications
You must be signed in to change notification settings - Fork 190
/
kbs_server_helper_test.cc
64 lines (49 loc) · 1.98 KB
/
kbs_server_helper_test.cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/*Copyright 2020 Google LLC
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
==============================================================================*/
#include "research/carls/kbs_server_helper.h"
#include <thread> // NOLINT
// Placeholder for internal channel credential // net
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include "grpcpp/create_channel.h" // third_party
#include "grpcpp/security/credentials.h" // third_party
namespace carls {
class KbsServerHelperTest : public ::testing::Test {
protected:
KbsServerHelperTest() {}
};
TEST_F(KbsServerHelperTest, Create) {
const KnowledgeBankServiceOptions options;
KbsServerHelper helper(options);
}
TEST_F(KbsServerHelperTest, WaitForTermination) {
const KnowledgeBankServiceOptions options;
KbsServerHelper helper(options);
auto fn = [&helper]() { helper.WaitForTermination(); };
std::thread t(fn);
helper.Terminate();
t.join();
}
TEST_F(KbsServerHelperTest, StubConnection) {
const KnowledgeBankServiceOptions options;
KbsServerHelper helper(options);
const std::string kbs_address = absl::StrCat("localhost:", helper.port());
std::shared_ptr<grpc::ChannelCredentials> credentials =
grpc::InsecureChannelCredentials();
std::shared_ptr<grpc::Channel> channel =
grpc::CreateChannel(kbs_address, credentials);
ASSERT_TRUE(channel != nullptr);
std::unique_ptr</*grpc_gen::*/KnowledgeBankService::Stub> stub =
/*grpc_gen::*/KnowledgeBankService::NewStub(channel);
ASSERT_TRUE(stub != nullptr);
}
} // namespace carls