67 lines
2.1 KiB
Python
67 lines
2.1 KiB
Python
from electrum import SimpleConfig
|
|
from electrum.gui.qml.qeconfig import QEConfig
|
|
from tests.qt_util import QETestCase, qt_test
|
|
|
|
|
|
class TestConfig(QETestCase):
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
QEConfig(SimpleConfig())
|
|
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.q: QEConfig = QEConfig.instance
|
|
# raise Exception() # NOTE: exceptions in setUp() will block the test
|
|
|
|
@qt_test
|
|
def test_satstounits(self):
|
|
self.q.config.BTC_AMOUNTS_DECIMAL_POINT = 5
|
|
self.assertEqual(self.q.satsToUnits(100_000), 1.0)
|
|
self.assertEqual(self.q.satsToUnits(1), 0.00001)
|
|
self.assertEqual(self.q.satsToUnits(0.001), 0.00000001)
|
|
|
|
@qt_test
|
|
def test_unitstosats(self):
|
|
qa = self.q.unitsToSats('')
|
|
self.assertTrue(qa.isEmpty)
|
|
qa = self.q.unitsToSats('0')
|
|
self.assertTrue(qa.isEmpty)
|
|
qa = self.q.unitsToSats('0.000')
|
|
self.assertTrue(qa.isEmpty)
|
|
|
|
self.q.config.BTC_AMOUNTS_DECIMAL_POINT = 5
|
|
|
|
qa = self.q.unitsToSats('1')
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 100_000)
|
|
self.assertEqual(qa.msatsInt, 100_000_000)
|
|
|
|
qa = self.q.unitsToSats('1.001')
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 100_100)
|
|
self.assertEqual(qa.msatsInt, 100_100_000)
|
|
|
|
qa = self.q.unitsToSats('1.000001')
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 100_000)
|
|
self.assertEqual(qa.msatsInt, 100_000_100)
|
|
|
|
self.q.config.BTC_AMOUNTS_DECIMAL_POINT = 0
|
|
|
|
qa = self.q.unitsToSats('1.001')
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 1)
|
|
self.assertEqual(qa.msatsInt, 1001)
|
|
|
|
qa = self.q.unitsToSats('1.0001') # outside msat precision
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 1)
|
|
self.assertEqual(qa.msatsInt, 1000)
|
|
|
|
self.q.config.BTC_AMOUNTS_DECIMAL_POINT = 8
|
|
|
|
qa = self.q.unitsToSats('0.00000001001')
|
|
self.assertFalse(qa.isEmpty)
|
|
self.assertEqual(qa.satsInt, 1)
|
|
self.assertEqual(qa.msatsInt, 1001)
|