annotate Assets/Application/Scripts/Test/BenchMarkTest.cs @ 13:e297afe0889d default tip

Add Prefab.
author Kazuma Takeda
date Tue, 07 Feb 2017 20:49:26 +0900
parents 599bd8ddb72b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
1 using UnityEngine;
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
2 using System.Collections;
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
3 using JungleDB;
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
4
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
5 public class BenchMarkTest : MonoBehaviour {
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
6
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
7 public static string key = "KEY";
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
8 public static string indexKey = "INDEXKEY";
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
9 // Use this for initialization
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
10 void Start () {
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
11 System.Diagnostics.Stopwatch sw = new System.Diagnostics.Stopwatch();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
12 sw.Start ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
13 Jungle jungle = new DefaultJungle(new NullJournal(), "hoge", new DefaultTreeEditor(new DefaultTraverser()));
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
14 jungle.createNewTree("TestTree");
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
15 JungleTree tree = jungle.getTreeByName("TestTree");
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
16 JungleTreeEditor editor = tree.getTreeEditor();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
17 editor = createTree(editor, 0, 3, new DefaultNodePath());
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
18 Either<Error, JungleTreeEditor> either = editor.commit();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
19 DebugCommon.Assert (either.isA (), "[Error]" + either.a());
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
20 sw.Stop ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
21 print ("[Time]" + sw.Elapsed);
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
22 }
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
23
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
24 public JungleTreeEditor createTree(JungleTreeEditor editor, int _curY, int _maxHeight, NodePath path) {
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
25
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
26 if (_curY == _maxHeight) {
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
27 return editor;
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
28 }
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
29 for (int i = 0; i < 3; i++) {
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
30 Either<Error, JungleTreeEditor> either = editor.addNewChildAt (path, _curY);
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
31 DebugCommon.Assert (either.isA (), "Error");
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
32 editor = either.b ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
33 string value = path.add (_curY).ToString ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
34 either = editor.putAttribute (path.add (_curY), key, System.Text.Encoding.ASCII.GetBytes (value));
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
35 DebugCommon.Assert (either.isA (), "Error");
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
36 editor = either.b ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
37 string value2 = value + "+ index";
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
38 either = editor.putAttribute (path.add (_curY), indexKey, System.Text.Encoding.ASCII.GetBytes (value2));
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
39 DebugCommon.Assert (either.isA (), "Error");
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
40 editor = either.b ();
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
41 editor = createTree (editor, _curY + 1, _maxHeight, path);
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
42 }
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
43 return editor;
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
44 }
599bd8ddb72b Create Item Tree and Create Stage.
Kazuma Takeda
parents:
diff changeset
45 }