master v1.1.1
Michał Sałaban 2 years ago
parent a385a6146e
commit 3f3a4cdc2a

@ -1,3 +1 @@
from . import address, account, const, daemon, wallet, numbers, wordlists, seed
__version__ = "1.1.1"

@ -23,9 +23,6 @@ class OfflineWallet(object):
self._svk = view_key or self._svk
self._ssk = spend_key or self._ssk
def height(self):
raise WalletIsOffline()
def spend_key(self):
return self._ssk
@ -38,37 +35,26 @@ class OfflineWallet(object):
def accounts(self):
return [Account(self, 0)]
def new_account(self, label=None):
raise WalletIsOffline()
def addresses(self, account=0, addr_indices=None):
if account == 0 and (addr_indices == [0] or addr_indices is None):
return [self._address]
raise WalletIsOffline() # pragma: no cover (this should never happen)
def new_address(self, account=0, label=None):
raise WalletIsOffline()
def balances(self, account=0):
raise WalletIsOffline()
def transfers_in(self, account, pmtfilter):
raise WalletIsOffline()
def transfers_out(self, account, pmtfilter):
raise WalletIsOffline()
def export_outputs(self):
raise WalletIsOffline()
def import_outputs(self, outputs_hex):
raise WalletIsOffline()
def export_key_images(self):
raise WalletIsOffline()
def import_key_images(self, key_images):
raise WalletIsOffline()
def transfer(self, *args, **kwargs):
raise WalletIsOffline()
def is_offline(self, *_, **__):
raise WalletIsOffline()
address_balance = (
balances
) = (
export_key_images
) = (
export_outputs
) = (
height
) = (
import_key_images
) = (
import_outputs
) = (
new_account
) = new_address = transfer = transfers_in = transfers_out = sweep_all = is_offline

@ -75,7 +75,6 @@ class ExtraParser(object):
raise ValueError(
"offset {:d}: extra nonce exceeds field size".format(self.offset)
)
return []
nonce = bytearray(extra[:noncelen])
if "nonces" in self.data:
self.data["nonces"].append(nonce)

@ -1,7 +0,0 @@
from . import test_address
from . import test_numbers
from . import test_seed
from . import test_transaction
from . import test_wallet
from . import test_offline
from . import test_jsonrpcwallet

@ -1,4 +1,3 @@
import pytest
import unittest
from monero import const
@ -132,8 +131,8 @@ class Tests(object):
self.assertRaises(ValueError, Address, self.addr_invalid)
self.assertRaises(ValueError, Address, self.iaddr_invalid)
a = Address(self.addr)
self.assertRaises(TypeError, a.with_payment_id, 2 ** 64 + 1)
self.assertRaises(TypeError, a.with_payment_id, "%x" % (2 ** 64 + 1))
self.assertRaises(TypeError, a.with_payment_id, 2**64 + 1)
self.assertRaises(TypeError, a.with_payment_id, "%x" % (2**64 + 1))
s = SubAddress(self.subaddr)
self.assertRaises(TypeError, s.with_payment_id, 0)
self.assertRaises(ValueError, address, "whatever")

