#include <gtest/gtest.h>
#include <test/unit/lang/utility.hpp>

TEST(lang_parser, abs_math_function_signatures) {
  test_parsable("function-signatures/math/functions/abs");
}

TEST(lang_parser, asin_math_function_signatures) {
  test_parsable("function-signatures/math/functions/asin");
}

TEST(lang_parser, asinh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/asinh");
}

TEST(lang_parser, acos_math_function_signatures) {
  test_parsable("function-signatures/math/functions/acos");
}

TEST(lang_parser, acosh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/acosh");
}
 
TEST(lang_parser, atan_math_function_signatures) {
  test_parsable("function-signatures/math/functions/atan");
}

TEST(lang_parser, atan2_math_function_signatures) {
  test_parsable("function-signatures/math/functions/atan2");
}
  
TEST(lang_parser, atanh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/atanh");
}  

TEST(lang_parser, bessel_first_kind_math_function_signatures) {
  test_parsable("function-signatures/math/functions/bessel_first_kind");
}

TEST(lang_parser, bessel_second_kind_math_function_signatures) {
  test_parsable("function-signatures/math/functions/bessel_second_kind");
}

TEST(lang_parser, binary_log_loss_math_function_signatures) {
  test_parsable("function-signatures/math/functions/binary_log_loss");
}

TEST(lang_parser, binomial_coefficient_log_math_function_signatures) {
  test_parsable("function-signatures/math/functions/binomial_coefficient_log");
}

TEST(lang_parser, cbrt_math_function_signatures) {
  test_parsable("function-signatures/math/functions/cbrt");
}

TEST(lang_parser, ceil_math_function_signatures) {
  test_parsable("function-signatures/math/functions/ceil");
}

TEST(lang_parser, constants_math_function_signatures) {
  test_parsable("function-signatures/math/functions/constants");
}

TEST(lang_parser, cos_math_function_signatures) {
  test_parsable("function-signatures/math/functions/cos");
}

TEST(lang_parser, cosh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/cosh");
}

TEST(lang_parser, digamma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/digamma");
}

TEST(lang_parser, erf_math_function_signatures) {
  test_parsable("function-signatures/math/functions/erf"); 
}

TEST(lang_parser, erfc_math_function_signatures) {
  test_parsable("function-signatures/math/functions/erfc"); 
}

TEST(lang_parser, exp_math_function_signatures) {
  test_parsable("function-signatures/math/functions/exp"); 
}

TEST(lang_parser, exp2_math_function_signatures) {
  test_parsable("function-signatures/math/functions/exp2"); 
}

TEST(lang_parser, expm1_math_function_signatures) {
  test_parsable("function-signatures/math/functions/expm1"); 
}

TEST(lang_parser, fabs_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fabs");
}

TEST(lang_parser, falling_factorial_math_function_signatures) {
  test_parsable("function-signatures/math/functions/falling_factorial");
}

TEST(lang_parser, fdim_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fdim");
}
 
TEST(lang_parser, floor_math_function_signatures) {
  test_parsable("function-signatures/math/functions/floor");
}

TEST(lang_parser, fma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fma");
}

TEST(lang_parser, fmax_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fmax");
}

TEST(lang_parser, fmin_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fmin");
}

TEST(lang_parser, fmod_math_function_signatures) {
  test_parsable("function-signatures/math/functions/fmod");
}

TEST(lang_parser, gamma_p_math_function_signatures) {
  test_parsable("function-signatures/math/functions/gamma_p");
}

TEST(lang_parser, gamma_q_math_function_signatures) {
  test_parsable("function-signatures/math/functions/gamma_q");
}

TEST(lang_parser, hypot_math_function_signatures) {
  test_parsable("function-signatures/math/functions/hypot");
}

TEST(lang_parser, if_else_math_function_signatures) {
  test_parsable("function-signatures/math/functions/if_else");
}

TEST(lang_parser, inc_beta_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inc_beta");
}

TEST(lang_parser, int_step_math_function_signatures) {
  test_parsable("function-signatures/math/functions/int_step");
}

TEST(lang_parser, inv_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inv");
}

TEST(lang_parser, inv_logit_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inv_logit");
}

TEST(lang_parser, inv_cloglog_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inv_cloglog");
}

TEST(lang_parser, inv_square_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inv_square");
}

