函数

GLibtest_create_case

版本:2.16 起

声明 [源代码]

GTestCase*
g_test_create_case (
  const char* test_name,
  gsize data_size,
  gconstpointer test_data,
  GTestFixtureFunc data_setup,
  GTestFixtureFunc data_test,
  GTestFixtureFunc data_teardown
)

描述 [源代码]

创建一个新的 GTestCase

API 级别相当低,最好调用 g_test_add()g_test_add_func()

执行此测试时,会自动分配一个大小为 data_size 的固定装置结构,并用零填充。然后调用 data_setup 来初始化固定装置。在固定装置设置完成后,将调用实际的测试函数 data_test。一旦测试运行完成,会通过调用 data_teardown 来取消固定装置结构,然后测试框架会自动释放内存。

将测试运行拆分为固定装置设置、测试函数和固定装置取消安装,在将同一种固定装置类型用于多项测试时特别有用。在这种情况下,将使用相同的固定装置类型(data_size 参数)调用 g_test_create_case(),而 test_namedata_test 参数会各不相同。

自版本 2.16 起可用

语言绑定无法直接使用此函数。

参数

test_name

类型: const char*

测试用例的 名称。

数据由函数调用者所有。
该值是一个以空字符结尾的 UTF-8 字符串。
data_size

类型: gsize

固定装置数据结构的 大小。

test_data

类型: gconstpointer

测试函数的测试 数据参数。

该参数可以为 NULL
数据由函数调用者所有。
data_setup

类型: GTestFixtureFunc

设置固定装置数据的 函数。

data_test

类型: GTestFixtureFunc

实际的测试 函数。

data_teardown

类型: GTestFixtureFunc

销毁固定装置数据的 函数。

返回值

类型: GTestCase

一个新分配的测试 用例。

数据由被调用的函数所有。