mirror of
https://github.com/google/sandboxed-api.git
synced 2024-03-22 13:11:30 +08:00
Google style added
This commit is contained in:
parent
e411799d0d
commit
bfa6b2502b
|
@ -16,20 +16,20 @@
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
class JsonnetTest : public JsonnetTestHelper, public testing::Test {
|
class JsonnetTest : public JsonnetTestHelper, public testing::Test {
|
||||||
protected:
|
protected:
|
||||||
void SetUp() override { TestSetUp(); }
|
void SetUp() override { TestSetUp(); }
|
||||||
void TearDown() override { TestTearDown(); }
|
void TearDown() override { TestTearDown(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
// Basic test
|
// Basic test
|
||||||
TEST_F(JsonnetTest, SetUp_TearDown) {
|
TEST_F(JsonnetTest, SetUp_TearDown) {
|
||||||
ASSERT_FALSE(if_jsonnet_vm_was_used_);
|
ASSERT_FALSE(if_jsonnet_vm_was_used_);
|
||||||
ASSERT_FALSE(if_input_was_read_);
|
ASSERT_FALSE(if_input_was_read_);
|
||||||
}
|
}
|
||||||
|
|
||||||
// One file evaluation to one file
|
// One file evaluation to one file
|
||||||
TEST_F(JsonnetTest, One_file_no_dependencies) {
|
TEST_F(JsonnetTest, One_file_no_dependencies) {
|
||||||
constexpr char kInputFile[] = "arith.jsonnet";
|
constexpr char kInputFile[] = "arith.jsonnet";
|
||||||
constexpr char kOutputFile[] = "arith_output";
|
constexpr char kOutputFile[] = "arith_output";
|
||||||
constexpr char kOutputToRead[] = "tests_output/arith_output";
|
constexpr char kOutputToRead[] = "tests_output/arith_output";
|
||||||
|
@ -43,10 +43,10 @@ namespace {
|
||||||
std::string expected_output = Read_output(kOutputToExpect);
|
std::string expected_output = Read_output(kOutputToExpect);
|
||||||
|
|
||||||
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
// One file evaluating to one file, dependent on some other files
|
// One file evaluating to one file, dependent on some other files
|
||||||
TEST_F(JsonnetTest, One_file_some_dependencies) {
|
TEST_F(JsonnetTest, One_file_some_dependencies) {
|
||||||
constexpr char kInputFile[] = "negroni.jsonnet";
|
constexpr char kInputFile[] = "negroni.jsonnet";
|
||||||
constexpr char kOutputFile[] = "negroni_output";
|
constexpr char kOutputFile[] = "negroni_output";
|
||||||
constexpr char kOutputToRead[] = "tests_output/negroni_output";
|
constexpr char kOutputToRead[] = "tests_output/negroni_output";
|
||||||
|
@ -60,10 +60,10 @@ namespace {
|
||||||
const std::string expected_output = Read_output(kOutputToExpect);
|
const std::string expected_output = Read_output(kOutputToExpect);
|
||||||
|
|
||||||
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
// One file evaluating to two files
|
// One file evaluating to two files
|
||||||
TEST_F(JsonnetTest, Multiple_files) {
|
TEST_F(JsonnetTest, Multiple_files) {
|
||||||
constexpr char kInputFile[] = "multiple_files_example.jsonnet";
|
constexpr char kInputFile[] = "multiple_files_example.jsonnet";
|
||||||
constexpr char kOutputFile[] = "";
|
constexpr char kOutputFile[] = "";
|
||||||
constexpr char kOutputToRead1[] = "tests_output/first_file.json";
|
constexpr char kOutputToRead1[] = "tests_output/first_file.json";
|
||||||
|
@ -82,14 +82,15 @@ namespace {
|
||||||
|
|
||||||
ASSERT_STREQ(produced_output_1.c_str(), expected_output_1.c_str());
|
ASSERT_STREQ(produced_output_1.c_str(), expected_output_1.c_str());
|
||||||
ASSERT_STREQ(produced_output_2.c_str(), expected_output_2.c_str());
|
ASSERT_STREQ(produced_output_2.c_str(), expected_output_2.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
// One file evaluating to yaml stream format
|
// One file evaluating to yaml stream format
|
||||||
TEST_F(JsonnetTest, Yaml_stream) {
|
TEST_F(JsonnetTest, Yaml_stream) {
|
||||||
constexpr char kInputFile[] = "yaml_stream_example.jsonnet";
|
constexpr char kInputFile[] = "yaml_stream_example.jsonnet";
|
||||||
constexpr char kOutputFile[] = "yaml_stream_example.yaml";
|
constexpr char kOutputFile[] = "yaml_stream_example.yaml";
|
||||||
constexpr char kOutputToRead[] = "tests_output/yaml_stream_example.yaml";
|
constexpr char kOutputToRead[] = "tests_output/yaml_stream_example.yaml";
|
||||||
constexpr char kOutputToExpect[] = "tests_expected_output/yaml_stream_example.yaml";
|
constexpr char kOutputToExpect[] =
|
||||||
|
"tests_expected_output/yaml_stream_example.yaml";
|
||||||
|
|
||||||
Read_input(kInputFile);
|
Read_input(kInputFile);
|
||||||
Evaluate_jsonnet_code(kYamlStream, true);
|
Evaluate_jsonnet_code(kYamlStream, true);
|
||||||
|
@ -99,14 +100,14 @@ namespace {
|
||||||
const std::string expected_output = Read_output(kOutputToExpect);
|
const std::string expected_output = Read_output(kOutputToExpect);
|
||||||
|
|
||||||
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
ASSERT_STREQ(produced_output.c_str(), expected_output.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
// One file depended on some other files not accessible by the sandbox
|
// One file depended on some other files not accessible by the sandbox
|
||||||
TEST_F(JsonnetTest, Bad_evaluation) {
|
TEST_F(JsonnetTest, Bad_evaluation) {
|
||||||
constexpr char kInputFile[] = "imports.jsonnet";
|
constexpr char kInputFile[] = "imports.jsonnet";
|
||||||
|
|
||||||
Read_input(kInputFile);
|
Read_input(kInputFile);
|
||||||
Evaluate_jsonnet_code(kBase, false);
|
Evaluate_jsonnet_code(kBase, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
} //namespace
|
} // namespace
|
||||||
|
|
|
@ -21,15 +21,17 @@ void JsonnetTestHelper::TestSetUp() {
|
||||||
int error = readlink("/proc/self/exe", buffer, 256);
|
int error = readlink("/proc/self/exe", buffer, 256);
|
||||||
ASSERT_GE(error, 0);
|
ASSERT_GE(error, 0);
|
||||||
|
|
||||||
std::pair<absl::string_view, absl::string_view> parts_of_path = sandbox2::file::SplitPath(buffer);
|
std::pair<absl::string_view, absl::string_view> parts_of_path =
|
||||||
|
sandbox2::file::SplitPath(buffer);
|
||||||
absl::string_view binary_path = parts_of_path.first;
|
absl::string_view binary_path = parts_of_path.first;
|
||||||
|
|
||||||
std::string input_path = sandbox2::file::JoinPath(binary_path, "tests_input", "dummy_input");
|
std::string input_path =
|
||||||
std::string output_path = sandbox2::file::JoinPath(binary_path, "tests_output", "dummy_input");
|
sandbox2::file::JoinPath(binary_path, "tests_input", "dummy_input");
|
||||||
|
std::string output_path =
|
||||||
|
sandbox2::file::JoinPath(binary_path, "tests_output", "dummy_input");
|
||||||
|
|
||||||
// Set up sandbox and api.
|
// Set up sandbox and api.
|
||||||
sandbox_ = absl::make_unique<JsonnetBaseSandbox>(input_path,
|
sandbox_ = absl::make_unique<JsonnetBaseSandbox>(input_path, output_path);
|
||||||
output_path);
|
|
||||||
ASSERT_THAT(sandbox_->Init(), sapi::IsOk());
|
ASSERT_THAT(sandbox_->Init(), sapi::IsOk());
|
||||||
api_ = absl::make_unique<JsonnetApi>(sandbox_.get());
|
api_ = absl::make_unique<JsonnetApi>(sandbox_.get());
|
||||||
|
|
||||||
|
@ -118,7 +120,8 @@ void JsonnetTestHelper::Write_output(const char* filename_or_directory,
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case kBase: {
|
case kBase: {
|
||||||
std::string out_file_in_sandboxee(std::string("/output/") +
|
std::string out_file_in_sandboxee(
|
||||||
|
std::string("/output/") +
|
||||||
basename(const_cast<char*>(&filename_or_directory[0])));
|
basename(const_cast<char*>(&filename_or_directory[0])));
|
||||||
sapi::v::ConstCStr out_file_var(out_file_in_sandboxee.c_str());
|
sapi::v::ConstCStr out_file_var(out_file_in_sandboxee.c_str());
|
||||||
|
|
||||||
|
@ -137,7 +140,8 @@ void JsonnetTestHelper::Write_output(const char* filename_or_directory,
|
||||||
}
|
}
|
||||||
|
|
||||||
case kYamlStream: {
|
case kYamlStream: {
|
||||||
std::string out_file_in_sandboxee(std::string("/output/") +
|
std::string out_file_in_sandboxee(
|
||||||
|
std::string("/output/") +
|
||||||
basename(const_cast<char*>(&filename_or_directory[0])));
|
basename(const_cast<char*>(&filename_or_directory[0])));
|
||||||
sapi::v::ConstCStr out_file_var(out_file_in_sandboxee.c_str());
|
sapi::v::ConstCStr out_file_var(out_file_in_sandboxee.c_str());
|
||||||
SAPI_ASSERT_OK_AND_ASSIGN(
|
SAPI_ASSERT_OK_AND_ASSIGN(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user