| Index: tests/service_tests/multiple_services/multiple_services_test.cc
|
| diff --git a/tests/service_tests/multiple_services/multiple_services_test.cc b/tests/service_tests/multiple_services/multiple_services_test.cc
|
| deleted file mode 100644
|
| index 032cf8ba39ade9b846c9a6c3b825d071cc80c12e..0000000000000000000000000000000000000000
|
| --- a/tests/service_tests/multiple_services/multiple_services_test.cc
|
| +++ /dev/null
|
| @@ -1,86 +0,0 @@
|
| -// Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
|
| -// for details. All rights reserved. Use of this source code is governed by a
|
| -// BSD-style license that can be found in the LICENSE.md file.
|
| -
|
| -#define TESTING
|
| -
|
| -#include <pthread.h>
|
| -#include <stdio.h>
|
| -#include <stdlib.h>
|
| -
|
| -#include "include/dartino_api.h"
|
| -#include "include/service_api.h"
|
| -
|
| -#include "src/shared/assert.h" // NOLINT(build/include)
|
| -#include "cc/service_one.h" // NOLINT(build/include)
|
| -#include "cc/service_two.h" // NOLINT(build/include)
|
| -
|
| -static const int kDone = 1;
|
| -
|
| -static pthread_mutex_t mutex;
|
| -static pthread_cond_t cond;
|
| -static int status = 0;
|
| -
|
| -static void ChangeStatusAndNotify(int new_status) {
|
| - pthread_mutex_lock(&mutex);
|
| - status = new_status;
|
| - pthread_cond_signal(&cond);
|
| - pthread_mutex_unlock(&mutex);
|
| -}
|
| -
|
| -static void WaitForStatus(int expected) {
|
| - pthread_mutex_lock(&mutex);
|
| - while (expected != status) pthread_cond_wait(&cond, &mutex);
|
| - pthread_mutex_unlock(&mutex);
|
| -}
|
| -
|
| -static void* DartThreadEntry(void* arg) {
|
| - const char* path = static_cast<const char*>(arg);
|
| - DartinoSetup();
|
| - DartinoProgram program = DartinoLoadSnapshotFromFile(path);
|
| - if (DartinoRunMain(program, 0, NULL) != 0) {
|
| - FATAL1("Failed to run snapshot: %s\n", path);
|
| - }
|
| - DartinoDeleteProgram(program);
|
| - DartinoTearDown();
|
| - ChangeStatusAndNotify(kDone);
|
| - return NULL;
|
| -}
|
| -
|
| -static void SetupMultipleSnapshotsTest(int argc, char** argv) {
|
| - pthread_mutex_init(&mutex, NULL);
|
| - pthread_cond_init(&cond, NULL);
|
| - ServiceApiSetup();
|
| - pthread_t thread;
|
| - int result = pthread_create(&thread, NULL, DartThreadEntry, argv[1]);
|
| - if (result != 0) {
|
| - perror("Failed to start thread");
|
| - exit(1);
|
| - }
|
| -}
|
| -
|
| -static void TearDownMultipleSnapshotsTest() {
|
| - WaitForStatus(kDone);
|
| - ServiceApiTearDown();
|
| -}
|
| -
|
| -static void InteractWithServices() {
|
| - ServiceOne::setup();
|
| - ServiceTwo::setup();
|
| -
|
| - EXPECT_EQ(10, ServiceOne::echo(5));
|
| - EXPECT_EQ(25, ServiceTwo::echo(5));
|
| -
|
| - ServiceTwo::tearDown();
|
| - ServiceOne::tearDown();
|
| -}
|
| -
|
| -int main(int argc, char** argv) {
|
| - if (argc < 2) {
|
| - printf("Usage: %s <snapshot>\n", argv[0]);
|
| - return 1;
|
| - }
|
| - SetupMultipleSnapshotsTest(argc, argv);
|
| - InteractWithServices();
|
| - TearDownMultipleSnapshotsTest();
|
| -}
|
|
|