}
virtual void TearDown() {
+ usleep(30000);
}
};
TEST_F(AddressTranslatorTest, ServicesUsingPredefinedAddressesCanCommunicate) {
- std::shared_ptr<CommonAPI::Runtime> runtime;
- std::shared_ptr<CommonAPI::Factory> proxyFactory;
- std::shared_ptr<CommonAPI::Factory> stubFactory;
-
- runtime = CommonAPI::Runtime::load();
+ std::shared_ptr<CommonAPI::Runtime> runtime = CommonAPI::Runtime::load();
ASSERT_TRUE((bool)runtime);
CommonAPI::DBus::DBusRuntime* dbusRuntime = dynamic_cast<CommonAPI::DBus::DBusRuntime*>(&(*runtime));
ASSERT_TRUE(dbusRuntime != NULL);
- proxyFactory = runtime->createFactory();
+ std::shared_ptr<CommonAPI::Factory> proxyFactory = runtime->createFactory();
ASSERT_TRUE((bool)proxyFactory);
- stubFactory = runtime->createFactory();
+ std::shared_ptr<CommonAPI::Factory> stubFactory = runtime->createFactory();
ASSERT_TRUE((bool)stubFactory);
auto defaultTestProxy = proxyFactory->buildProxy<commonapi::tests::TestInterfaceProxy>(commonApiAddresses[0]);
ASSERT_TRUE((bool)defaultTestProxy);
auto stub = std::make_shared<commonapi::tests::TestInterfaceStubDefault>();
- bool success = stubFactory->registerService(stub, commonApiAddresses[0]);
- ASSERT_TRUE(success);
- sleep(1);
+ bool serviceNameAcquired = stubFactory->registerService(stub, commonApiAddresses[0]);
+ for(unsigned int i = 0; !serviceNameAcquired && i < 100; i++) {
+ serviceNameAcquired = stubFactory->registerService(stub, commonApiAddresses[0]);
+ usleep(10000);
+ }
+ ASSERT_TRUE(serviceNameAcquired);
+
+ for(unsigned int i = 0; !defaultTestProxy->isAvailable() && i < 100; ++i) {
+ usleep(10000);
+ }
+ ASSERT_TRUE(defaultTestProxy->isAvailable());
uint32_t v1 = 5;
std::string v2 = "Hai :)";
TEST_F(AddressTranslatorTest, FakeLegacyServiceCanBeAddressed) {
std::thread fakeServiceThread = std::thread(fakeLegacyServiceThread);
- sleep(1);
+ usleep(500000);
std::shared_ptr<CommonAPI::Runtime> runtime = CommonAPI::Runtime::load();
ASSERT_TRUE((bool)runtime);
//end the fake legacy service via dbus
int resultCode = system("python ./src/test/fakeLegacyService/sendToFakeLegacyService.py finish");
- EXPECT_EQ(0, resultCode);
+ ASSERT_EQ(0, resultCode);
fakeServiceThread.join();
}
}
virtual void TearDown() {
+ usleep(30000);
}
std::shared_ptr<CommonAPI::Runtime> runtime_;
ASSERT_TRUE((bool)defaultTestProxy);
auto stub = std::make_shared<commonapi::tests::TestInterfaceStubDefault>();
- bool success = stubFactory_->registerService(stub, serviceAddress_);
- ASSERT_TRUE(success);
- sleep(1);
+ bool serviceRegistered = stubFactory_->registerService(stub, serviceAddress_);
+ for(unsigned int i = 0; !serviceRegistered && i < 100; ++i) {
+ serviceRegistered = stubFactory_->registerService(stub, serviceAddress_);
+ usleep(10000);
+ }
+ ASSERT_TRUE(serviceRegistered);
+
+ for(unsigned int i = 0; !defaultTestProxy->isAvailable() && i < 100; ++i) {
+ usleep(10000);
+ }
+ ASSERT_TRUE(defaultTestProxy->isAvailable());
uint32_t v1 = 5;
std::string v2 = "Ciao ;)";
ASSERT_TRUE((bool)defaultTestProxy);
auto stub = std::make_shared<commonapi::tests::TestInterfaceStubDefault>();
- bool success = stubFactory_->registerService(stub, nonstandardAddress_);
- ASSERT_TRUE(success);
- sleep(1);
+ bool serviceRegistered = stubFactory_->registerService(stub, nonstandardAddress_);
+ for(unsigned int i = 0; !serviceRegistered && i < 100; ++i) {
+ serviceRegistered = stubFactory_->registerService(stub, nonstandardAddress_);
+ usleep(10000);
+ }
+ ASSERT_TRUE(serviceRegistered);
+
+ for(unsigned int i = 0; !defaultTestProxy->isAvailable() && i < 100; ++i) {
+ usleep(10000);
+ }
uint32_t v1 = 5;
std::string v2 = "Hai :)";
promise.set_value(std::tuple<CommonAPI::CallStatus, std::vector<std::string>>(callStatus, std::move(busNames)));
});
- auto status = future.wait_for(std::chrono::milliseconds(200));
+ auto status = future.wait_for(std::chrono::milliseconds(500));
bool waitResult = CommonAPI::DBus::checkReady(status);
ASSERT_EQ(waitResult, true);
}
virtual void TearDown() {
+ usleep(30000);
}
std::shared_ptr<CommonAPI::Runtime> runtime_;
ASSERT_TRUE((bool)stubFactory);
stub = std::make_shared<commonapi::tests::TestInterfaceStubDefault>();
- bool success = stubFactory->registerService(stub, serviceAddress);
- ASSERT_TRUE(success);
+ bool serviceNameAcquired = stubFactory->registerService(stub, serviceAddress);
- sleep(1);
+ for(unsigned int i = 0; !serviceNameAcquired && i < 100; i++) {
+ usleep(10000);
+ serviceNameAcquired = stubFactory->registerService(stub, serviceAddress);
+ }
+ ASSERT_TRUE(serviceNameAcquired);
proxy = proxyFactory->buildProxy<commonapi::tests::TestInterfaceProxy>(serviceAddress);
ASSERT_TRUE((bool)proxy);
+
+ for(unsigned int i = 0; !proxy->isAvailable() && i < 100; ++i) {
+ usleep(10000);
+ }
}
virtual void TearDown() {
stubFactory->unregisterService(serviceAddress);
+ usleep(30000);
}
std::shared_ptr<CommonAPI::Factory> proxyFactory;
}
virtual void TearDown() {
+ usleep(30000);
}
void registerTestStub() {
}
bool proxyWaitForAvailabilityStatus(const CommonAPI::AvailabilityStatus& availabilityStatus) const {
- std::chrono::milliseconds loopWaitDuration(100);
-
if (proxyAvailabilityStatus_ == availabilityStatus)
return true;
- for (int i = 0; i < 10; i++) {
+ std::chrono::milliseconds loopWaitDuration(10);
+ for (int i = 0; i < 100; i++) {
std::this_thread::sleep_for(loopWaitDuration);
if (proxyAvailabilityStatus_ == availabilityStatus)
registerTestStub();
+ usleep(500000);
+
EXPECT_TRUE(proxyWaitForAvailabilityStatus(CommonAPI::AvailabilityStatus::AVAILABLE));
stubDBusConnection_->disconnect();
registerTestStub();
// blocking in terms of "if it's still unknown"
- bool isAvailable = proxy_->isAvailableBlocking();
- for (int i = 0; !isAvailable && i < 10; i++) {
- std::this_thread::sleep_for(std::chrono::milliseconds(200));
- isAvailable = proxy_->isAvailableBlocking();
+ for (int i = 0; !proxy_->isAvailableBlocking() && i < 3; i++) {
+ std::this_thread::sleep_for(std::chrono::milliseconds(100));
}
- EXPECT_TRUE(isAvailable);
+ EXPECT_TRUE(proxy_->isAvailableBlocking());
deregisterTestStub();
}
bool isInstanceAlive = dbusServiceRegistry->isServiceInstanceAlive(dbusInterfaceName, dbusServiceName, dbusObjectPath);
- for (int i = 0; !isInstanceAlive && i < 5; i++) {
- std::this_thread::sleep_for(std::chrono::milliseconds(500));
+ for (int i = 0; !isInstanceAlive && i < 100; i++) {
+ std::this_thread::sleep_for(std::chrono::milliseconds(10));
isInstanceAlive = dbusServiceRegistry->isServiceInstanceAlive(dbusInterfaceName, dbusServiceName, dbusObjectPath);
}
auto stub = std::make_shared<commonapi::tests::TestInterfaceStubDefault>();
- dbusStubConnection_->requestServiceNameAndBlock("test.instance.name");
+ bool serviceNameAcquired = dbusStubConnection_->requestServiceNameAndBlock("test.instance.name");
+ for(unsigned int i = 0; !serviceNameAcquired && i < 100; ++i) {
+ usleep(10000);
+ serviceNameAcquired = dbusStubConnection_->requestServiceNameAndBlock("test.instance.name");
+ }
+ ASSERT_TRUE(serviceNameAcquired);
+
stubAdapter_ = std::make_shared<commonapi::tests::TestInterfaceDBusStubAdapter>(
"local:test.service.name:test.instance.name",
"test.service.name",
dbusStubConnection_,
stub);
stubAdapter_->init();
+ usleep(200000);
}
virtual void TearDown() {
stubAdapter_->deinit();
+ usleep(30000);
}
std::shared_ptr<CommonAPI::DBus::DBusConnection> dbusConnection_;
TEST_F(DBusServiceRegistryTestWithPredefinedRemote, RecognizesCommonAPIDBusServiceInstanceAsAlive) {
- sleep(1);
ASSERT_TRUE(dbusServiceRegistry_->isServiceInstanceAlive("test.service.name", "test.instance.name", "/test/instance/name"));
}
TEST_F(DBusServiceRegistryTestWithPredefinedRemote, FindsCommonAPIDBusServiceInstance) {
- sleep(1);
auto availableServices = dbusServiceRegistry_->getAvailableServiceInstances("test.service.name", "local");
ASSERT_EQ(1, availableServices.size());
bool serviceFound;