#!/usr/bin/env ruby ENVIRONMENT_DIRS = ['ev', 'ev-exam'] def config Grader::Configuration.get_instance end def rename_problem(old_problem_name, new_problem_name) if valid_problem_name(new_problem_name) puts "Bad new problem name: #{new_problem_name}" return end problem = Problem.find_by_name(old_problem_name) if problem==nil puts "Problem #{old_problem_name} does not exist." return end puts "Problem: #{old_problem_name} -> #{new_problem_name}" ENVIRONMENT_DIRS.each do |dir| problem_dir = File.join(GRADER_ROOT,'..',dir,old_problem_name) new_problem_dir = File.join(GRADER_ROOT,'..',dir,new_problem_name) if FileTest.exists? problem_dir puts "Moving #{problem_dir} to #{new_problem_dir}." File.rename(problem_dir, new_problem_dir) tr_problem_dir = File.join(GRADER_ROOT,'..',dir, 'test_request',old_problem_name) new_tr_problem_dir = File.join(GRADER_ROOT,'..',dir, 'test_request',new_problem_name) File.rename(tr_problem_dir, new_tr_problem_dir) end end problem.name = new_problem_name problem.save end def usage puts <