Make unit tests on native possible

This commit is contained in:
Djuri 2023-11-28 02:05:04 +01:00
parent 98c036f9e3
commit f05b848030
6 changed files with 69 additions and 42 deletions

View file

@ -9,7 +9,7 @@ void tearDown(void) {
// clean stuff up here
}
void test_sats_per_dollar(void) {
void test_CorrectSatsPerDollarConversion(void) {
std::array<std::string, NUM_SCREENS> output = parseSatsPerCurrency(37253, '$');
TEST_ASSERT_EQUAL_STRING("MSCW/TIME", output[0].c_str());
TEST_ASSERT_EQUAL_STRING("2", output[NUM_SCREENS-4].c_str());
@ -19,42 +19,50 @@ void test_sats_per_dollar(void) {
}
void test_block_height_6screens(void) {
void test_SixCharacterBlockHeight(void) {
std::array<std::string, NUM_SCREENS> output = parseBlockHeight(999999);
TEST_ASSERT_EQUAL_STRING("BLOCK/HEIGHT", output[0].c_str());
TEST_ASSERT_EQUAL_STRING("9", output[1].c_str());
}
void test_block_height_7screens(void) {
void test_SevenCharacterBlockHeight(void) {
std::array<std::string, NUM_SCREENS> output = parseBlockHeight(1000000);
TEST_ASSERT_EQUAL_STRING("1", output[0].c_str());
TEST_ASSERT_EQUAL_STRING("0", output[1].c_str());
}
void test_ticker_6screens(void) {
void test_PriceOf100kusd(void) {
std::array<std::string, NUM_SCREENS> output = parsePriceData(100000, '$');
TEST_ASSERT_EQUAL_STRING("$", output[0].c_str());
TEST_ASSERT_EQUAL_STRING("1", output[1].c_str());
}
void test_ticker_7screens(void) {
void test_PriceOf1MillionUsd(void) {
std::array<std::string, NUM_SCREENS> output = parsePriceData(1000000, '$');
TEST_ASSERT_EQUAL_STRING("1", output[0].c_str());
TEST_ASSERT_EQUAL_STRING("0", output[1].c_str());
TEST_ASSERT_EQUAL_STRING("BTC/USD", output[0].c_str());
for (int i = 1; i <= NUM_SCREENS-3; i++) {
TEST_ASSERT_EQUAL_STRING(" ", output[i].c_str());
}
TEST_ASSERT_EQUAL_STRING("1", output[NUM_SCREENS-2].c_str());
TEST_ASSERT_EQUAL_STRING("M", output[NUM_SCREENS-1].c_str());
}
// not needed when using generate_test_runner.rb
int runUnityTests(void) {
UNITY_BEGIN();
RUN_TEST(test_sats_per_dollar);
RUN_TEST(test_block_height_6screens);
RUN_TEST(test_block_height_7screens);
RUN_TEST(test_ticker_6screens);
RUN_TEST(test_ticker_7screens);
RUN_TEST(test_CorrectSatsPerDollarConversion);
RUN_TEST(test_SixCharacterBlockHeight);
RUN_TEST(test_SevenCharacterBlockHeight);
RUN_TEST(test_PriceOf100kusd);
RUN_TEST(test_PriceOf1MillionUsd);
return UNITY_END();
}
int main(void) {
return runUnityTests();
}
extern "C" void app_main() {
runUnityTests();
}