2 '--- start of vbslib include ------------------------------------------------------
\r
3 Dim g_debug, g_vbslib_path, g_IncludeType, g_CommandPrompt, g_fs, g_sh
\r
4 If IsEmpty( g_fs ) Then
\r
5 '--- start of parameters for vbslib include -------------------------------
\r
7 g_vbslib_path = "vbslib\vbs_inc.vbs"
\r
10 '--- end of parameters for vbslib include ---------------------------------
\r
11 Dim g_f, g_include_path, i : Set g_fs = CreateObject( "Scripting.FileSystemObject" )
\r
12 If g_fs.FileExists("setting.vbs") Then Set g_f = g_fs.OpenTextFile( "setting.vbs" ): Execute g_f.ReadAll()
\r
13 If not IsEmpty( WScript.Arguments.Named.Item("IncludeType") ) Then g_IncludeType = WScript.Arguments.Named.Item("IncludeType")
\r
14 Set g_sh = WScript.CreateObject("WScript.Shell") : g_f = g_sh.CurrentDirectory
\r
15 g_sh.CurrentDirectory = g_fs.GetParentFolderName( WScript.ScriptFullName )
\r
16 For i = 10 To 1 Step -1 : If g_fs.FileExists(g_vbslib_path) Then Exit For
\r
17 g_vbslib_path = "..\" + g_vbslib_path : Next
\r
18 If g_fs.FileExists(g_vbslib_path) Then g_vbslib_path = g_fs.GetAbsolutePathName( g_vbslib_path )
\r
19 g_sh.CurrentDirectory = g_f
\r
20 If i=0 Then WScript.Echo "Not found " + g_fs.GetFileName( g_vbslib_path ) +vbCR+vbLF+ "Check g_vbslib_path in " + WScript.ScriptName + " or setting.vbs" : WScript.Quit 1
\r
21 Set g_f = g_fs.OpenTextFile( g_vbslib_path ): Execute g_f.ReadAll() : g_f = Empty
\r
22 If ResumePush Then On Error Resume Next
\r
24 ResumePop : On Error GoTo 0
\r
26 '--- end of vbslib include --------------------------------------------------------
\r
30 '********************************************************************************
\r
32 '********************************************************************************
\r
34 Dim desktop : desktop = g_sh.SpecialFolders("Desktop")
\r
36 set_workfolder desktop
\r
37 del desktop + "\_RepliCmp"
\r
39 Dim opt : Set opt = new RepliCmp_Option
\r
40 opt.m_EditorPath = Setting_getEditorPath()
\r
41 opt.m_DiffPath = Setting_getDiffPath()
\r
42 opt.m_bSilent = True
\r
44 Select Case WScript.Arguments.Named.Item("Test")
\r
45 Case "T_2Folders3Files" : T_2Folders3Files opt
\r
46 Case "T_2FoldersNoInMaster" : T_2FoldersNoInMaster opt
\r
47 Case "T_3Folders1or2Files" : T_3Folders1or2Files opt
\r
48 Case "T_3Folders4Files" : T_3Folders4Files opt
\r
49 Case "T_RepliCmpUpdate" : T_RepliCmpUpdate opt
\r
50 Case "T_NewPatch_New" : T_NewPatch_New opt
\r
51 Case "T_NewPatch_Both" : T_NewPatch_Both opt
\r
52 Case Else : T_NewPatch_Both opt '// for Debug
\r
60 '********************************************************************************
\r
61 ' <<< [T_2Folders3Files] >>>
\r
62 '********************************************************************************
\r
63 Sub T_2Folders3Files( Opt )
\r
65 Dim dbg1, dbg2, debug : debug = False
\r
66 If debug Then dbg1="//x " : dbg2=" /debug_main:1" Else dbg1="" : dbg2=""
\r
71 folders(0) = "data\folder0"
\r
72 folders(1) = "data\folder1"
\r
75 files(0) = "file2.txt" '// 1 file in master + 2 files in folders
\r
77 RepliCmp folders, files, Opt
\r
81 desktop = g_sh.SpecialFolders("Desktop")
\r
82 r = RunProg( "cscript.exe //nologo " + dbg1 + """" + desktop + "\_RepliCmp\Merge.vbs"""+_
\r
83 dbg2 + " /autokeys:1.7.6.7.8.y.8.y.7.4.7.9.-1.", "" )
\r
85 If not exist( desktop + "\_RepliCmp\New\file2.txt" ) Then Fail
\r
86 If not fc( desktop + "\_RepliCmp\New\file2.txt", "data\folder1\sub1\file2.txt" ) Then Fail
\r
91 '********************************************************************************
\r
92 ' <<< [T_2FoldersNoInMaster] >>>
\r
93 '********************************************************************************
\r
94 Sub T_2FoldersNoInMaster( Opt )
\r
97 folders(0) = "data\folder0"
\r
98 folders(1) = "data\folder1"
\r
101 files(0) = "fileErr.txt" '// no file in master
\r
104 If TryStart(e) Then On Error Resume Next
\r
105 RepliCmp folders, files, Opt
\r
106 If TryEnd Then On Error GoTo 0
\r
107 If e.num = 0 Then Fail
\r
114 '********************************************************************************
\r
115 ' <<< [T_3Folders1or2Files] >>>
\r
116 '********************************************************************************
\r
117 Sub T_3Folders1or2Files( Opt )
\r
119 Dim dbg1, dbg2, debug : debug = False
\r
120 If debug Then dbg1="//x " : dbg2=" /debug_main:1" Else dbg1="" : dbg2=""
\r
125 folders(0) = "data\folder0"
\r
126 folders(1) = "data\folder1"
\r
127 folders(2) = "data\folder2"
\r
130 files(0) = "file1.txt" '// 1 file in master + 1 file in folders
\r
131 files(1) = "file0.txt" '// no file in folders
\r
133 RepliCmp folders, files, Opt
\r
137 desktop = g_sh.SpecialFolders("Desktop")
\r
138 r = RunProg( "cscript.exe //nologo " + dbg1 + """" + desktop + "\_RepliCmp\Merge.vbs"""+_
\r
139 dbg2 + " /autokeys:1.7.6.7.8.y.8.y.7.4.7.9.-1.", "" )
\r
141 If not exist( desktop + "\_RepliCmp\New\file1.txt" ) Then Fail
\r
142 If not fc( desktop + "\_RepliCmp\New\file1.txt", "data\folder0\file1.txt" ) Then Fail
\r
150 '********************************************************************************
\r
151 ' <<< [T_3Folders4Files] >>>
\r
152 '********************************************************************************
\r
153 Sub T_3Folders4Files( Opt )
\r
155 Dim new_path, f2_path, f1M_path
\r
156 Dim dbg1, dbg2, debug : debug = False
\r
157 If debug Then dbg1="//x " : dbg2=" /debug_main:1" Else dbg1="" : dbg2=""
\r
162 folders(0) = "data\folder3\master"
\r
163 folders(1) = "data\folder1"
\r
164 folders(2) = "data\folder3"
\r
167 files(0) = "file3.txt" '// 1 file in master + 3 files in folders
\r
169 RepliCmp folders, files, Opt
\r
173 desktop = g_sh.SpecialFolders("Desktop")
\r
174 new_path = desktop + "\_RepliCmp\New\file3.txt"
\r
175 f2_path = desktop + "\_RepliCmp\Editing\file3(2).txt"
\r
176 f1M_path = desktop + "\_RepliCmp\Editing\file3(1)M.txt"
\r
178 r = RunProg( "cscript.exe //nologo " + dbg1 + """" + desktop + "\_RepliCmp\Merge.vbs"""+_
\r
179 dbg2 + " /autokeys:1.7.5.7.7.5.7.9.-1.", "" )
\r
181 If not exist( new_path ) Then Fail
\r
182 If not fc( new_path, "data\folder3\master\file3.txt" ) Then Fail
\r
183 If not exist( f2_path ) Then Fail
\r
184 If not exist( f1M_path ) Then Fail
\r
186 r = RunProg( "cscript.exe //nologo " + dbg1 + """" + desktop + "\_RepliCmp\Merge.vbs"""+_
\r
187 dbg2 + " /autokeys:1.8.y.8.y.8.y.9.-1. /autokeys_debug", "" )
\r
189 If exist( new_path ) Then Fail
\r
190 If exist( f2_path ) Then Fail
\r
191 If not exist( f1M_path ) Then Fail
\r
196 '********************************************************************************
\r
197 ' <<< [T_RepliCmpUpdate] >>>
\r
198 '********************************************************************************
\r
199 Sub T_RepliCmpUpdate( Opt )
\r
201 Dim dbg1, dbg2, debug : debug = False
\r
202 If debug Then dbg1="//x " : dbg2=" /debug_main:1" Else dbg1="" : dbg2=""
\r
206 '//=== Make data folder
\r
207 Set wf_= New WorkFolderStack
\r
209 del "data_upd_work"
\r
210 copy "data_upd\*", "data_upd_work"
\r
211 copy "data_upd_work\folder1\sub1\file2.txt", "data_upd_work\file112.txt"
\r
212 copy "data_upd_work\folder2\sub1\file2.txt", "data_upd_work\file212.txt"
\r
213 copy "data_upd_work\folder2\sub1\file2.txt", "data_upd_work\folder2\sub1\backup\file2 (1).txt"
\r
219 folders(0) = "data_upd_work\folder0"
\r
220 folders(1) = "data_upd_work\folder1"
\r
221 folders(2) = "data_upd_work\folder2"
\r
224 files(0) = "file2.txt" '// 1 file in master + 2 files in folders
\r
226 RepliCmp folders, files, Opt
\r
230 desktop = g_sh.SpecialFolders("Desktop")
\r
231 r = RunProg( "cscript.exe //nologo " + dbg1 + """" + desktop + "\_RepliCmp\Merge.vbs"""+_
\r
232 dbg2 + " /autokeys:1.7.4.7.7.y.9.-1", "" )
\r
235 If not fc( "data_upd_work\folder0\file2.txt", "data_upd_work\folder1\sub1\file2.txt" ) Then Fail
\r
236 If not fc( "data_upd_work\folder0\file2.txt", "data_upd_work\folder1\sub2\file2.txt" ) Then Fail
\r
237 If not fc( "data_upd_work\folder0\file2.txt", "data_upd_work\folder2\sub1\file2.txt" ) Then Fail
\r
238 If not fc( "data_upd_work\file112.txt", "data_upd_work\folder1\sub1\backup\file2 (1).txt" ) Then Fail
\r
239 If not fc( "data_upd_work\file212.txt", "data_upd_work\folder2\sub1\backup\file2 (2).txt" ) Then Fail
\r
242 '//=== Delete data folder
\r
243 Set wf_= New WorkFolderStack
\r
245 del "data_upd_work"
\r
250 '********************************************************************************
\r
251 ' <<< [T_NewPatch_New] >>>
\r
252 '********************************************************************************
\r
253 Sub T_NewPatch_New( Opt )
\r
255 Dim wf_ : Set wf_= New WorkFolderStack
\r
261 Set opt2 = new Merge_Option
\r
263 .m_EditorPath = Opt.m_EditorPath
\r
264 .m_DiffPath = Opt.m_DiffPath
\r
267 Dim patch_files : Set patch_files = new PatchFiles
\r
269 Set .m_MergeOption = opt2
\r
270 .m_OldFolderPath = "data\folder1"
\r
271 .m_PatchFolderPath = "data\folder2"
\r
272 .m_NewFolderPath = "data\folder0"
\r
275 patch_files.AddPatchFile "file4.txt"
\r
277 g_CUI.m_Auto_Keys = "1.7.9.-1."
\r
278 patch_files.RunMergePrompt
\r
280 If not exist( "New\file4.txt" ) Then Fail
\r
284 '********************************************************************************
\r
285 ' <<< [T_NewPatch_Both] >>>
\r
286 '********************************************************************************
\r
287 Sub T_NewPatch_Both( Opt )
\r
289 Dim wf_ : Set wf_= New WorkFolderStack
\r
295 Set opt2 = new Merge_Option
\r
297 .m_EditorPath = Opt.m_EditorPath
\r
298 .m_DiffPath = Opt.m_DiffPath
\r
301 Dim patch_files : Set patch_files = new PatchFiles
\r
303 Set .m_MergeOption = opt2
\r
304 .m_OldFolderPath = "data\folder1"
\r
305 .m_PatchFolderPath = "data\folder2"
\r
306 .m_NewFolderPath = "data\folder0"
\r
309 patch_files.AddPatchFile "file5.txt"
\r
311 g_CUI.m_Auto_Keys = "1.7.6.7.9.-1"
\r
312 patch_files.RunMergePrompt
\r
315 If not exist( "New\file5.txt" ) Then Fail
\r