Skip to content
Snippets Groups Projects
Commit 1fdef747 authored by unknown's avatar unknown
Browse files

Working on unit tests

parent 92ece80d
Branches
Tags
No related merge requests found
......@@ -4,9 +4,9 @@ from cutecoin.models.coin import Coin
issuer = "2E69197FAB029D8669EF85E82457A1587CA0ED9C"
number = "0"
base = "1"
power = "1"
number = 0
base = 3
power = 2
origin = "A-2"
......@@ -14,14 +14,21 @@ origin = "A-2"
def coin_id_regex():
return re.compile("^([A-Z\d]{40})-(\d+)-(\d)-(\d+)-((A|F|D)-\d+)$")
@pytest.mark.order1
class Test_Coin:
def test_coin_init(coin_id_regex):
def test_coin_init(self, coin_id_regex):
coin = Coin(issuer, number, base, power, origin)
assert coin_id_regex.match(coin.get_id()) is not None
def test_coin_from_id(coin_id_regex):
def test_coin_from_id(self, coin_id_regex):
coin_id = issuer + "-" + number + "-" + base + "-" + power + "-" + origin
coin = Coin.from_id(coin_id)
assert coin is not None
assert coin_id_regex.match(coin.get_id()) is not None
def test_coin_value(self):
coin = Coin(issuer, number, base, power, origin)
assert coin.value() == 300
\ No newline at end of file
......@@ -2,44 +2,99 @@ import pytest
from mock import Mock
import ucoinpy as ucoin
from cutecoin.models.community import Community
#TODO: Unit test for community
def test_community_create(monkeypatch):
from cutecoin.models.community import Node
@pytest.fixture
def mock_amendment_current_get():
mock_get = Mock(spec=ucoin.hdc.amendments.Current.__get__)
mock_get.return_value = {
"version": "1",
"currency": "beta_brousouf",
"number": "2",
"previousHash": "0F45DFDA214005250D4D2CBE4C7B91E60227B0E5",
"dividend": "100",
"coinMinimalPower": "0",
"votersRoot": "DC7A9229DFDABFB9769789B7BFAE08048BCB856F",
"votersCount": "2",
"votersChanges": [
"-C73882B64B7E72237A2F460CE9CAB76D19A8651E"
],
"membersRoot": "F92B6F81C85200250EE51783F5F9F6ACA57A9AFF",
"membersCount": "4",
"membersChanges": [
"+31A6302161AC8F5938969E85399EB3415C237F93"
],
"raw": "Version: 1\r\n...+31A6302161AC8F5938969E85399EB3415C237F93\r\n"
}
return mock_get
@pytest.fixture
def mock_amendments_members_get():
mock_get = Mock(spec=ucoin.hdc.amendments.Current.__get__)
mock_get.return_value = [{
"hash": "2E69197FAB029D8669EF85E82457A1587CA0ED9C",
"value": "2E69197FAB029D8669EF85E82457A1587CA0ED9C"
},
{
"hash": "3F69197FAB029D8669EF85E82457A1587CA0ED9C",
"value": "3F69197FAB029D8669EF85E82457A1587CA0ED9C"
}]
return mock_get
@pytest.fixture
def mock_amendments_voters_get():
mock_get = Mock(spec=ucoin.hdc.amendments.Current.__get__)
mock_get.return_value = [{
"hash": "2E69197FAB029D8669EF85E82457A1587CA0ED9C",
"value": "2E69197FAB029D8669EF85E82457A1587CA0ED9C"
},
{
"hash": "3F69197FAB029D8669EF85E82457A1587CA0ED9C",
"value": "3F69197FAB029D8669EF85E82457A1587CA0ED9C"
}]
return mock_get
class Test_Community():
def test_community_create(self, monkeypatch, mock_amendment_current_get):
pass
def test_community_dividend(monkeypatch):
def test_community_dividend(self, monkeypatch):
pass
def test_community_coin_minimal_power(monkeypatch):
def test_community_coin_minimal_power(self, monkeypatch):
pass
def test_community_amendment_id(monkeypatch):
def test_community_amendment_id(self, monkeypatch):
pass
def test_community_amendment_number(monkeypatch):
def test_community_amendment_number(self, monkeypatch):
pass
def test_community_person_quality(monkeypatch):
def test_community_person_quality(self, monkeypatch):
pass
def test_community_members_fingerprint(monkeypatch):
def test_community_members_fingerprint(self, monkeypatch):
pass
def test_community_voters_fingerprint(monkeypatch):
def test_community_voters_fingerprint(self, monkeypatch):
pass
def test_community_to_json():
def test_community_to_json(self):
pass
def test_community_from_json():
def test_community_from_json(self):
pass
......@@ -3,10 +3,11 @@ import ucoinpy as ucoin
from mock import Mock
from cutecoin.models.node import Node
def test_peers(monkeypatch):
mock_peers_get = Mock(spec=ucoin.ucg.peering.Peers.__get__)
mock_peers_get.return_value = [{"version": "1",
@pytest.fixture
def mock_peers_get():
mock_get = Mock(spec=ucoin.ucg.peering.Peers.__get__)
mock_get.return_value = [{
"version": "1",
"currency": "beta_brousouf",
"fingerprint": "A70B8E8E16F91909B6A06DFB7EEF1651D9CCF468",
"dns": "DNS_VALUE",
......@@ -15,7 +16,8 @@ def test_peers(monkeypatch):
"port": "3800",
"signature": "-----BEGIN PGP SIGNATURE----- ... -----END PGP SIGNATURE-----"
},
{"version": "1",
{
"version": "1",
"currency": "beta_brousouf",
"fingerprint": "A70B8E8E16F91909B6A06DFB7EEF1651D9CCF469",
"dns": "DNS_VALUE",
......@@ -24,17 +26,13 @@ def test_peers(monkeypatch):
"port": "3801",
"signature": "-----BEGIN PGP SIGNATURE----- ... -----END PGP SIGNATURE-----"
}]
monkeypatch.setattr(ucoin.ucg.peering.Peers, '__get__', mock_peers_get)
node = Node("192.168.100.12", 3800)
peers = node.peers()
assert peers[0]["ipv4"] == "192.168.100.10"
assert peers[1]["ipv4"] == "192.168.100.11"
return mock_get
def test_peering(monkeypatch):
mock_peering_get = Mock(spec=ucoin.ucg.peering.Peer.__get__)
mock_peering_get.return_value = {
@pytest.fixture
def mock_peer_get():
mock_get = Mock(spec=ucoin.ucg.peering.Peer.__get__)
mock_get.return_value = {
"version": "1",
"currency": "beta_brousouf",
"fingerprint": "A70B8E8E16F91909B6A06DFB7EEF1651D9CCF468",
......@@ -44,7 +42,21 @@ def test_peering(monkeypatch):
"port": "3800",
"signature": "-----BEGIN PGP SIGNATURE----- ... -----END PGP SIGNATURE-----"
}
monkeypatch.setattr(ucoin.ucg.peering.Peer, '__get__', mock_peering_get)
return mock_get
class Test_Node():
def test_peers(self, monkeypatch, mock_peers_get):
monkeypatch.setattr(ucoin.ucg.peering.Peers, '__get__', mock_peers_get)
node = Node("192.168.100.12", 3800)
peers = node.peers()
assert peers[0]["ipv4"] == "192.168.100.10"
assert peers[1]["ipv4"] == "192.168.100.11"
def test_peering(self, monkeypatch, mock_peer_get):
monkeypatch.setattr(ucoin.ucg.peering.Peer, '__get__', mock_peer_get)
node = Node("192.168.100.12", 3800)
peering = node.peering()
......@@ -52,6 +64,5 @@ def test_peering(monkeypatch):
assert peering["port"] == str(3800)
#TODO: Test node jsonify
def test_node_jsonify(monkeypatch):
def test_node_jsonify(self, monkeypatch):
pass
......@@ -5,10 +5,10 @@ from cutecoin.models.person import Person
from cutecoin.models.community import Community
#TODO: Lookup for person after community was tested
def test_person_lookup(monkeypatch):
pks_lookup_get = Mock(spec = ucoin.pks.Lookup.get)
pks_lookup_get.return_value = [
@pytest.fixture
def mock_lookup_get():
mock_get = Mock(spec = ucoin.pks.Lookup.__get__)
mock_get.return_value = [
{
"signature": "-----BEGIN PGP SIGNATURE----- ... -----END PGP SIGNATURE-----",
"key":
......@@ -31,11 +31,17 @@ def test_person_lookup(monkeypatch):
"raw":"-----BEGIN PGP PUBLIC KEY BLOCK----- ... -----END PGP PUBLIC KEY BLOCK-----\r\n"
}
}]
return mock_get
#TODO: Lookup for person after community was tested
class Test_Person():
def test_person_lookup(self, monkeypatch):
pass
def test_person_jsonify():
def test_person_jsonify(self):
pass
def test_person_from_json():
def test_person_from_json(self):
pass
import pytest
import ucoinpy as ucoin
from mock import Mock
from cutecoin.models.wallet import Wallet
from cutecoin.models.community import Community
@pytest.fixture
def mock_coins_list_get():
mock_get = Mock(spec=ucoin.hdc.coins.List.__get__)
mock_get.return_value = {
"owner": "86F7E437FAA5A7FCE15D1DDCB9EAEAEA377667B8",
"coins": [{
"issuer": "86F7E437FAA5A7FCE15D1DDCB9EAEAEA377667B8",
"ids": ["1-5-2-A-1", "2-4-1-A-1"]
},{
"issuer": "31A6302161AC8F5938969E85399EB3415C237F93",
"ids": ["10-1-2-F-14"]
}]
}
return mock_get
#TODO: Test wallet
def test_wallet_create():
pass
@pytest.fixture
def mock_community_request(request, mock_coins_list_get):
if request == ucoin.hdc.coins.List.get:
return mock_coins_list_get()
else:
return "Failed !"
@pytest.fixture
def mock_community(mock_community_request):
community = Mock(spec=Community)
instance = community.return_value
instance.network.request.return_value = mock_community_request
return community
def test_wallet_load():
class Test_Wallet:
def test_wallet_create(self, mock_community):
wallet = Wallet([], mock_community)
assert wallet is not None
def test_wallet_load(self):
pass
def test_wallet_value():
def test_wallet_value(self, mock_community):
wallet = Wallet([], mock_community)
assert wallet.value() == 640
pass
def test_wallet_refresh_coins():
def test_wallet_refresh_coins(self):
pass
def test_wallet_get_text():
def test_wallet_get_text(self):
pass
def test_wallet_jsonify():
def test_wallet_jsonify(self):
pass
'''
Created on 6 avr. 2014
@author: inso
'''
#TODO: Scenario de tests
'''
def pytest_generate_tests(metafunc):
idlist = []
argvalues = []
for scenario in metafunc.cls.scenarios:
idlist.append(scenario[0])
items = scenario[1].items()
argnames = [x[0] for x in items]
argvalues.append(([x[1] for x in items]))
metafunc.parametrize(argnames, argvalues, ids=idlist, scope="class")
'''
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment