changeset 49:c3634084508d

*** empty log message ***
author gongo
date Mon, 25 Aug 2008 17:38:57 +0900
parents 8d73102deff6
children 571a48fae227
files test/packet/redit-test-packet-recv.el test/packet/redit-test-packet-send.pl
diffstat 2 files changed, 18 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/test/packet/redit-test-packet-recv.el	Sat Aug 23 18:11:26 2008 +0900
+++ b/test/packet/redit-test-packet-recv.el	Mon Aug 25 17:38:57 2008 +0900
@@ -12,10 +12,10 @@
 
 
 (defun redit-test-unpack-int-loop (pkt pos count)
-  (if (> count 1)
+  (if (> count 0)
       (+
-       (* (redit-test-unpack-int-loop pkt (- pos 1) (- count 1)) 256)
-       (string-to-char (substring pkt (- pos 1) pos)))
+       (* (string-to-char (substring pkt pos (1+ pos))) (expt 256 (1- count)))
+       (redit-test-unpack-int-loop pkt (1+ pos) (1- count)))
     0
     ))
 
@@ -31,24 +31,25 @@
   (substring pkt (* pos 4) (+ (* pos 4) length)))
 
 (defun rep-test-get-command-from-pkt (pkt)
+  (redit-test-unpack-int pkt 0))
+(defun rep-test-get-session-id-from-pkt (pkt)
   (redit-test-unpack-int pkt 1))
-(defun rep-test-get-session-id-from-pkt (pkt)
+(defun rep-test-get-editor-id-from-pkt (pkt)
   (redit-test-unpack-int pkt 2))
-(defun rep-test-get-editor-id-from-pkt (pkt)
-  (redit-test-unpack-int pkt 3))
 (defun rep-test-get-sequence-id-from-pkt (pkt)
+  (redit-test-unpack-int pkt 3))
+(defun rep-test-get-line-number-from-pkt (pkt)
   (redit-test-unpack-int pkt 4))
-(defun rep-test-get-line-number-from-pkt (pkt)
+(defun rep-test-get-text-size-from-pkt (pkt)
   (redit-test-unpack-int pkt 5))
-(defun rep-test-get-text-size-from-pkt (pkt)
-  (redit-test-unpack-int pkt 6))
 
 ;; text のサイズが指定されていればそれを使い、
 ;; そうでなければ、get-text-size-from-pkt を実行する
 (defun rep-test-get-text-from-pkt (pkt &optional _siz)
-  (let (size)
+  (let ((size) (text))
     (setq size (if (null _siz) (rep-test-get-text-size-from-pkt pkt) _siz))
-    (redit-test-unpack-str pkt 6 size)))
+    (setq text (substring pkt 24 (+ 24 size)))
+    (decode-coding-string text 'utf-8)))
 
 
 ;; process (send.pl) を起動する。
@@ -99,6 +100,9 @@
 	(setq seq (rep-test-get-sequence-id-from-pkt string))
 	(setq lno (rep-test-get-line-number-from-pkt string))
 	(setq siz (rep-test-get-text-size-from-pkt string))
+
+	(message (format "%d %d %d %d %d %d\n"
+			 cmd sid eid seq lno siz))
 	
 	;; ヘッダ(redit-test-command-header-size) + テキストサイズ
 	(setq cursize (+ redit-test-command-header-size siz))
@@ -110,8 +114,7 @@
 	(setq txt (rep-test-get-text-from-pkt string siz))
 	
 	(insert (format "%d %d %d %d %d %d %s\n"
-			cmd sid eid seq lno siz
-			(decode-coding-string txt 'utf-8)))
+			cmd sid eid seq lno siz txt))
 	(insert (format "残り %d byte\n" (- allsize cursize)))
 	
 	(setq allsize (- allsize cursize))
--- a/test/packet/redit-test-packet-send.pl	Sat Aug 23 18:11:26 2008 +0900
+++ b/test/packet/redit-test-packet-send.pl	Mon Aug 25 17:38:57 2008 +0900
@@ -7,7 +7,7 @@
 my $selector = new IO::Select(\*STDIN) or die "Cannot select stdin : $!\n";
 
 # パケット送信する回数
-my $send_count = 10000;
+my $send_count = 10;
 
 # パケット送信の間隔(秒)
 my $send_interval = 0;
@@ -20,7 +20,7 @@
 
 @strarr = ('あいうえお', 'abcdefg', 'ひゃしゃjさいsn', 'さんまんま',
 	   'gongo', '琉球大学', '宜野湾農工大学', 'ほいほい',
-	   '☆ふほほ');
+	   '☆ふほほ', 'あああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああああ');
 $strsiz = @strarr;
 
 # パケット送信のトリガー(?)的な意味なので