summaryrefslogtreecommitdiff
path: root/tests/meson.build
blob: 64ed99426bfe1884e30e00ea152642c03fb579b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
subdir('dummyatk')

xmlloader = static_library('xmlloader', [ 'atk-object-xml-loader.c' ],
                           dependencies: [ glib_dep, gobject_dep, libxml_dep, atk_dep, dummyatk_dep ],
                           include_directories: [ root_inc, include_directories('.') ])
xmlloader_dep = declare_dependency(link_with: xmlloader)

testutils = static_library('testutils', [ 'atk_test_util.c' ],
                           dependencies: [ glib_dep, atspi_dep ],
                           include_directories: [ root_inc, include_directories('.') ],
                           c_args: ['-DTESTS_BUILD_DIR="@0@"'.format(meson.current_build_dir()) ] )
testutils_dep = declare_dependency(link_with: testutils)

# tests:
#  - name
#  - sources
#  - dependencies
tests = [
  [
    'atk-test', [
      'atk_suite.c',
      'atk_test_accessible.c',
      'atk_test_action.c',
      'atk_test_component.c',
      'atk_test_collection.c',
      'atk_test_document.c',
      'atk_test_editable_text.c',
      'atk_test_hyperlink.c',
      'atk_test_hypertext.c',
      'atk_test_image.c',
      'atk_test_selection.c',
      'atk_test_state_set.c',
      'atk_test_table.c',
      'atk_test_table_cell.c',
      'atk_test_text.c',
      'atk_test_value.c',
    ],
    [
      glib_dep,
      atspi_dep,
      xmlloader_dep,
      testutils_dep,
      dummyatk_dep,
    ]
  ],

  [
    'app-test',
    [
      'test-application.c',
    ],
    [
      glib_dep,
      atk_dep,
      xmlloader_dep,
      testutils_dep,
      dummyatk_dep,
      libatk_bridge_dep,
    ]
  ],
]

foreach t: tests
  test_name = t[0]
  test_sources = t[1]
  test_deps = t[2]

  test_bin = executable(test_name, test_sources,
                        dependencies: test_deps,
                        include_directories: root_inc,
                        c_args: [
                          '-DTESTS_BUILD_DIR="@0@"'.format(meson.current_build_dir()),
                          '-DTESTS_SRC_DIR="@0@"'.format(meson.current_source_dir()),
                          '-DTESTS_DATA_DIR="@0@"'.format(join_paths(meson.current_source_dir(), 'data')),
                        ])

  if test_name == 'atk-test'
    atk_test_bin = test_bin
  endif
endforeach

test('atk-test', atk_test_bin, timeout: 120)