| Index: tests/service_tests/multiple_services/multiple_snapshots_test.cc
|
| diff --git a/tests/service_tests/multiple_services/multiple_snapshots_test.cc b/tests/service_tests/multiple_services/multiple_snapshots_test.cc
|
| deleted file mode 100644
|
| index 323af4e6d1f56159c73b3a3aaede0cc4db876c52..0000000000000000000000000000000000000000
|
| --- a/tests/service_tests/multiple_services/multiple_snapshots_test.cc
|
| +++ /dev/null
|
| @@ -1,88 +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* argv) {
|
| - const char** paths = static_cast<const char**>(argv);
|
| - DartinoSetup();
|
| - DartinoProgram programs[2];
|
| - int exitcodes[2];
|
| - programs[0] = DartinoLoadSnapshotFromFile(paths[1]);
|
| - programs[1] = DartinoLoadSnapshotFromFile(paths[2]);
|
| - DartinoRunMultipleMain(2, programs, exitcodes, 0, NULL);
|
| - DartinoDeleteProgram(programs[0]);
|
| - DartinoDeleteProgram(programs[1]);
|
| - 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);
|
| - 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 < 3) {
|
| - printf("Usage: %s <snapshot_one> <snapshot_two>\n", argv[0]);
|
| - return 1;
|
| - }
|
| - SetupMultipleSnapshotsTest(argc, argv);
|
| - InteractWithServices();
|
| - TearDownMultipleSnapshotsTest();
|
| -}
|
|
|