Grok 12.0.1
Classes | Namespaces | Macros | Functions
hwy_gtest.h File Reference
#include "hwy/base.h"
#include <stdint.h>
#include <string>
#include <tuple>
#include "gtest/gtest.h"
#include "hwy/highway.h"

Go to the source code of this file.

Classes

class  hwy::TestWithParamTarget
 
class  hwy::TestWithParamTargetAndT< T >
 

Namespaces

namespace  hwy
 

Macros

#define HWY_TEST_STANDALONE   0
 
#define HWY_GTEST_INSTANTIATE_TEST_SUITE_P   INSTANTIATE_TEST_CASE_P
 
#define HWY_TARGET_INSTANTIATE_TEST_SUITE_P(suite)
 
#define HWY_TARGET_INSTANTIATE_TEST_SUITE_P_T(suite, generator)
 
#define HWY_EXPORT_AND_TEST_P(suite, func_name)
 
#define HWY_EXPORT_AND_TEST_P_T(suite, func_name)
 
#define HWY_BEFORE_TEST(suite)
 
#define HWY_AFTER_TEST()   static_assert(true, "For requiring trailing semicolon")
 
#define HWY_TEST_MAIN()   static_assert(true, "For requiring trailing semicolon")
 

Functions

static std::string hwy::TestParamTargetName (const testing::TestParamInfo< int64_t > &info)
 
template<typename T >
std::string hwy::TestParamTargetNameAndT (const testing::TestParamInfo< std::tuple< int64_t, T > > &info)
 

Macro Definition Documentation

◆ HWY_AFTER_TEST

#define HWY_AFTER_TEST ( )    static_assert(true, "For requiring trailing semicolon")

◆ HWY_BEFORE_TEST

#define HWY_BEFORE_TEST ( suite)
Value:
class suite : public hwy::TestWithParamTarget {}; \
HWY_TARGET_INSTANTIATE_TEST_SUITE_P(suite); \
static_assert(true, "For requiring trailing semicolon")
Definition hwy_gtest.h:62

◆ HWY_EXPORT_AND_TEST_P

#define HWY_EXPORT_AND_TEST_P ( suite,
func_name )
Value:
HWY_EXPORT(func_name); \
TEST_P(suite, func_name) { HWY_DYNAMIC_DISPATCH(func_name)(); } \
static_assert(true, "For requiring trailing semicolon")
#define HWY_EXPORT(FUNC_NAME)
Definition highway.h:352
#define HWY_DYNAMIC_DISPATCH(FUNC_NAME)
Definition highway.h:355

◆ HWY_EXPORT_AND_TEST_P_T

#define HWY_EXPORT_AND_TEST_P_T ( suite,
func_name )
Value:
HWY_EXPORT(func_name); \
TEST_P(suite, func_name) { HWY_DYNAMIC_DISPATCH(func_name)(GetParam()); } \
static_assert(true, "For requiring trailing semicolon")

◆ HWY_GTEST_INSTANTIATE_TEST_SUITE_P

#define HWY_GTEST_INSTANTIATE_TEST_SUITE_P   INSTANTIATE_TEST_CASE_P

◆ HWY_TARGET_INSTANTIATE_TEST_SUITE_P

#define HWY_TARGET_INSTANTIATE_TEST_SUITE_P ( suite)
Value:
suite##Group, suite, \
testing::ValuesIn(::hwy::SupportedAndGeneratedTargets()), \
#define HWY_GTEST_INSTANTIATE_TEST_SUITE_P
Definition hwy_gtest.h:52
static std::string TestParamTargetName(const testing::TestParamInfo< int64_t > &info)
Definition hwy_gtest.h:81
HWY_INLINE std::vector< int64_t > SupportedAndGeneratedTargets()
Definition targets.h:73

◆ HWY_TARGET_INSTANTIATE_TEST_SUITE_P_T

#define HWY_TARGET_INSTANTIATE_TEST_SUITE_P_T ( suite,
generator )
Value:
suite##Group, suite, \
::testing::Combine( \
testing::ValuesIn(::hwy::SupportedAndGeneratedTargets()), \
generator), \
::hwy::TestParamTargetNameAndT<suite::HwyParamType>)

◆ HWY_TEST_MAIN

#define HWY_TEST_MAIN ( )    static_assert(true, "For requiring trailing semicolon")

◆ HWY_TEST_STANDALONE

#define HWY_TEST_STANDALONE   0