unageanu-jiji 1.1.4 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +24 -1
- data/README +0 -0
- data/base/shared_lib/moving_average.rb +34 -33
- data/base/shared_lib/system/cross.rb +76 -0
- data/base/shared_lib/system/position_manager.rb +160 -0
- data/base/shared_lib/system/signal.rb +347 -0
- data/html/css/datatable.css +4 -4
- data/html/css/default.css +57 -5
- data/html/css/treeview.css +205 -0
- data/html/img/bin_closed.png +0 -0
- data/html/img/bin_empty.png +0 -0
- data/html/img/button_add_small.gif +0 -0
- data/html/img/button_add_small_gray.gif +0 -0
- data/html/img/button_add_small_over.gif +0 -0
- data/html/img/button_mkcol.gif +0 -0
- data/html/img/button_mkcol_gray.gif +0 -0
- data/html/img/button_mkcol_over.gif +0 -0
- data/html/img/button_remove_small.gif +0 -0
- data/html/img/button_remove_small_gray.gif +0 -0
- data/html/img/button_remove_small_over.gif +0 -0
- data/html/img/button_rename.gif +0 -0
- data/html/img/button_rename_gray.gif +0 -0
- data/html/img/button_rename_over.gif +0 -0
- data/html/img/control_play.png +0 -0
- data/html/img/control_play_blue.png +0 -0
- data/html/img/folder.png +0 -0
- data/html/img/folder_brick.png +0 -0
- data/html/img/folder_user.png +0 -0
- data/html/{js/codepress/images → img}/line-numbers.png +0 -0
- data/html/img/page_white_ruby.png +0 -0
- data/html/img/sidebar_agent_edit.png +0 -0
- data/html/img/sidebar_agent_edit_over.png +0 -0
- data/html/img/sidebar_agent_edit_s.png +0 -0
- data/html/img/yui/treeview-sprite.gif +0 -0
- data/html/index.html +34 -18
- data/html/js/agent-editor/agent-editor-page.js +324 -0
- data/html/js/agent-editor/agent-editor.js +363 -0
- data/html/js/agent-editor/agent-list-tree.js +251 -0
- data/html/js/agent-selector.js +23 -28
- data/html/js/app.js +63 -91
- data/html/js/bt-create-page.js +25 -19
- data/html/js/container-min.js +1 -1
- data/html/js/container.js +944 -0
- data/html/js/edit_area/autocompletion.js +11 -13
- data/html/js/edit_area/edit_area.css +79 -40
- data/html/js/edit_area/edit_area.js +255 -226
- data/html/js/edit_area/edit_area_compressor.php +4 -4
- data/html/js/edit_area/edit_area_full.gz +0 -0
- data/html/js/edit_area/edit_area_full.js +31 -31
- data/html/js/edit_area/edit_area_full_with_plugins.gz +0 -0
- data/html/js/edit_area/edit_area_full_with_plugins.js +31 -31
- data/html/js/edit_area/edit_area_functions.js +448 -341
- data/html/js/edit_area/edit_area_loader.js +409 -397
- data/html/js/edit_area/elements_functions.js +120 -123
- data/html/js/edit_area/highlight.js +305 -197
- data/html/js/edit_area/images/goto.png +0 -0
- data/html/js/edit_area/images/help.png +0 -0
- data/html/js/edit_area/images/redo.png +0 -0
- data/html/js/edit_area/images/save.png +0 -0
- data/html/js/edit_area/images/search.png +0 -0
- data/html/js/edit_area/images/undo.png +0 -0
- data/html/js/edit_area/images/word_wrap.gif +0 -0
- data/html/js/edit_area/keyboard.js +5 -5
- data/html/js/edit_area/langs/bg.js +73 -0
- data/html/js/edit_area/langs/cs.js +2 -0
- data/html/js/edit_area/langs/de.js +2 -0
- data/html/js/edit_area/langs/dk.js +2 -0
- data/html/js/edit_area/langs/en.js +2 -0
- data/html/js/edit_area/langs/eo.js +2 -0
- data/html/js/edit_area/langs/es.js +2 -0
- data/html/js/edit_area/langs/fi.js +67 -0
- data/html/js/edit_area/langs/fr.js +2 -0
- data/html/js/edit_area/langs/hr.js +2 -0
- data/html/js/edit_area/langs/it.js +2 -0
- data/html/js/edit_area/langs/ja.js +2 -0
- data/html/js/edit_area/langs/mk.js +2 -0
- data/html/js/edit_area/langs/nl.js +2 -0
- data/html/js/edit_area/langs/pl.js +2 -0
- data/html/js/edit_area/langs/pt.js +2 -0
- data/html/js/edit_area/langs/ru.js +2 -0
- data/html/js/edit_area/langs/sk.js +2 -0
- data/html/js/edit_area/langs/zh.js +67 -0
- data/html/js/edit_area/manage_area.js +362 -205
- data/html/js/edit_area/plugins/charmap/langs/bg.js +12 -0
- data/html/js/edit_area/plugins/charmap/langs/zh.js +6 -0
- data/html/js/edit_area/plugins/test/langs/bg.js +10 -0
- data/html/js/edit_area/plugins/test/langs/zh.js +4 -0
- data/html/js/edit_area/reg_syntax/java.js +56 -0
- data/html/js/edit_area/reg_syntax/ruby.js +9 -9
- data/html/js/edit_area/reg_syntax.js +15 -13
- data/html/js/edit_area/regexp.js +36 -32
- data/html/js/edit_area/resize_area.js +43 -47
- data/html/js/edit_area/search_replace.js +29 -29
- data/html/js/edit_area/template.html +6 -4
- data/html/js/json-broker-client.js +23 -17
- data/html/js/result-page.js +107 -57
- data/html/js/rt-setting-page.js +38 -15
- data/html/js/sidebar.js +41 -27
- data/html/js/templates.js +167 -32
- data/html/js/utils.js +143 -7
- data/html/js/yui/treeview.js +3671 -0
- data/html/swf/chart.swf +0 -0
- data/html/test/agent_editor_spec.js +815 -0
- data/html/test/index.html +40 -0
- data/html/test/jsspec/JSSpec.css +224 -0
- data/html/test/jsspec/JSSpec.js +1549 -0
- data/html/test/jsspec/diff_match_patch.js +1 -0
- data/html/test/utils_spec.js +111 -0
- data/lib/jiji/agent/agent.rb +69 -12
- data/lib/jiji/agent/agent_manager.rb +18 -12
- data/lib/jiji/agent/agent_registry.rb +35 -121
- data/lib/jiji/collector.rb +16 -6
- data/lib/jiji/command.rb +46 -5
- data/lib/jiji/dao/file_system_dao.rb +158 -0
- data/lib/jiji/dao/timed_data_dao.rb +2 -0
- data/lib/jiji/dao/trade_result_dao.rb +1 -1
- data/lib/jiji/error.rb +24 -8
- data/lib/jiji/migration/migrator1_2_0.rb +67 -0
- data/lib/jiji/models.rb +82 -24
- data/lib/jiji/operator.rb +55 -51
- data/lib/jiji/output.rb +85 -29
- data/lib/jiji/output_manager.rb +84 -0
- data/lib/jiji/plugin/embedded/single_click_client.rb +2 -2
- data/lib/jiji/plugin/securities_plugin.rb +0 -1
- data/lib/jiji/process.rb +229 -208
- data/lib/jiji/process_manager.rb +190 -96
- data/lib/jiji/registry.rb +87 -19
- data/lib/jiji/server.rb +1 -0
- data/lib/jiji/service/agent_service.rb +147 -48
- data/lib/jiji/service/output_service.rb +37 -17
- data/lib/jiji/service/process_service.rb +3 -5
- data/lib/jiji/service/trade_result_service.rb +4 -5
- data/lib/jiji/util/file_lock.rb +4 -4
- data/lib/jiji/util/include_proxy.rb +17 -0
- data/lib/jiji/util/json_broker.rb +6 -4
- data/lib/jiji/util/util.rb +1 -1
- data/swf/chart/fx/chart/Chart.as +7 -0
- data/swf/chart/fx/chart/ui/graph/GraphManager.as +15 -2
- data/test/ProcessTest/agents/foo.rb +10 -0
- data/test/ProcessTest/conf/configuration.yaml +3 -0
- data/test/agent/agent_tests.rb +10 -0
- data/test/agent/test_AgentManager.rb +28 -12
- data/test/agent/test_AgentRegistry.rb +194 -99
- data/test/agent/test_PeriodicallyAgent.rb +1 -2
- data/test/agent/test_Permitter.rb +1 -2
- data/test/all_tests.rb +7 -19
- data/test/dao/dao_tests.rb +9 -0
- data/test/dao/test_FileSystemDao.rb +431 -0
- data/test/dao/test_RateDao.rb +5 -7
- data/test/dao/test_TradeResultDao.rb +1 -2
- data/test/migration/migration_tests.rb +10 -0
- data/test/migration/migrator1_2_0test_data/basic/out/M2NlOTA2ODEtZDdlNi00NWU1LWIwNDQtMjBmODY2ZGNkNzBj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/basic/out/MDVhYzcxMjYtMGFlMS00Mzk0LWEyNmUtYjVjZjgwNDA0ZmE2/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/basic/out/MzA1YTk0NDgtNzhjNi00NDk3LTk2NTktYzE1ZjBhNzdiYjNj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/basic/out/YjRkOTI1MzEtZTM4MS00YjQwLTg1ZTQtMWFmZDRlNDUwMzBm/56e75YuV5bmz5Z2H57ea/meta.yaml +9 -0
- data/test/migration/migrator1_2_0test_data/basic/props.yaml +85 -0
- data/test/migration/migrator1_2_0test_data/illegal_props/out/M2NlOTA2ODEtZDdlNi00NWU1LWIwNDQtMjBmODY2ZGNkNzBj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/illegal_props/out/MDVhYzcxMjYtMGFlMS00Mzk0LWEyNmUtYjVjZjgwNDA0ZmE2/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/illegal_props/out/MzA1YTk0NDgtNzhjNi00NDk3LTk2NTktYzE1ZjBhNzdiYjNj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/illegal_props/out/YjRkOTI1MzEtZTM4MS00YjQwLTg1ZTQtMWFmZDRlNDUwMzBm/56e75YuV5bmz5Z2H57ea/meta.yaml +9 -0
- data/test/migration/migrator1_2_0test_data/illegal_props/props.yaml +1 -0
- data/test/migration/migrator1_2_0test_data/no_outs/props.yaml +85 -0
- data/test/migration/migrator1_2_0test_data/no_props/out/M2NlOTA2ODEtZDdlNi00NWU1LWIwNDQtMjBmODY2ZGNkNzBj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/no_props/out/MDVhYzcxMjYtMGFlMS00Mzk0LWEyNmUtYjVjZjgwNDA0ZmE2/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/no_props/out/MzA1YTk0NDgtNzhjNi00NDk3LTk2NTktYzE1ZjBhNzdiYjNj/56e75YuV5bmz5Z2H57ea/meta.yaml +8 -0
- data/test/migration/migrator1_2_0test_data/no_props/out/YjRkOTI1MzEtZTM4MS00YjQwLTg1ZTQtMWFmZDRlNDUwMzBm/56e75YuV5bmz5Z2H57ea/meta.yaml +9 -0
- data/test/migration/test_Migrator.rb +1 -1
- data/test/migration/test_Migrator1_0_3.rb +1 -1
- data/test/migration/test_Migrator1_1_0.rb +1 -1
- data/test/migration/test_Migrator1_2_0.rb +94 -0
- data/test/plugin/embedded/test_SingleClickClient.rb +1 -2
- data/test/plugin/plugin_tests.rb +8 -0
- data/test/plugin/test_Loader.rb +1 -1
- data/test/shared/rate.csv +144 -0
- data/test/shared/shared_tests.rb +9 -0
- data/test/shared/test_Cross.rb +144 -0
- data/test/shared/test_PositionManager.rb +285 -0
- data/test/shared/test_Signal.rb +65 -0
- data/test/test_Output.rb +28 -21
- data/test/test_OutputManager.rb +162 -0
- data/test/test_Output_registry.rb +6 -17
- data/test/test_Process.rb +434 -222
- data/test/test_ProcessManager.rb +458 -101
- data/test/test_utils.rb +71 -8
- data/test/util/test_BlockToSession.rb +1 -2
- data/test/util/test_CSV.rb +1 -2
- data/test/util/test_SynchronizeInterceptor.rb +1 -2
- data/test/util/util_tests.rb +9 -0
- metadata +127 -47
- data/html/js/agent-editor-page.js +0 -440
- data/html/js/codepress/codepress.css +0 -21
- data/html/js/codepress/codepress.html +0 -35
- data/html/js/codepress/codepress.js +0 -138
- data/html/js/codepress/engines/gecko.js +0 -293
- data/html/js/codepress/engines/khtml.js +0 -0
- data/html/js/codepress/engines/msie.js +0 -304
- data/html/js/codepress/engines/older.js +0 -0
- data/html/js/codepress/engines/opera.js +0 -260
- data/html/js/codepress/images/line-numbers.gif +0 -0
- data/html/js/codepress/index.html +0 -443
- data/html/js/codepress/languages/asp.css +0 -71
- data/html/js/codepress/languages/asp.js +0 -117
- data/html/js/codepress/languages/autoit.css +0 -13
- data/html/js/codepress/languages/autoit.js +0 -32
- data/html/js/codepress/languages/csharp.css +0 -9
- data/html/js/codepress/languages/csharp.js +0 -25
- data/html/js/codepress/languages/css.css +0 -10
- data/html/js/codepress/languages/css.js +0 -23
- data/html/js/codepress/languages/generic.css +0 -9
- data/html/js/codepress/languages/generic.js +0 -25
- data/html/js/codepress/languages/html.css +0 -13
- data/html/js/codepress/languages/html.js +0 -59
- data/html/js/codepress/languages/java.css +0 -7
- data/html/js/codepress/languages/java.js +0 -24
- data/html/js/codepress/languages/javascript.css +0 -8
- data/html/js/codepress/languages/javascript.js +0 -30
- data/html/js/codepress/languages/perl.css +0 -11
- data/html/js/codepress/languages/perl.js +0 -27
- data/html/js/codepress/languages/php.css +0 -12
- data/html/js/codepress/languages/php.js +0 -61
- data/html/js/codepress/languages/ruby.css +0 -10
- data/html/js/codepress/languages/ruby.js +0 -26
- data/html/js/codepress/languages/sql.css +0 -10
- data/html/js/codepress/languages/sql.js +0 -30
- data/html/js/codepress/languages/text.css +0 -5
- data/html/js/codepress/languages/text.js +0 -9
- data/html/js/codepress/languages/vbscript.css +0 -71
- data/html/js/codepress/languages/vbscript.js +0 -117
- data/html/js/codepress/languages/xsl.css +0 -15
- data/html/js/codepress/languages/xsl.js +0 -103
- data/html/js/codepress/license.txt +0 -458
- data/html/js/edit_area/images/Thumbs.db +0 -0
- data/test/plugin/test_gem/a/lib/jiji_plugin_test.rb +0 -6
@@ -0,0 +1,431 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
|
3
|
+
$: << "../lib"
|
4
|
+
|
5
|
+
require 'runit/testcase'
|
6
|
+
require 'runit/cui/testrunner'
|
7
|
+
require 'jiji/dao/file_system_dao'
|
8
|
+
require 'rubygems'
|
9
|
+
require 'test_utils'
|
10
|
+
|
11
|
+
#FileSystemDaoのテスト
|
12
|
+
class FileSystemDaoTest < RUNIT::TestCase
|
13
|
+
|
14
|
+
include Test::Constants
|
15
|
+
|
16
|
+
#前準備
|
17
|
+
def setup
|
18
|
+
@dir = File.dirname(__FILE__) + "/FileSystemDao.tmp"
|
19
|
+
FileUtils.mkdir_p @dir
|
20
|
+
|
21
|
+
@dao = JIJI::Dao::FileSystemDao.new( @dir )
|
22
|
+
|
23
|
+
@dao.mkcol "folder1"
|
24
|
+
@dao.add( "file1", "1" )
|
25
|
+
@dao.put( "file2", "2" )
|
26
|
+
@dao.add( "folder1/file1-1", "1-1" )
|
27
|
+
@dao.put( "folder1/file1-2", "1-2" )
|
28
|
+
end
|
29
|
+
|
30
|
+
#後始末
|
31
|
+
def teardown
|
32
|
+
FileUtils.rm_rf @dir
|
33
|
+
end
|
34
|
+
|
35
|
+
#基本動作のテスト
|
36
|
+
def test_basic
|
37
|
+
|
38
|
+
#フォルダとファイルを追加で作成
|
39
|
+
@dao.mkcol "folder2"
|
40
|
+
@dao.mkcol "folder2/folder2-1"
|
41
|
+
@dao.mkcol "folder2/folder2-2"
|
42
|
+
@dao.mkcol "folder2/folder2-1/folder2-1-1"
|
43
|
+
@dao.mkcol "folder2/folder2-1/folder2-1-2"
|
44
|
+
@dao.mkcol "folder2/folder2-2/folder2-2-1"
|
45
|
+
@dao.add( "folder2/folder2-1/folder2-1-1/file2-1-1", "2-1-1" )
|
46
|
+
@dao.put( "folder2/folder2-1/folder2-1-1/file2-1-2", "2-1-2" )
|
47
|
+
|
48
|
+
assert_equals( list, [
|
49
|
+
"folder1:directory",
|
50
|
+
"folder2:directory",
|
51
|
+
"file1:file",
|
52
|
+
"file2:file"
|
53
|
+
])
|
54
|
+
assert_equals( list("folder1"), [
|
55
|
+
"file1-1:file",
|
56
|
+
"file1-2:file"
|
57
|
+
])
|
58
|
+
assert_equals( list("folder2"), [
|
59
|
+
"folder2-1:directory",
|
60
|
+
"folder2-2:directory"
|
61
|
+
])
|
62
|
+
assert_equals( list("folder2/folder2-1"), [
|
63
|
+
"folder2-1-1:directory",
|
64
|
+
"folder2-1-2:directory"
|
65
|
+
])
|
66
|
+
assert_equals( list("folder2/folder2-2"), [
|
67
|
+
"folder2-2-1:directory"
|
68
|
+
])
|
69
|
+
assert_equals( list("folder2/folder2-1/folder2-1-1"), [
|
70
|
+
"file2-1-1:file",
|
71
|
+
"file2-1-2:file"
|
72
|
+
])
|
73
|
+
assert_equals( list("folder2/folder2-1/folder2-1-2"), [])
|
74
|
+
assert_equals( list("folder2/folder2-2/folder2-2-1"), [])
|
75
|
+
|
76
|
+
|
77
|
+
#再帰探索
|
78
|
+
assert_equals( list_r, [
|
79
|
+
"folder1:directory",
|
80
|
+
"folder2:directory",
|
81
|
+
"folder2/folder2-1:directory",
|
82
|
+
"folder2/folder2-1/folder2-1-1:directory",
|
83
|
+
"folder2/folder2-1/folder2-1-2:directory",
|
84
|
+
"folder2/folder2-2:directory",
|
85
|
+
"folder2/folder2-2/folder2-2-1:directory",
|
86
|
+
"file1:file",
|
87
|
+
"file2:file",
|
88
|
+
"folder1/file1-1:file",
|
89
|
+
"folder1/file1-2:file",
|
90
|
+
"folder2/folder2-1/folder2-1-1/file2-1-1:file",
|
91
|
+
"folder2/folder2-1/folder2-1-1/file2-1-2:file"
|
92
|
+
]);
|
93
|
+
assert_equals( list_r("folder1"), [
|
94
|
+
"folder1/file1-1:file",
|
95
|
+
"folder1/file1-2:file"
|
96
|
+
])
|
97
|
+
assert_equals( list_r("folder2"), [
|
98
|
+
"folder2/folder2-1:directory",
|
99
|
+
"folder2/folder2-1/folder2-1-1:directory",
|
100
|
+
"folder2/folder2-1/folder2-1-2:directory",
|
101
|
+
"folder2/folder2-2:directory",
|
102
|
+
"folder2/folder2-2/folder2-2-1:directory",
|
103
|
+
"folder2/folder2-1/folder2-1-1/file2-1-1:file",
|
104
|
+
"folder2/folder2-1/folder2-1-1/file2-1-2:file"
|
105
|
+
])
|
106
|
+
assert_equals( list_r("folder2/folder2-1"), [
|
107
|
+
"folder2/folder2-1/folder2-1-1:directory",
|
108
|
+
"folder2/folder2-1/folder2-1-2:directory",
|
109
|
+
"folder2/folder2-1/folder2-1-1/file2-1-1:file",
|
110
|
+
"folder2/folder2-1/folder2-1-1/file2-1-2:file"
|
111
|
+
])
|
112
|
+
assert_equals( list_r("folder2/folder2-2"), [
|
113
|
+
"folder2/folder2-2/folder2-2-1:directory"
|
114
|
+
])
|
115
|
+
assert_equals( list_r("folder2/folder2-1/folder2-1-1"), [
|
116
|
+
"folder2/folder2-1/folder2-1-1/file2-1-1:file",
|
117
|
+
"folder2/folder2-1/folder2-1-1/file2-1-2:file"
|
118
|
+
])
|
119
|
+
assert_equals( list_r("folder2/folder2-1/folder2-1-2"), [])
|
120
|
+
assert_equals( list_r("folder2/folder2-2/folder2-2-1"), [])
|
121
|
+
|
122
|
+
#取得
|
123
|
+
assert_equals( @dao.get("file1"), "1")
|
124
|
+
assert_equals( @dao.get("file2"), "2")
|
125
|
+
assert_equals( @dao.get("folder1/file1-1"), "1-1")
|
126
|
+
assert_equals( @dao.get("folder1/file1-2"), "1-2")
|
127
|
+
assert_equals( @dao.get("folder2/folder2-1/folder2-1-1/file2-1-1"), "2-1-1")
|
128
|
+
assert_equals( @dao.get("folder2/folder2-1/folder2-1-1/file2-1-2"), "2-1-2")
|
129
|
+
|
130
|
+
#更新
|
131
|
+
@dao.put( "file1", "100" )
|
132
|
+
assert_equals( @dao.get("file1"), "100")
|
133
|
+
|
134
|
+
#移動
|
135
|
+
@dao.rename("file1", "file3")
|
136
|
+
@dao.move("file2", "folder1")
|
137
|
+
@dao.rename("folder1/file2", "folder1/file4")
|
138
|
+
@dao.rename("folder1", "folder3")
|
139
|
+
@dao.move("folder2", "folder3")
|
140
|
+
assert_equals( list, [
|
141
|
+
"folder3:directory",
|
142
|
+
"file3:file"
|
143
|
+
])
|
144
|
+
assert_equals( list("folder3"), [
|
145
|
+
"folder2:directory",
|
146
|
+
"file1-1:file",
|
147
|
+
"file1-2:file",
|
148
|
+
"file4:file"
|
149
|
+
])
|
150
|
+
|
151
|
+
#コピー
|
152
|
+
@dao.copy("file3", "file1")
|
153
|
+
@dao.copy("folder3/file4", "file2")
|
154
|
+
@dao.copy("folder3", "folder1")
|
155
|
+
@dao.copy("folder3/folder2", "folder2")
|
156
|
+
assert_equals( list, [
|
157
|
+
"folder1:directory",
|
158
|
+
"folder2:directory",
|
159
|
+
"folder3:directory",
|
160
|
+
"file1:file",
|
161
|
+
"file2:file",
|
162
|
+
"file3:file"
|
163
|
+
])
|
164
|
+
assert_equals( list("folder3"), [
|
165
|
+
"folder2:directory",
|
166
|
+
"file1-1:file",
|
167
|
+
"file1-2:file",
|
168
|
+
"file4:file"
|
169
|
+
])
|
170
|
+
|
171
|
+
#削除
|
172
|
+
@dao.delete("file3")
|
173
|
+
@dao.delete("folder3")
|
174
|
+
@dao.delete("folder1/file1-2")
|
175
|
+
@dao.delete("folder1/folder2")
|
176
|
+
assert_equals( list, [
|
177
|
+
"folder1:directory",
|
178
|
+
"folder2:directory",
|
179
|
+
"file1:file",
|
180
|
+
"file2:file"
|
181
|
+
])
|
182
|
+
assert_equals( list("folder1"), [
|
183
|
+
"file1-1:file",
|
184
|
+
"file4:file"
|
185
|
+
])
|
186
|
+
|
187
|
+
end
|
188
|
+
|
189
|
+
ILLEGAL_PATHS = [
|
190
|
+
"./folder1",
|
191
|
+
"../folder1",
|
192
|
+
"folder1/../..",
|
193
|
+
"folder1/../../",
|
194
|
+
"folder1/.",
|
195
|
+
"folder1/.test",
|
196
|
+
"/ /",
|
197
|
+
"/日本語もエラー"
|
198
|
+
]
|
199
|
+
|
200
|
+
#一覧取得の異常系のテスト
|
201
|
+
def test_error_list
|
202
|
+
|
203
|
+
#一覧に"."で始まるファイル/フォルダは含まれない。
|
204
|
+
FileUtils.touch( "#{@dir}/.test" )
|
205
|
+
FileUtils.mkdir( "#{@dir}/.test_folder" )
|
206
|
+
assert_equals( list, [
|
207
|
+
"folder1:directory",
|
208
|
+
"file1:file",
|
209
|
+
"file2:file"
|
210
|
+
])
|
211
|
+
|
212
|
+
#パスが不正
|
213
|
+
ILLEGAL_PATHS.each {|path|
|
214
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
215
|
+
@dao.list( path )
|
216
|
+
}
|
217
|
+
}
|
218
|
+
|
219
|
+
#ディレクトリが存在しない
|
220
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
221
|
+
@dao.list( "not_found" )
|
222
|
+
}
|
223
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
224
|
+
@dao.list( "folder1/not_found" )
|
225
|
+
}
|
226
|
+
|
227
|
+
|
228
|
+
#ファイル
|
229
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_IS_NOT_FOLDER ) {
|
230
|
+
@dao.list( "file1" )
|
231
|
+
}
|
232
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_IS_NOT_FOLDER ) {
|
233
|
+
@dao.list( "folder1/file1-1" )
|
234
|
+
}
|
235
|
+
end
|
236
|
+
|
237
|
+
#ファイル取得の異常系のテスト
|
238
|
+
def test_error_get
|
239
|
+
#パスが不正
|
240
|
+
ILLEGAL_PATHS.each {|path|
|
241
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
242
|
+
@dao.get( path )
|
243
|
+
}
|
244
|
+
}
|
245
|
+
|
246
|
+
#ファイルが存在しない
|
247
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
248
|
+
@dao.get( "not_found" )
|
249
|
+
}
|
250
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
251
|
+
@dao.get( "folder1/not_found" )
|
252
|
+
}
|
253
|
+
|
254
|
+
#フォルダが指定された
|
255
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_IS_NOT_FILE ) {
|
256
|
+
@dao.get( "folder1" )
|
257
|
+
}
|
258
|
+
end
|
259
|
+
|
260
|
+
#ファイル更新の異常系のテスト
|
261
|
+
def test_error_put
|
262
|
+
#パスが不正
|
263
|
+
ILLEGAL_PATHS.each {|path|
|
264
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
265
|
+
@dao.put( path, "test." )
|
266
|
+
}
|
267
|
+
}
|
268
|
+
#親ディレクトリが存在しない
|
269
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
270
|
+
@dao.put( "not_found/test", "test." )
|
271
|
+
}
|
272
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
273
|
+
@dao.put( "folder1/not_found/test", "test." )
|
274
|
+
}
|
275
|
+
|
276
|
+
#親ディレクトリがファイル
|
277
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
278
|
+
@dao.put( "file1/test", "test." )
|
279
|
+
}
|
280
|
+
|
281
|
+
#フォルダがすでに存在する
|
282
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_IS_NOT_FILE ) {
|
283
|
+
@dao.put( "folder1", "test." )
|
284
|
+
}
|
285
|
+
end
|
286
|
+
|
287
|
+
#ファイル作成の異常系のテスト
|
288
|
+
def test_error_add
|
289
|
+
#パスが不正
|
290
|
+
ILLEGAL_PATHS.each {|path|
|
291
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
292
|
+
@dao.add( path, "test." )
|
293
|
+
}
|
294
|
+
}
|
295
|
+
#親ディレクトリが存在しない
|
296
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
297
|
+
@dao.add( "not_found/test", "test." )
|
298
|
+
}
|
299
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
300
|
+
@dao.add( "folder1/not_found/test", "test." )
|
301
|
+
}
|
302
|
+
|
303
|
+
#親ディレクトリがファイル
|
304
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
305
|
+
@dao.add( "file1/test", "test." )
|
306
|
+
}
|
307
|
+
|
308
|
+
#ファイルがすでに存在する
|
309
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ALREADY_EXIST ) {
|
310
|
+
@dao.add( "folder1", "test." )
|
311
|
+
}
|
312
|
+
#フォルダがすでに存在する
|
313
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ALREADY_EXIST ) {
|
314
|
+
@dao.add( "folder1", "test." )
|
315
|
+
}
|
316
|
+
end
|
317
|
+
|
318
|
+
#フォルダ作成の異常系のテスト
|
319
|
+
def test_error_mkcol
|
320
|
+
#パスが不正
|
321
|
+
ILLEGAL_PATHS.each {|path|
|
322
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
323
|
+
@dao.mkcol( path )
|
324
|
+
}
|
325
|
+
}
|
326
|
+
#親ディレクトリが存在しない
|
327
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
328
|
+
@dao.mkcol( "not_found/test" )
|
329
|
+
}
|
330
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
331
|
+
@dao.mkcol( "folder1/not_found/test" )
|
332
|
+
}
|
333
|
+
|
334
|
+
#親ディレクトリがファイル
|
335
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
336
|
+
@dao.mkcol( "file1/test" )
|
337
|
+
}
|
338
|
+
|
339
|
+
#フォルダがすでに存在する
|
340
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ALREADY_EXIST ) {
|
341
|
+
@dao.mkcol( "folder1" )
|
342
|
+
}
|
343
|
+
#ファイルがすでに存在する
|
344
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ALREADY_EXIST ) {
|
345
|
+
@dao.mkcol( "file1" )
|
346
|
+
}
|
347
|
+
end
|
348
|
+
|
349
|
+
#削除の異常系のテスト
|
350
|
+
def test_error_delete
|
351
|
+
#パスが不正
|
352
|
+
ILLEGAL_PATHS.each {|path|
|
353
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
354
|
+
@dao.delete( path )
|
355
|
+
}
|
356
|
+
}
|
357
|
+
#対象が存在しない
|
358
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
359
|
+
@dao.delete( "not_found" )
|
360
|
+
}
|
361
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
362
|
+
@dao.delete( "folder1/not_found" )
|
363
|
+
}
|
364
|
+
end
|
365
|
+
|
366
|
+
#コピーの異常系のテスト
|
367
|
+
def test_error_copy
|
368
|
+
#パスが不正
|
369
|
+
ILLEGAL_PATHS.each {|path|
|
370
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
371
|
+
@dao.copy( path, "test" )
|
372
|
+
}
|
373
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
374
|
+
@dao.copy( "file1", path )
|
375
|
+
}
|
376
|
+
}
|
377
|
+
#対象が存在しない
|
378
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
379
|
+
@dao.copy( "not_found", "folder1" )
|
380
|
+
}
|
381
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
382
|
+
@dao.copy( "folder1/not_found", "folder1" )
|
383
|
+
}
|
384
|
+
end
|
385
|
+
|
386
|
+
#移動の異常系のテスト
|
387
|
+
def test_error_move
|
388
|
+
#パスが不正
|
389
|
+
ILLEGAL_PATHS.each {|path|
|
390
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
391
|
+
@dao.move( path, "test" )
|
392
|
+
}
|
393
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_ILLEGAL_NAME ) {
|
394
|
+
@dao.move( "file1", path )
|
395
|
+
}
|
396
|
+
}
|
397
|
+
#対象が存在しない
|
398
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
399
|
+
@dao.move( "not_found", "folder1" )
|
400
|
+
}
|
401
|
+
assert_raise( JIJI::UserError, JIJI::ERROR_NOT_FOUND ) {
|
402
|
+
@dao.move( "folder1/not_found", "folder1" )
|
403
|
+
}
|
404
|
+
end
|
405
|
+
|
406
|
+
def list( path="" )
|
407
|
+
@dao.list(path).map {|item|
|
408
|
+
assert_not_nil item[:update]
|
409
|
+
assert_equals item[:path], path.empty? ? item[:name] : "#{path}/#{item[:name]}"
|
410
|
+
"#{item[:name]}:#{item[:type]}"
|
411
|
+
}
|
412
|
+
end
|
413
|
+
|
414
|
+
def list_r( path="" )
|
415
|
+
@dao.list(path, true).map {|item|
|
416
|
+
assert_not_nil item[:update]
|
417
|
+
assert_equals item[:name], File.basename(item[:path])
|
418
|
+
"#{item[:path]}:#{item[:type]}"
|
419
|
+
}
|
420
|
+
end
|
421
|
+
|
422
|
+
def assert_raise( type, code )
|
423
|
+
begin
|
424
|
+
yield
|
425
|
+
fail
|
426
|
+
rescue type
|
427
|
+
assert_equals $!.code, code
|
428
|
+
end
|
429
|
+
end
|
430
|
+
|
431
|
+
end
|
data/test/dao/test_RateDao.rb
CHANGED
@@ -1,14 +1,12 @@
|
|
1
1
|
#!/usr/bin/ruby
|
2
2
|
|
3
|
-
$: << "
|
4
|
-
$: << "../"
|
3
|
+
$: << "../lib"
|
5
4
|
|
6
5
|
require 'runit/testcase'
|
7
6
|
require 'runit/cui/testrunner'
|
8
7
|
require 'jiji/dao/rate_dao'
|
9
8
|
require 'fileutils'
|
10
9
|
require 'rubygems'
|
11
|
-
require 'clickclient'
|
12
10
|
require 'test_utils'
|
13
11
|
|
14
12
|
class RateDaoTest < RUNIT::TestCase
|
@@ -29,8 +27,8 @@ class RateDaoTest < RUNIT::TestCase
|
|
29
27
|
def test_basic
|
30
28
|
|
31
29
|
pair_infos = {
|
32
|
-
|
33
|
-
|
30
|
+
:USDJPY => Info.new( 10000 ),
|
31
|
+
:AUDUSD => Info.new( 10000 )
|
34
32
|
}
|
35
33
|
|
36
34
|
# 書き込み
|
@@ -504,8 +502,8 @@ class RateDaoTest < RUNIT::TestCase
|
|
504
502
|
def test_each_all_pair_rates__lack
|
505
503
|
|
506
504
|
pair_infos = {
|
507
|
-
|
508
|
-
|
505
|
+
:EURJPY => Info.new( 10000 ),
|
506
|
+
:AUDUSD => Info.new( 10000 )
|
509
507
|
}
|
510
508
|
|
511
509
|
# 最初のデータがない
|
@@ -0,0 +1,85 @@
|
|
1
|
+
---
|
2
|
+
trade_enable: true
|
3
|
+
agents:
|
4
|
+
- name: "\xE5\x90\x8D\xE7\xA7\xB0\xE6\x9C\xAA\xE8\xA8\xAD\xE5\xAE\x9A\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x881"
|
5
|
+
class_name: MovingAverageAgent
|
6
|
+
class: MovingAverageAgent@moving_average_agent.rb
|
7
|
+
id: b4d92531-e381-4b40-85e4-1afd4e45030f
|
8
|
+
file_name: moving_average_agent.rb
|
9
|
+
description: "\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE3\x82\x92\xE4\xBD\xBF\xE3\x81\x86\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x88\xE3\x81\xA7\xE3\x81\x99\xE3\x80\x82\n -\xE3\x82\xB4\xE3\x83\xBC\xE3\x83\xAB\xE3\x83\x87\xE3\x83\xB3\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE8\xB2\xB7\xE3\x81\x84&\xE5\xA3\xB2\xE3\x82\x8A\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n -\xE3\x83\x87\xE3\x83\x83\xE3\x83\x89\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE5\xA3\xB2\xE3\x82\x8A&\xE8\xB2\xB7\xE3\x81\x84\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n"
|
10
|
+
property_def:
|
11
|
+
period:
|
12
|
+
name: "\xE3\x83\xAC\xE3\x83\xBC\xE3\x83\x88\xE3\x81\xAE\xE9\x80\x9A\xE7\x9F\xA5\xE3\x82\x92\xE5\x8F\x97\xE3\x81\x91\xE5\x8F\x96\xE3\x82\x8B\xE9\x96\x93\xE9\x9A\x94(\xE5\x88\x86)"
|
13
|
+
default: 10
|
14
|
+
id: period
|
15
|
+
type: number
|
16
|
+
short:
|
17
|
+
name: "\xE7\x9F\xAD\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
18
|
+
default: 25
|
19
|
+
id: short
|
20
|
+
type: number
|
21
|
+
long:
|
22
|
+
name: "\xE9\x95\xB7\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
23
|
+
default: 75
|
24
|
+
id: long
|
25
|
+
type: number
|
26
|
+
state: ""
|
27
|
+
properties:
|
28
|
+
period: 10
|
29
|
+
short: 25
|
30
|
+
long: 75
|
31
|
+
- name: "\xE5\x90\x8D\xE7\xA7\xB0\xE6\x9C\xAA\xE8\xA8\xAD\xE5\xAE\x9A\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x882"
|
32
|
+
class_name: MovingAverageAgent
|
33
|
+
class: MovingAverageAgent@moving_average_agent.rb
|
34
|
+
id: 305a9448-78c6-4497-9659-c15f0a77bb3c
|
35
|
+
file_name: moving_average_agent.rb
|
36
|
+
description: "\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE3\x82\x92\xE4\xBD\xBF\xE3\x81\x86\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x88\xE3\x81\xA7\xE3\x81\x99\xE3\x80\x82\n -\xE3\x82\xB4\xE3\x83\xBC\xE3\x83\xAB\xE3\x83\x87\xE3\x83\xB3\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE8\xB2\xB7\xE3\x81\x84&\xE5\xA3\xB2\xE3\x82\x8A\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n -\xE3\x83\x87\xE3\x83\x83\xE3\x83\x89\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE5\xA3\xB2\xE3\x82\x8A&\xE8\xB2\xB7\xE3\x81\x84\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n"
|
37
|
+
property_def:
|
38
|
+
period:
|
39
|
+
name: "\xE3\x83\xAC\xE3\x83\xBC\xE3\x83\x88\xE3\x81\xAE\xE9\x80\x9A\xE7\x9F\xA5\xE3\x82\x92\xE5\x8F\x97\xE3\x81\x91\xE5\x8F\x96\xE3\x82\x8B\xE9\x96\x93\xE9\x9A\x94(\xE5\x88\x86)"
|
40
|
+
default: 10
|
41
|
+
id: period
|
42
|
+
type: number
|
43
|
+
short:
|
44
|
+
name: "\xE7\x9F\xAD\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
45
|
+
default: 25
|
46
|
+
id: short
|
47
|
+
type: number
|
48
|
+
long:
|
49
|
+
name: "\xE9\x95\xB7\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
50
|
+
default: 75
|
51
|
+
id: long
|
52
|
+
type: number
|
53
|
+
state: ""
|
54
|
+
properties:
|
55
|
+
period: 10
|
56
|
+
short: 25
|
57
|
+
long: 75
|
58
|
+
- name: "\xE5\x90\x8D\xE7\xA7\xB0\xE6\x9C\xAA\xE8\xA8\xAD\xE5\xAE\x9A\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x882"
|
59
|
+
class_name: MovingAverageAgent
|
60
|
+
class: MovingAverageAgent@moving_average_agent.rb
|
61
|
+
id: 405a9448-78c6-4497-9659-c15f0a77bb3c
|
62
|
+
file_name: moving_average_agent.rb
|
63
|
+
description: "\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE3\x82\x92\xE4\xBD\xBF\xE3\x81\x86\xE3\x82\xA8\xE3\x83\xBC\xE3\x82\xB8\xE3\x82\xA7\xE3\x83\xB3\xE3\x83\x88\xE3\x81\xA7\xE3\x81\x99\xE3\x80\x82\n -\xE3\x82\xB4\xE3\x83\xBC\xE3\x83\xAB\xE3\x83\x87\xE3\x83\xB3\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE8\xB2\xB7\xE3\x81\x84&\xE5\xA3\xB2\xE3\x82\x8A\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n -\xE3\x83\x87\xE3\x83\x83\xE3\x83\x89\xE3\x82\xAF\xE3\x83\xAD\xE3\x82\xB9\xE3\x81\xA7\xE5\xA3\xB2\xE3\x82\x8A&\xE8\xB2\xB7\xE3\x81\x84\xE5\xBB\xBA\xE3\x81\xA6\xE7\x8E\x89\xE3\x82\x92\xE3\x82\xB3\xE3\x83\x9F\xE3\x83\x83\xE3\x83\x88\xE3\x80\x82\n"
|
64
|
+
property_def:
|
65
|
+
period:
|
66
|
+
name: "\xE3\x83\xAC\xE3\x83\xBC\xE3\x83\x88\xE3\x81\xAE\xE9\x80\x9A\xE7\x9F\xA5\xE3\x82\x92\xE5\x8F\x97\xE3\x81\x91\xE5\x8F\x96\xE3\x82\x8B\xE9\x96\x93\xE9\x9A\x94(\xE5\x88\x86)"
|
67
|
+
default: 10
|
68
|
+
id: period
|
69
|
+
type: number
|
70
|
+
short:
|
71
|
+
name: "\xE7\x9F\xAD\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
72
|
+
default: 25
|
73
|
+
id: short
|
74
|
+
type: number
|
75
|
+
long:
|
76
|
+
name: "\xE9\x95\xB7\xE6\x9C\x9F\xE7\xA7\xBB\xE5\x8B\x95\xE5\xB9\xB3\xE5\x9D\x87\xE7\xB7\x9A"
|
77
|
+
default: 75
|
78
|
+
id: long
|
79
|
+
type: number
|
80
|
+
state: ""
|
81
|
+
properties:
|
82
|
+
period: 10
|
83
|
+
short: 25
|
84
|
+
long: 75
|
85
|
+
state: :RUNNING
|
@@ -0,0 +1 @@
|
|
1
|
+
illegal yaml file.
|