Bugfix for suffix compact mode
All checks were successful
BTClock CI / build (push) Successful in 22m18s
BTClock CI / merge (map[name:btclock_rev_b version:esp32s3], 213epd) (push) Successful in 20s
BTClock CI / merge (map[name:btclock_v8 version:esp32s3], 213epd) (push) Successful in 30s
BTClock CI / merge (map[name:lolin_s3_mini version:esp32s3], 213epd) (push) Successful in 19s
BTClock CI / merge (map[name:lolin_s3_mini version:esp32s3], 29epd) (push) Successful in 27s
BTClock CI / release (push) Successful in 25s
All checks were successful
BTClock CI / build (push) Successful in 22m18s
BTClock CI / merge (map[name:btclock_rev_b version:esp32s3], 213epd) (push) Successful in 20s
BTClock CI / merge (map[name:btclock_v8 version:esp32s3], 213epd) (push) Successful in 30s
BTClock CI / merge (map[name:lolin_s3_mini version:esp32s3], 213epd) (push) Successful in 19s
BTClock CI / merge (map[name:lolin_s3_mini version:esp32s3], 29epd) (push) Successful in 27s
BTClock CI / release (push) Successful in 25s
This commit is contained in:
parent
981895d315
commit
41b5fcf1c1
3 changed files with 51 additions and 4 deletions
|
@ -90,10 +90,11 @@ std::array<std::string, NUM_SCREENS> parsePriceData(std::uint32_t price, char cu
|
||||||
firstIndex = 1;
|
firstIndex = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (shareDot)
|
size_t dotPosition = priceString.find('.');
|
||||||
|
|
||||||
|
if (shareDot && dotPosition != std::string::npos && dotPosition > 0)
|
||||||
{
|
{
|
||||||
std::vector<std::string> tempArray;
|
std::vector<std::string> tempArray;
|
||||||
size_t dotPosition = priceString.find('.');
|
|
||||||
if (dotPosition != std::string::npos && dotPosition > 0)
|
if (dotPosition != std::string::npos && dotPosition > 0)
|
||||||
{
|
{
|
||||||
for (size_t i = 0; i < priceString.length(); ++i)
|
for (size_t i = 0; i < priceString.length(); ++i)
|
||||||
|
@ -322,9 +323,9 @@ emscripten::val parseBlockHeightArray(std::uint32_t blockHeight)
|
||||||
return arrayToStringArray(parseBlockHeight(blockHeight));
|
return arrayToStringArray(parseBlockHeight(blockHeight));
|
||||||
}
|
}
|
||||||
|
|
||||||
emscripten::val parsePriceDataArray(std::uint32_t price, const std::string ¤cySymbol, bool useSuffixFormat = false)
|
emscripten::val parsePriceDataArray(std::uint32_t price, const std::string ¤cySymbol, bool useSuffixFormat = false, bool mowMode = false, bool shareDot = false)
|
||||||
{
|
{
|
||||||
return arrayToStringArray(parsePriceData(price, currencySymbol[0], useSuffixFormat));
|
return arrayToStringArray(parsePriceData(price, currencySymbol[0], useSuffixFormat, mowMode, shareDot));
|
||||||
}
|
}
|
||||||
|
|
||||||
emscripten::val parseHalvingCountdownArray(std::uint32_t blockHeight, bool asBlocks)
|
emscripten::val parseHalvingCountdownArray(std::uint32_t blockHeight, bool asBlocks)
|
||||||
|
|
20
maintainers.yaml
Normal file
20
maintainers.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
identifier: BTClock
|
||||||
|
maintainers:
|
||||||
|
- npub1k5f85zx0xdskyayqpfpc0zq6n7vwqjuuxugkayk72fgynp34cs3qfcvqg2
|
||||||
|
relays:
|
||||||
|
- wss://relay.noderunners.network/
|
||||||
|
- wss://nostr.sathoarder.com/
|
||||||
|
- wss://offchain.pub/
|
||||||
|
- wss://nostr3.daedaluslabs.io/
|
||||||
|
- wss://nostr4.daedaluslabs.io/
|
||||||
|
- wss://nostr.dbtc.link/
|
||||||
|
- wss://purplepag.es/
|
||||||
|
- wss://nos.lol/
|
||||||
|
- wss://nostr1.daedaluslabs.io/
|
||||||
|
- wss://nostr.noderunners.network/
|
||||||
|
- wss://nostr.lnbitcoin.cz/
|
||||||
|
- wss://relay.primal.net/
|
||||||
|
- wss://relay.damus.io
|
||||||
|
- wss://nostr-relay.derekross.me/
|
||||||
|
- wss://nostr2.azzamo.net/
|
||||||
|
- wss://nostr2.daedaluslabs.io/
|
|
@ -98,6 +98,30 @@ void test_PriceSuffixMode(void)
|
||||||
TEST_ASSERT_EQUAL_STRING("K", output[NUM_SCREENS - 1].c_str());
|
TEST_ASSERT_EQUAL_STRING("K", output[NUM_SCREENS - 1].c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void test_PriceSuffixModeCompact1(void)
|
||||||
|
{
|
||||||
|
std::array<std::string, NUM_SCREENS> output = parsePriceData(100000, '$', true, false, true);
|
||||||
|
TEST_ASSERT_EQUAL_STRING("BTC/USD", output[0].c_str());
|
||||||
|
|
||||||
|
TEST_ASSERT_EQUAL_STRING("$", output[NUM_SCREENS - 5].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("1", output[NUM_SCREENS - 4].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("0", output[NUM_SCREENS - 3].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("0", output[NUM_SCREENS - 2].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("K", output[NUM_SCREENS - 1].c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
void test_PriceSuffixModeCompact2(void)
|
||||||
|
{
|
||||||
|
std::array<std::string, NUM_SCREENS> output = parsePriceData(1000000, '$', true, false, true);
|
||||||
|
TEST_ASSERT_EQUAL_STRING("BTC/USD", output[0].c_str());
|
||||||
|
|
||||||
|
TEST_ASSERT_EQUAL_STRING("$", output[NUM_SCREENS - 5].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("1.", output[NUM_SCREENS - 4].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("0", output[NUM_SCREENS - 3].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("0", output[NUM_SCREENS - 2].c_str());
|
||||||
|
TEST_ASSERT_EQUAL_STRING("M", output[NUM_SCREENS - 1].c_str());
|
||||||
|
}
|
||||||
|
|
||||||
void test_PriceSuffixModeMow(void)
|
void test_PriceSuffixModeMow(void)
|
||||||
{
|
{
|
||||||
std::array<std::string, NUM_SCREENS> output = parsePriceData(93000, '$', true, true);
|
std::array<std::string, NUM_SCREENS> output = parsePriceData(93000, '$', true, true);
|
||||||
|
@ -246,6 +270,8 @@ int runUnityTests(void)
|
||||||
RUN_TEST(test_Mcap1TrillionJpy);
|
RUN_TEST(test_Mcap1TrillionJpy);
|
||||||
RUN_TEST(test_Mcap1TrillionJpySmallChars);
|
RUN_TEST(test_Mcap1TrillionJpySmallChars);
|
||||||
RUN_TEST(test_PriceSuffixMode);
|
RUN_TEST(test_PriceSuffixMode);
|
||||||
|
RUN_TEST(test_PriceSuffixModeCompact1);
|
||||||
|
RUN_TEST(test_PriceSuffixModeCompact2);
|
||||||
RUN_TEST(test_PriceSuffixModeMow);
|
RUN_TEST(test_PriceSuffixModeMow);
|
||||||
RUN_TEST(test_PriceSuffixModeMowCompact);
|
RUN_TEST(test_PriceSuffixModeMowCompact);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue