OSDN Git Service

* [shogi-server] Ignore the last move of two sequential ones
[shogi-server/shogi-server.git] / test / TC_uchifuzume.rb
1 require "baseclient"
2 include Socket::Constants
3
4 class UchifuzumeTest < ReadFileClient
5   def test_uchifuzume
6     csa = File.open(filepath("uchifuzume.csa")) {|f| f.read}
7     handshake(csa)
8     result2 = cmd2 "-0064FU"
9     result1 = cmd  "%TORYO"
10     sleep 1
11     result1 = cmd ""
12     result2 = cmd2 ""
13     result1 += read_nonblock(@socket1)
14     result2 += read_nonblock(@socket2)
15     logout12
16     assert_match(/#ILLEGAL_MOVE.*#WIN/m, result1)
17     assert_match(/#ILLEGAL_MOVE.*#LOSE/m, result2)
18   end
19
20   def test_not_uchifuzume
21     csa = File.open(filepath("not_uchifuzume.csa")) {|f| f.read}
22     handshake(csa)
23     cmd2 "-0092FU"
24     cmd  "%TORYO"
25     sleep 1
26     result1 = cmd ""
27     result2 = cmd2 ""
28     result1 += read_nonblock(@socket1)
29     result2 += read_nonblock(@socket2)
30     logout12
31     assert_match(/#LOSE/m, result1)
32     assert_match(/#WIN/m, result2)
33   end
34 end # Client class
35