|
|
#include "../../unity/unity.h" |
|
|
#include <stdlib.h> |
|
|
#include <string.h> |
|
|
#include <stdio.h> |
|
|
|
|
|
|
|
|
void setUp(void) { |
|
|
|
|
|
} |
|
|
void tearDown(void) { |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static void test_null_integer_zero_true(void) { |
|
|
VALUE *v = int_value(0); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_integer_one_false(void) { |
|
|
VALUE *v = int_value(1); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_integer_negative_false(void) { |
|
|
VALUE *v = str_value("-1"); |
|
|
TEST_ASSERT_TRUE(toarith(v)); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_integer_negative_zero_true(void) { |
|
|
VALUE *v = str_value("-0"); |
|
|
TEST_ASSERT_TRUE(toarith(v)); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_integer_large_nonzero_false(void) { |
|
|
VALUE *v = str_value("123456789012345678901234567890"); |
|
|
TEST_ASSERT_TRUE(toarith(v)); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
static void test_null_string_empty_true(void) { |
|
|
VALUE *v = str_value(""); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_zero_true(void) { |
|
|
VALUE *v = str_value("0"); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_many_zeros_true(void) { |
|
|
VALUE *v = str_value("000000"); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_minus_zeros_true(void) { |
|
|
VALUE *v = str_value("-00000"); |
|
|
TEST_ASSERT_TRUE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_single_minus_false(void) { |
|
|
VALUE *v = str_value("-"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_nonzero_digit_false(void) { |
|
|
VALUE *v = str_value("1"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_leading_zeros_then_nonzero_false(void) { |
|
|
VALUE *v = str_value("000100"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_minus_then_nonzero_false(void) { |
|
|
VALUE *v = str_value("-10"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_plus_zero_false(void) { |
|
|
VALUE *v = str_value("+0"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_space_zero_false(void) { |
|
|
VALUE *v = str_value(" 0"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
static void test_null_string_alpha_false(void) { |
|
|
VALUE *v = str_value("foo"); |
|
|
TEST_ASSERT_FALSE(null(v)); |
|
|
freev(v); |
|
|
} |
|
|
|
|
|
|
|
|
int main(void) { |
|
|
UNITY_BEGIN(); |
|
|
|
|
|
RUN_TEST(test_null_integer_zero_true); |
|
|
RUN_TEST(test_null_integer_one_false); |
|
|
RUN_TEST(test_null_integer_negative_false); |
|
|
RUN_TEST(test_null_integer_negative_zero_true); |
|
|
RUN_TEST(test_null_integer_large_nonzero_false); |
|
|
|
|
|
RUN_TEST(test_null_string_empty_true); |
|
|
RUN_TEST(test_null_string_zero_true); |
|
|
RUN_TEST(test_null_string_many_zeros_true); |
|
|
RUN_TEST(test_null_string_minus_zeros_true); |
|
|
RUN_TEST(test_null_string_single_minus_false); |
|
|
RUN_TEST(test_null_string_nonzero_digit_false); |
|
|
RUN_TEST(test_null_string_leading_zeros_then_nonzero_false); |
|
|
RUN_TEST(test_null_string_minus_then_nonzero_false); |
|
|
RUN_TEST(test_null_string_plus_zero_false); |
|
|
RUN_TEST(test_null_string_space_zero_false); |
|
|
RUN_TEST(test_null_string_alpha_false); |
|
|
|
|
|
return UNITY_END(); |
|
|
} |