File indexing completed on 2026-04-09 07:49:15
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #include <cassert>
0021 #include "SArgs.hh"
0022
0023 #include "OPTICKS_LOG.hh"
0024
0025
0026 void test_argforced(int argc, char** argv)
0027 {
0028 const char* argforced = "--compute --nopropagate --tracer --nogdmlpath" ;
0029
0030 const char* opts = nullptr ;
0031
0032 SArgs* sa = new SArgs(argc, argv, argforced, opts );
0033
0034 std::cout << " sa->argc " << sa->argc << std::endl ;
0035 sa->dump();
0036
0037 assert(sa->hasArg("--compute"));
0038 assert(sa->hasArg("--nopropagate"));
0039 assert(sa->hasArg("--tracer"));
0040 assert(sa->hasArg("--nogdmlpath"));
0041 }
0042
0043
0044 void test_starts_with()
0045 {
0046 std::string e = "--hello" ;
0047 std::string f = "hello" ;
0048 assert( SArgs::starts_with(e,"--") == true ) ;
0049 assert( SArgs::starts_with(f,"--") == false ) ;
0050 }
0051
0052 void test_get_first_arg_ending_with(int argc, char** argv)
0053 {
0054 const char* extra = "--red --green path/to/geometry.gdmlx --blue another.gdml" ;
0055 const char* opts = "--pink slip" ;
0056 SArgs* sa = new SArgs(argc, argv, extra, opts );
0057 const char* arg = sa->get_first_arg_ending_with(".gdml", NULL );
0058 LOG(info) << arg ;
0059 }
0060
0061
0062 int main(int argc, char** argv)
0063 {
0064 OPTICKS_LOG(argc, argv);
0065
0066 test_starts_with();
0067 test_argforced(argc, argv);
0068
0069
0070
0071 return 0 ;
0072 }
0073
0074
0075
0076
0077
0078
0079
0080
0081
0082