@ -1,4 +1,3 @@
import pytest
import unittest
from monero.backends.offline import OfflineWallet, WalletIsOffline
@ -14,17 +13,19 @@ class OfflineTest(unittest.TestCase):
self.wallet = Wallet(OfflineWallet(self.addr, view_key=self.svk))
def test_offline_exception(self):
self.assertRaises(WalletIsOffline, self.wallet.height)
self.assertRaises(WalletIsOffline, self.wallet.new_account)
self.assertRaises(WalletIsOffline, self.wallet.new_address)
self.assertRaises(WalletIsOffline, self.wallet.export_outputs)
self.assertRaises(WalletIsOffline, self.wallet.import_outputs, "")
self.assertRaises(WalletIsOffline, self.wallet.address_balance)
self.assertRaises(WalletIsOffline, self.wallet.balance)
self.assertRaises(WalletIsOffline, self.wallet.balances)
self.assertRaises(WalletIsOffline, self.wallet.export_key_images)
self.assertRaises(WalletIsOffline, self.wallet.export_outputs)
self.assertRaises(WalletIsOffline, self.wallet.height)
self.assertRaises(WalletIsOffline, self.wallet.import_key_images, "")
self.assertRaises(WalletIsOffline, self.wallet.balances)
self.assertRaises(WalletIsOffline, self.wallet.balance)
self.assertRaises(WalletIsOffline, self.wallet.import_outputs, "")
self.assertRaises(WalletIsOffline, self.wallet.incoming)
self.assertRaises(WalletIsOffline, self.wallet.new_account)
self.assertRaises(WalletIsOffline, self.wallet.new_address)
self.assertRaises(WalletIsOffline, self.wallet.outgoing)
self.assertRaises(WalletIsOffline, self.wallet.sweep_all, "")
self.assertRaises(
WalletIsOffline, self.wallet.transfer, self.wallet.get_address(1, 0), 1
)
@ -71,8 +72,8 @@ class AddressTestCase(SubaddrTest, JSONTestCase):
def test_subaddress_out_of_range(self):
self.assertRaises(ValueError, self.wallet.get_address, 0, -1)
self.assertRaises(ValueError, self.wallet.get_address, -1, 0)
self.assertRaises(ValueError, self.wallet.get_address, 1, 2 ** 32)
self.assertRaises(ValueError, self.wallet.get_address, 2 ** 32, 1)
self.assertRaises(ValueError, self.wallet.get_address, 1, 2**32)
self.assertRaises(ValueError, self.wallet.get_address, 2**32, 1)
class TestnetAddressTestCase(SubaddrTest, JSONTestCase):

@ -1,10 +1,5 @@
from decimal import Decimal
import json
try:
from unittest.mock import patch, Mock
except ImportError:
from mock import patch, Mock
import responses
from monero.backends.jsonrpc import JSONRPCDaemon, JSONRPCWallet

