123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- # -*-perl-*-
- $description = "The following test creates a makefile to test wildcard\n"
- ."expansions and the ability to put a command on the same\n"
- ."line as the target name separated by a semi-colon.";
- $details = "This test creates 4 files by the names of 1.example, \n"
- ."two.example and 3.example. We execute three tests. The first\n"
- ."executes the print1 target which tests the '*' wildcard by \n"
- ."echoing all filenames by the name of '*.example'. The second\n"
- ."test echo's all files which match '?.example' and \n"
- ."[a-z0-9].example. Lastly we clean up all of the files using\n"
- ."the '*' wildcard as in the first test";
- if ($vos)
- {
- $delete_command = "delete_file -no_ask";
- }
- else
- {
- $delete_command = "rm";
- }
- open(MAKEFILE,"> $makefile");
- # The Contents of the MAKEFILE ...
- print MAKEFILE <<EOM;
- print1: ;\@echo \$(wildcard example.*)
- print2:
- \t\@echo \$(wildcard example.?)
- \t\@echo \$(wildcard example.[a-z0-9])
- \t\@echo \$(wildcard example.[!A-Za-z_\\!])
- clean:
- \t$delete_command \$(wildcard example.*)
- EOM
- # END of Contents of MAKEFILE
- close(MAKEFILE);
- &touch("example.1");
- &touch("example.two");
- &touch("example.3");
- &touch("example.for");
- &touch("example._");
- # TEST #1
- # -------
- $answer = "example.1 example.3 example._ example.for example.two\n";
- &run_make_with_options($makefile,"print1",&get_logfile);
- &compare_output($answer,&get_logfile(1));
- # TEST #2
- # -------
- $answer = "example.1 example.3 example._\n"
- ."example.1 example.3\n"
- ."example.1 example.3\n";
- &run_make_with_options($makefile,"print2",&get_logfile);
- &compare_output($answer,&get_logfile(1));
- # TEST #3
- # -------
- $answer = "$delete_command example.1 example.3 example._ example.for example.two";
- if ($vos)
- {
- $answer .= " \n";
- }
- else
- {
- $answer .= "\n";
- }
- &run_make_with_options($makefile,"clean",&get_logfile);
- &compare_output($answer,&get_logfile(1));
- if ((-f "example.1")||(-f "example.two")||(-f "example.3")||(-f "example.for"))
- {
- $test_passed = 0;
- }
- 1;
|