forked from mia/Aegisub
89 lines
1.9 KiB
Meson
89 lines
1.9 KiB
Meson
|
all_test_deps = []
|
||
|
all_test_dep_libs = []
|
||
|
all_test_sources = []
|
||
|
|
||
|
|
||
|
gtest_proj = subproject('gtest')
|
||
|
gtest_dep = gtest_proj.get_variable('gtest_dep')
|
||
|
gmock_dep = gtest_proj.get_variable('gmock_dep')
|
||
|
|
||
|
|
||
|
all_test_deps += [
|
||
|
gtest_dep,
|
||
|
gmock_dep,
|
||
|
iconv_dep,
|
||
|
boost_dep
|
||
|
]
|
||
|
all_test_dep_libs += [
|
||
|
libaegisub
|
||
|
]
|
||
|
all_test_sources += [
|
||
|
'support/main.cpp',
|
||
|
'support/util.cpp',
|
||
|
|
||
|
'tests/access.cpp',
|
||
|
'tests/audio.cpp',
|
||
|
'tests/cajun.cpp',
|
||
|
'tests/calltip_provider.cpp',
|
||
|
'tests/character_count.cpp',
|
||
|
'tests/color.cpp',
|
||
|
'tests/dialogue_lexer.cpp',
|
||
|
'tests/format.cpp',
|
||
|
'tests/fs.cpp',
|
||
|
'tests/hotkey.cpp',
|
||
|
'tests/iconv.cpp',
|
||
|
'tests/ifind.cpp',
|
||
|
'tests/karaoke_matcher.cpp',
|
||
|
'tests/keyframe.cpp',
|
||
|
'tests/line_iterator.cpp',
|
||
|
'tests/line_wrap.cpp',
|
||
|
'tests/mru.cpp',
|
||
|
'tests/option.cpp',
|
||
|
'tests/path.cpp',
|
||
|
'tests/signals.cpp',
|
||
|
'tests/split.cpp',
|
||
|
'tests/syntax_highlight.cpp',
|
||
|
'tests/thesaurus.cpp',
|
||
|
'tests/time.cpp',
|
||
|
'tests/type_name.cpp',
|
||
|
'tests/util.cpp',
|
||
|
'tests/uuencode.cpp',
|
||
|
'tests/vfr.cpp',
|
||
|
'tests/word_split.cpp'
|
||
|
]
|
||
|
|
||
|
test_inc = include_directories('support')
|
||
|
|
||
|
# force UTF8 for MSVC
|
||
|
if host_machine.system() == 'windows'
|
||
|
extra_args = ['/utf-8']
|
||
|
else
|
||
|
extra_args = []
|
||
|
endif
|
||
|
|
||
|
runner = executable(
|
||
|
'gtest-main',
|
||
|
all_test_sources,
|
||
|
include_directories : [test_inc, libaegisub_inc, deps_inc],
|
||
|
dependencies : all_test_deps,
|
||
|
cpp_args : extra_args,
|
||
|
link_with : all_test_dep_libs,
|
||
|
)
|
||
|
test('gtest main', runner)
|
||
|
|
||
|
|
||
|
# setup test env
|
||
|
if host_machine.system() == 'windows'
|
||
|
setup_sh = find_program('setup.bat')
|
||
|
else
|
||
|
setup_sh = find_program('setup.sh')
|
||
|
endif
|
||
|
|
||
|
test_data_des = meson.project_build_root()
|
||
|
custom_target('setup-test-data',
|
||
|
input: runner,
|
||
|
output: 'applied_test_setup',
|
||
|
command: [setup_sh, test_data_des],
|
||
|
build_by_default: true
|
||
|
)
|