@ -1,7 +1,5 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import unittest
from monero.address import Address
from monero.seed import Seed
from monero.wordlists import list_wordlists
@ -145,7 +143,7 @@ class SeedTestCase(unittest.TestCase):
def test_chinese_simplified(self):
seed = Seed(
u"遭 牲 本 点 司 司 仲 吉 虎 只 绝 生 指 纯 伟 破 夫 惊 群 楚 祥 旋 暗 骨 伟", "Chinese (simplified)"
"遭 牲 本 点 司 司 仲 吉 虎 只 绝 生 指 纯 伟 破 夫 惊 群 楚 祥 旋 暗 骨 伟", "Chinese (simplified)"
)
self.assertEqual(
seed.secret_spend_key(),
@ -170,7 +168,7 @@ class SeedTestCase(unittest.TestCase):
def test_dutch(self):
seed = Seed(
u"ralf tolvrij copier roon ossuarium wedstrijd splijt debbie bomtapijt occlusie oester noren hiaat scenario geshockt veeteler rotten symboliek jarig bock yoghurt plegen weert zeeblauw wedstrijd",
"ralf tolvrij copier roon ossuarium wedstrijd splijt debbie bomtapijt occlusie oester noren hiaat scenario geshockt veeteler rotten symboliek jarig bock yoghurt plegen weert zeeblauw wedstrijd",
"Dutch",
)
self.assertEqual(
@ -196,7 +194,7 @@ class SeedTestCase(unittest.TestCase):
def test_esperanto(self):
seed = Seed(
u"knedi aspekti boli asbesto pterido aparta muro sandalo hufumo porcelana degeli utopia ebono lifto dutaga hundo vejno ebono higieno nikotino orkestro arlekeno insekto jaguaro hundo",
"knedi aspekti boli asbesto pterido aparta muro sandalo hufumo porcelana degeli utopia ebono lifto dutaga hundo vejno ebono higieno nikotino orkestro arlekeno insekto jaguaro hundo",
"Esperanto",
)
self.assertEqual(
@ -222,7 +220,7 @@ class SeedTestCase(unittest.TestCase):
def test_french(self):
seed = Seed(
u"sauce exprimer chasse asile larve tacler digestion muguet rondeur sept clore narrer fluor arme torse dans glace tant salon sanguin globe quiche ficher flaque clore",
"sauce exprimer chasse asile larve tacler digestion muguet rondeur sept clore narrer fluor arme torse dans glace tant salon sanguin globe quiche ficher flaque clore",
"French",
)
self.assertEqual(
@ -248,7 +246,7 @@ class SeedTestCase(unittest.TestCase):
def test_german(self):
seed = Seed(
u"Erdgas Gesuch beeilen Chiffon Abendrot Alter Helium Salz Almweide Ampel Dichter Rotglut Dialekt Akkord Rampe Gesöff Ziege Boykott keuchen Krach Anbau Labor Esel Ferien Ampel",
"Erdgas Gesuch beeilen Chiffon Abendrot Alter Helium Salz Almweide Ampel Dichter Rotglut Dialekt Akkord Rampe Gesöff Ziege Boykott keuchen Krach Anbau Labor Esel Ferien Ampel",
"German",
)
self.assertEqual(
@ -274,7 +272,7 @@ class SeedTestCase(unittest.TestCase):
def test_italian(self):
seed = Seed(
u"tramonto spuntare ruota afrodite binocolo riferire moneta assalire tuta firmare malattia flagello paradiso tacere sindrome spuntare sogliola volare follia versare insulto diagnosi lapide meteo malattia",
"tramonto spuntare ruota afrodite binocolo riferire moneta assalire tuta firmare malattia flagello paradiso tacere sindrome spuntare sogliola volare follia versare insulto diagnosi lapide meteo malattia",
"Italian",
)
self.assertEqual(
@ -300,7 +298,7 @@ class SeedTestCase(unittest.TestCase):
def test_japanese(self):
seed = Seed(
u"いもり すあな いきる しちょう うったえる ちひょう けなみ たいちょう うぶごえ しかい しなぎれ いっせい つかれる しなん ばあさん たいまつばな しひょう おいかける あんがい ていへん せんもん きこく せんく そそぐ つかれる",
"いもり すあな いきる しちょう うったえる ちひょう けなみ たいちょう うぶごえ しかい しなぎれ いっせい つかれる しなん ばあさん たいまつばな しひょう おいかける あんがい ていへん せんもん きこく せんく そそぐ つかれる",
"Japanese",
)
self.assertFalse(seed.is_mymonero())
@ -327,7 +325,7 @@ class SeedTestCase(unittest.TestCase):
def test_portuguese(self):
seed = Seed(
u"rebuscar mefistofelico luto isca vulva ontologico autuar epiteto jarro invulneravel inquisitorial vietnamita voile potro mamute giroscopio scherzo cheroqui gueto loquaz fissurar fazer violoncelo viquingue vulva",
"rebuscar mefistofelico luto isca vulva ontologico autuar epiteto jarro invulneravel inquisitorial vietnamita voile potro mamute giroscopio scherzo cheroqui gueto loquaz fissurar fazer violoncelo viquingue vulva",
"Portuguese",
)
self.assertFalse(seed.is_mymonero())
@ -354,7 +352,7 @@ class SeedTestCase(unittest.TestCase):
def test_russian(self):
seed = Seed(
u"дощатый ателье мыло паек азот ружье домашний уныние уплата торговля шкаф кекс газета тревога улица армия лазерный иголка друг хищник пашня дневник кричать лыжный иголка",
"дощатый ателье мыло паек азот ружье домашний уныние уплата торговля шкаф кекс газета тревога улица армия лазерный иголка друг хищник пашня дневник кричать лыжный иголка",
"Russian",
)
self.assertEqual(
@ -380,7 +378,7 @@ class SeedTestCase(unittest.TestCase):
def test_spanish(self):
seed = Seed(
u"riesgo lápiz martes fuerza dinero pupila pago mensaje guion libro órgano juntar imperio puñal historia pasión nación posible paso límite don afirmar receta reposo fuerza",
"riesgo lápiz martes fuerza dinero pupila pago mensaje guion libro órgano juntar imperio puñal historia pasión nación posible paso límite don afirmar receta reposo fuerza",
"Spanish",
)
self.assertFalse(seed.is_mymonero())

Loading…
Cancel
Save