diff src/test/csharp/DefaultJungleTreeTest.cs @ 7:02b2ab7bffe6

fix
author Kazuma
date Tue, 27 Sep 2016 18:36:05 +0900
parents dec15de2c6ff
children
line wrap: on
line diff
--- a/src/test/csharp/DefaultJungleTreeTest.cs	Tue Jul 05 07:20:41 2016 +0900
+++ b/src/test/csharp/DefaultJungleTreeTest.cs	Tue Sep 27 18:36:05 2016 +0900
@@ -1,43 +1,49 @@
 using UnityEngine;
-using System.Collections;
 using System;
 //using System.Diagnostics;
 
-public class DefaultJungleTreeTest : MonoBehaviour { // apiの仕様的にこんな感じ
-
+public class DefaultJungleTreeTest : MonoBehaviour {
+	// apiの仕様的にこんな感じ
+	private readonly int COUNT = 500;
 	public Jungle instance() {
 		Jungle j = new DefaultJungle(null, "hoge", new DefaultTreeEditor(new DefaultTraverser()));  // hogeというtreeを作る
 		return j;
 	}
 
-	public static string key = "KEY";
-	public GameObject value;
+	public string key = "moumou";
+	private byte[] value = BitConverter.GetBytes(10);
 
-	void Start() {
-		Jungle j = instance ();
-		JungleTree tree = j.createNewTree ("tree"); // hogeの中にtreeという名前の木を作る
+	public void Insert () {
+		Jungle j = new DefaultJungle(null, "hoge", new DefaultTreeEditor(new DefaultTraverser()));
+		JungleTree t = j.createNewTree("tree");
 
-		JungleTreeEditor editor1 = tree.getTreeEditor (); // editor
+		JungleTreeEditor editor1 = t.getTreeEditor();
 
-		DefaultNodePath path = new DefaultNodePath ();
-		// NodePath path;
+		DefaultNodePath root = new DefaultNodePath();
+
+		float check_time = Time.realtimeSinceStartup;
 
-		Either<Error, JungleTreeEditor> either = editor1.putAttribute (path, key, value);
-		if (either.isA ()) { // 失敗した場合のコード
-			Debug.Log ("失敗しました。");
-		}
-		editor1 = either.b (); //成功した場合
-		editor1.success (); // 大本にあるTreeにここで変更を加える
+		for(int i = 0; i < COUNT; i++) { 
+			Either<Error, JungleTreeEditor> either = editor1.putAttribute(root, i.ToString(), value);
+			if (either.isA()) {
+				Debug.Log("失敗しました。");
+			}
+			editor1 = either.b ();
 
-		TreeNode node = tree.getRootNode ();
-		Debug.Log (node);
-		Debug.Log (node.getAttributes ().getKeys ());
-		GameObject v = node.getAttributes ().get (key);
-		Debug.Log (v);
-		
+			Either<Error, JungleTreeEditor> r = editor1.success();
+			if (!r.isA()) {
+				Debug.Log("失敗しました。");
+			}
+			r.b();
+		}
+		check_time = Time.realtimeSinceStartup - check_time;
+		print ("処理時間 : " + check_time);
+
+		TreeNode node = t.getRootNode();
+		for (int i = 0; i < COUNT; i++) {
+			byte[] v = node.getAttributes ().get (i.ToString());
+			print (BitConverter.ToInt32 (v, 0));
+		}
 	}
 
-	void Update() {
-
-	}
 }
\ No newline at end of file