summaryrefslogtreecommitdiff
path: root/core/libdeno/test.cc
blob: 3d022c90444db31b7b4163bf7899d25669e9d91c (plain)
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
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
#include "test.h"
#include <string>
#include "file_util.h"

deno_snapshot snapshot = {nullptr, 0};

int main(int argc, char** argv) {
  // Locate the snapshot.
  std::string exe_path;
  if (!deno::ExePath(&exe_path)) {
    std::cerr << "deno::ExePath() failed" << std::endl;
    return 1;
  }
  std::string snapshot_path = deno::Dirname(exe_path) + SNAPSHOT_PATH;

  // Load the snapshot.
  std::string contents;
  if (!deno::ReadFileToString(snapshot_path.c_str(), &contents)) {
    std::cerr << "Failed to read snapshot from " << snapshot_path << std::endl;
    return 1;
  }
  snapshot.data_ptr =
      reinterpret_cast<uint8_t*>(const_cast<char*>(contents.c_str()));
  snapshot.data_len = contents.size();

  testing::InitGoogleTest(&argc, argv);
  deno_init();
  deno_set_v8_flags(&argc, argv);
  return RUN_ALL_TESTS();
}