81 lines
2.2 KiB
Ruby
81 lines
2.2 KiB
Ruby
|
|
require "selftest_utils"
|
|
|
|
class CMDTEST_import_directory < Cmdtest::Testcase
|
|
|
|
include SelftestUtils
|
|
|
|
#----------------------------------------
|
|
# import_directory
|
|
#----------------------------------------
|
|
|
|
def test_import_directory_ERROR
|
|
create_file "file1.dir/file1.txt", "This is file1.dir/file1.txt\n"
|
|
create_file "file2.dir/file2.txt", "This is file2.dir/file2.txt\n"
|
|
|
|
create_CMDTEST_foo [
|
|
"import_directory 'file1.dir', 'qwerty1.dir'",
|
|
"import_directory 'file2.dir', 'qwerty1.dir'",
|
|
]
|
|
|
|
cmd_cmdtest do
|
|
stdout_equal /CAUGHT EXCEPTION:/
|
|
stdout_equal /'import_directory' target argument already exist: 'qwerty1.dir'/
|
|
exit_nonzero
|
|
end
|
|
end
|
|
|
|
#----------------------------------------
|
|
|
|
def test_import_directory_DIFFERENT_DIRS
|
|
create_file "file1.dir/file1.txt", "This is file1.dir/file1.txt\n"
|
|
create_file "file2.dir/file2.txt", "This is file2.dir/file2.txt\n"
|
|
|
|
create_CMDTEST_foo [
|
|
"import_directory 'file1.dir', 'qwerty1.dir'",
|
|
"import_directory 'file2.dir', 'subdir/qwerty2.dir'",
|
|
"",
|
|
"cmd 'cat.rb qwerty1.dir/file1.txt subdir/qwerty2.dir/file2.txt' do",
|
|
" stdout_equal [",
|
|
" 'This is file1.dir/file1.txt',",
|
|
" 'This is file2.dir/file2.txt',",
|
|
" ]",
|
|
"end",
|
|
]
|
|
|
|
cmd_cmdtest do
|
|
stdout_equal [
|
|
"### cat.rb qwerty1.dir/file1.txt subdir/qwerty2.dir/file2.txt",
|
|
]
|
|
end
|
|
end
|
|
|
|
#----------------------------------------
|
|
|
|
def test_import_directory_AFTER_CHDIR
|
|
create_file "file1.dir/file1.txt", "This is file1.dir/file1.txt\n"
|
|
create_file "file2.dir/file2.txt", "This is file2.dir/file2.txt\n"
|
|
|
|
create_CMDTEST_foo [
|
|
"dir_mkdir('dir')",
|
|
"chdir('dir')",
|
|
"import_directory 'file1.dir', 'qwerty1.dir'",
|
|
"import_directory 'file2.dir', 'subdir/qwerty2.dir'",
|
|
"",
|
|
"cmd 'cat.rb qwerty1.dir/file1.txt subdir/qwerty2.dir/file2.txt' do",
|
|
" stdout_equal [",
|
|
" 'This is file1.dir/file1.txt',",
|
|
" 'This is file2.dir/file2.txt',",
|
|
" ]",
|
|
"end",
|
|
]
|
|
|
|
cmd_cmdtest do
|
|
stdout_equal [
|
|
"### cat.rb qwerty1.dir/file1.txt subdir/qwerty2.dir/file2.txt",
|
|
]
|
|
end
|
|
end
|
|
|
|
end
|