TEST(lang_parser, inv_sqrt_math_function_signatures) {
  test_parsable("function-signatures/math/functions/inv_sqrt");
}

TEST(lang_parser, lbeta_math_function_signatures) {
  test_parsable("function-signatures/math/functions/lbeta");
}

TEST(lang_parser, lgamma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/lgamma");
}

TEST(lang_parser, lmgamma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/lmgamma");
}

TEST(lang_parser, log1m_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log1m");
}

TEST(lang_parser, log1m_exp_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log1m_exp");
}

TEST(lang_parser, log1m_inv_logit_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log1m_inv_logit");
}

TEST(lang_parser, log1p_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log1p");
}

TEST(lang_parser, log1p_exp_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log1p_exp");
}

TEST(lang_parser, log_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log");
}

TEST(lang_parser, log10_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log10");
}

TEST(lang_parser, log2_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log2");
}

TEST(lang_parser, log_diff_exp_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_diff_exp");
}

TEST(lang_parser, log_inv_logit_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_inv_logit");
}

TEST(lang_parser, logit_math_function_signatures) {
  test_parsable("function-signatures/math/functions/logit"); 
}

TEST(lang_parser, log_falling_factorial_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_falling_factorial");
}

TEST(lang_parser, log_mix_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_mix");
}

TEST(lang_parser, log_rising_factorial_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_rising_factorial");
}

TEST(lang_parser, log_sum_exp_math_function_signatures) {
  test_parsable("function-signatures/math/functions/log_sum_exp");
}

TEST(lang_parser, max_math_function_signatures) {
  test_parsable("function-signatures/math/functions/max");
}

TEST(lang_parser, min_math_function_signatures) {
  test_parsable("function-signatures/math/functions/min");
}

TEST(lang_parser, modified_bessel_first_kind_math_function_signatures) {
  test_parsable("function-signatures/math/functions/modified_bessel_first_kind");
}

TEST(lang_parser, modified_bessel_second_kind_math_function_signatures) {
  test_parsable("function-signatures/math/functions/modified_bessel_second_kind");
}

TEST(lang_parser, multiply_log_math_function_signatures) {
  test_parsable("function-signatures/math/functions/multiply_log");
}

TEST(lang_parser, operators_int_math_function_signatures) {
  test_parsable("function-signatures/math/functions/operators_int");
}

TEST(lang_parser, operators_real_math_function_signatures) {
  test_parsable("function-signatures/math/functions/operators_real");
}

TEST(lang_parser, owens_t_math_function_signatures) {
  test_parsable("function-signatures/math/functions/owens_t");
}

TEST(lang_parser, phi_math_function_signatures) {
  test_parsable("function-signatures/math/functions/phi");
}

TEST(lang_parser, phi_approx_math_function_signatures) {
  test_parsable("function-signatures/math/functions/phi_approx");
}

TEST(lang_parser, pow_math_function_signatures) {
  test_parsable("function-signatures/math/functions/pow");
}

TEST(lang_parser, sin_math_function_signatures) {
  test_parsable("function-signatures/math/functions/sin");
}

TEST(lang_parser, sinh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/sinh");
}

TEST(lang_parser, step_math_function_signatures) {
  test_parsable("function-signatures/math/functions/step");
}

TEST(lang_parser, special_values_math_function_signatures) {
  test_parsable("function-signatures/math/functions/special_values");
}

TEST(lang_parser, sqrt_math_function_signatures) {
  test_parsable("function-signatures/math/functions/sqrt");
}

TEST(lang_parser, square_math_function_signatures) {
  test_parsable("function-signatures/math/functions/square");
}

TEST(lang_parser, rising_factorial_math_function_signatures) {
  test_parsable("function-signatures/math/functions/rising_factorial");
}

TEST(lang_parser, round_math_function_signatures) {
  test_parsable("function-signatures/math/functions/round");
}

TEST(lang_parser, tan_math_function_signatures) {
  test_parsable("function-signatures/math/functions/tan");
}

TEST(lang_parser, tanh_math_function_signatures) {
  test_parsable("function-signatures/math/functions/tanh");
}

TEST(lang_parser, tgamma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/tgamma");
}

TEST(lang_parser, trigamma_math_function_signatures) {
  test_parsable("function-signatures/math/functions/trigamma");
}

TEST(lang_parser, trunc_math_function_signatures) {
  test_parsable("function-signatures/math/functions/trunc");
}
