Description:
add more description to new_problem git-svn-id: http://theory.cpe.ku.ac.th/grader/cli/trunk/scripts@53 6386c4cd-e34a-4fa8-8920-d93eb39b512e
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r19:5d5b7e4073f5 - - 1 file changed: 7 inserted, 1 deleted

@@ -4,49 +4,55
4 # * creates a directory for a problem in the current directory,
4 # * creates a directory for a problem in the current directory,
5 # * create standard testcase config file
5 # * create standard testcase config file
6
6
7 require 'erb'
7 require 'erb'
8
8
9 def process_options(options)
9 def process_options(options)
10 i = 2
10 i = 2
11 while i<ARGV.length
11 while i<ARGV.length
12 if ARGV[i]=='-t'
12 if ARGV[i]=='-t'
13 options[:time_limit] = ARGV[i+1].to_i if ARGV.length>i+1
13 options[:time_limit] = ARGV[i+1].to_i if ARGV.length>i+1
14 i += 1
14 i += 1
15 end
15 end
16 if ARGV[i]=='-m'
16 if ARGV[i]=='-m'
17 options[:mem_limit] = ARGV[i+1].to_i if ARGV.length>i+1
17 options[:mem_limit] = ARGV[i+1].to_i if ARGV.length>i+1
18 i += 1
18 i += 1
19 end
19 end
20 i += 1
20 i += 1
21 end
21 end
22 end
22 end
23
23
24 GRADER_DIR = File.dirname(__FILE__)
24 GRADER_DIR = File.dirname(__FILE__)
25
25
26 # print usage
26 # print usage
27 if ARGV.length < 2
27 if ARGV.length < 2
28 - puts "using: new_problem problem number_of_testcase [options]"
28 + puts <<USAGE
29 + using: new_problem problem number_of_testcase [options]
30 + * creates a directory for a problem in the current directory,
31 + * create standard testcase config file
32 + * options: -t time-limit (in seconds)
33 + -m mem-limit (in MB)
34 + USAGE
29 exit(127)
35 exit(127)
30 end
36 end
31
37
32 # processing arguments
38 # processing arguments
33 problem = ARGV[0]
39 problem = ARGV[0]
34 num_testcases = ARGV[1].to_i
40 num_testcases = ARGV[1].to_i
35
41
36 options = {:time_limit => 1, :mem_limit => 16}
42 options = {:time_limit => 1, :mem_limit => 16}
37 process_options(options)
43 process_options(options)
38
44
39 # start working
45 # start working
40 puts "creating directories"
46 puts "creating directories"
41
47
42 system("mkdir #{problem}")
48 system("mkdir #{problem}")
43 system("mkdir #{problem}/script")
49 system("mkdir #{problem}/script")
44 system("mkdir #{problem}/test_cases")
50 system("mkdir #{problem}/test_cases")
45
51
46 puts "creating testcases directories"
52 puts "creating testcases directories"
47
53
48 1.upto(num_testcases) do |i|
54 1.upto(num_testcases) do |i|
49 system("mkdir #{problem}/test_cases/#{i}")
55 system("mkdir #{problem}/test_cases/#{i}")
50 end
56 end
51
57
52 # generating all_tests.cfg
58 # generating all_tests.cfg
You need to be logged in to leave comments. Login now