2018-08-27 16:21:26 +00:00
|
|
|
/**
|
|
|
|
* Copyright (c) 2014-present, Facebook, Inc.
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
2019-02-19 18:52:19 +00:00
|
|
|
* This source code is licensed in accordance with the terms specified in
|
|
|
|
* the LICENSE file found in the root directory of this source tree.
|
2018-08-27 16:21:26 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
// Sanity check integration test for elf_info
|
|
|
|
// Spec file: specs/linux/elf_info.table
|
|
|
|
|
|
|
|
#include <osquery/tests/integration/tables/helper.h>
|
|
|
|
|
|
|
|
namespace osquery {
|
2018-09-21 18:54:31 +00:00
|
|
|
namespace table_tests {
|
2018-08-27 16:21:26 +00:00
|
|
|
|
2018-09-21 18:54:31 +00:00
|
|
|
class elfInfo : public testing::Test {
|
|
|
|
protected:
|
|
|
|
void SetUp() override {
|
|
|
|
setUpEnvironment();
|
|
|
|
}
|
|
|
|
};
|
2018-08-27 16:21:26 +00:00
|
|
|
|
|
|
|
TEST_F(elfInfo, test_sanity) {
|
|
|
|
// 1. Query data
|
2019-02-07 11:11:41 +00:00
|
|
|
auto const data = execute_query("select * from elf_info where path = ''");
|
2018-08-27 16:21:26 +00:00
|
|
|
// 2. Check size before validation
|
|
|
|
// ASSERT_GE(data.size(), 0ul);
|
|
|
|
// ASSERT_EQ(data.size(), 1ul);
|
|
|
|
// ASSERT_EQ(data.size(), 0ul);
|
|
|
|
// 3. Build validation map
|
2018-09-21 18:54:31 +00:00
|
|
|
// See helper.h for avaialbe flags
|
2018-08-27 16:21:26 +00:00
|
|
|
// Or use custom DataCheck object
|
2019-09-26 03:35:15 +00:00
|
|
|
// ValidationMap row_map = {
|
2018-08-27 16:21:26 +00:00
|
|
|
// {"class", NormalType}
|
|
|
|
// {"abi", NormalType}
|
|
|
|
// {"abi_version", IntType}
|
|
|
|
// {"type", NormalType}
|
|
|
|
// {"machine", IntType}
|
|
|
|
// {"version", IntType}
|
|
|
|
// {"entry", IntType}
|
|
|
|
// {"flags", IntType}
|
|
|
|
// {"path", NormalType}
|
|
|
|
//}
|
|
|
|
// 4. Perform validation
|
2018-08-29 19:16:00 +00:00
|
|
|
// validate_rows(data, row_map);
|
2018-08-27 16:21:26 +00:00
|
|
|
}
|
|
|
|
|
2018-09-21 18:54:31 +00:00
|
|
|
} // namespace table_tests
|
2018-08-27 16:21:26 +00:00
|
|
|
} // namespace osquery
|