Flutter Engine Uber Docs
Docs for the entire Flutter Engine repo.
 
Loading...
Searching...
No Matches
main.cc File Reference

Go to the source code of this file.

Namespaces

namespace  impeller
 

Functions

 impeller::TEST (ValidationTest, IsFatal)
 
int main (int argc, char **argv)
 

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 34 of file main.cc.

34 {
37 testing::InitGoogleTest(&argc, argv);
39
40 std::optional<std::string> working_dir;
41 for (const auto& option : cmd.options()) {
42 if (option.name == "working_dir") {
43 wordexp_t wordexp_result;
44 int code = wordexp(option.value.c_str(), &wordexp_result, 0);
45 FML_CHECK(code == 0);
46 FML_CHECK(wordexp_result.we_wordc != 0);
47 working_dir = wordexp_result.we_wordv[0];
48 wordfree(&wordexp_result);
49 }
50 }
51 if (!working_dir) {
52 std::cout << "required argument \"working_dir\" is missing." << std::endl
53 << std::endl;
54 print_usage();
55 return 1;
56 }
57
59 std::cout << "working directory: "
61 << std::endl;
62
63 int return_code = RUN_ALL_TESTS();
64 if (0 == return_code) {
67 }
68 return return_code;
69}
bool Write(WorkingDirectory *working_directory)
static GoldenDigest * Instance()
void SetPath(const std::string &path)
const std::string & GetPath() const
static WorkingDirectory * Instance()
#define FML_CHECK(condition)
Definition logging.h:104
char ** argv
Definition library.h:9
void InstallCrashHandler()
Definition backtrace.cc:126
CommandLine CommandLineFromPlatformOrArgcArgv(int argc, const char *const *argv)
void ImpellerValidationErrorsSetFatal(bool fatal)
Definition validation.cc:17

References argv, fml::CommandLineFromPlatformOrArgcArgv(), FML_CHECK, impeller::testing::WorkingDirectory::GetPath(), impeller::ImpellerValidationErrorsSetFatal(), fml::InstallCrashHandler(), impeller::testing::GoldenDigest::Instance(), impeller::testing::WorkingDirectory::Instance(), fml::CommandLine::options(), impeller::testing::WorkingDirectory::SetPath(), and impeller::testing::GoldenDigest::Write().