OSDN Git Service

Improved stability of the test result.
[shogi-server/shogi-server.git] / shogi-server
index 8979a16..adc18bc 100755 (executable)
 $topdir = nil
 $league = nil
 $logger = nil
+$config = nil
 $:.unshift File.dirname(__FILE__)
 require 'shogi_server'
+require 'shogi_server/config'
 require 'tempfile'
 
 #################################################
@@ -183,14 +185,20 @@ end
 # Return true if the file is writable, otherwise false.
 #
 def is_writable_file?(file)
+  if File.exist?(file)
+    if FileTest.file?(file)
+      return FileTest.writable_real?(file)
+    else
+      return false
+    end
+  end
+  
   begin
     open(file, "w") {|fh| } 
+    FileUtils.rm file
   rescue
     return false
   end
-  unless FileTest.file? file
-    return false
-  end
 
   return true
 end
@@ -277,7 +285,7 @@ def login_loop(client)
 end
 
 def setup_logger(log_file)
-  logger = Logger.new(log_file, 'daily')
+  logger = ShogiServer::Logger.new(log_file, 'daily')
   logger.formatter = ShogiServer::Formatter.new
   logger.level = $DEBUG ? Logger::DEBUG : Logger::INFO  
   logger.datetime_format = "%Y-%m-%d %H:%M:%S"
@@ -329,6 +337,7 @@ def main
   
   $options = parse_command_line
   check_command_line
+  $config = ShogiServer::Config.new $options
 
   $league = ShogiServer::League.new($topdir)