Skip to content
Snippets Groups Projects
Commit faf0f394 authored by Kevin Scott's avatar Kevin Scott
Browse files

Updated README, added package for test coverage and added some test files

parent b0bf7f04
No related branches found
No related tags found
3 merge requests!67WIP: B-ASIC version 1.0.0 hotfix,!65B-ASIC version 1.0.0,!15Add changes from sprint 1 and 2 to master
Pipeline #9821 passed
......@@ -94,6 +94,11 @@ pip install .
pytest
```
#### Test with coverage
```
pytest --cov=b_asic --cov-report html test
```
## Usage
How to build and use the library as a user.
......
......@@ -71,7 +71,8 @@ setuptools.setup(
"pybind11>=2.3.0",
"numpy",
"install_qt_binding",
"pytest==5.3.4"
"pytest==5.3.4",
"pytest-cov==2.8.1"
],
packages = ["b_asic"],
ext_modules = [CMakeExtension("b_asic")],
......
"""
B-ASIC test suite for Inputport
TODO: More info
"""
from b_asic import InputPort, Signal, SignalSource, SignalDestination, Addition
import pytest
@pytest.fixture
def signal():
source = SignalSource(Addition(0), 1)
dest = SignalDestination(Addition(1),2)
return Signal(source, dest)
def test_connect_multple_signals(signal):
"""
make sure we can only connect one signal to an input port
"""
inp_port = InputPort(0)
inp_port.connect(signal)
# create new signal
source = SignalSource(Addition(0), 3)
dest = SignalDestination(Addition(1),4)
new_signal = Signal(source, dest)
inp_port.connect(new_signal)
inp_port.signal_count() == 1
assert inp_port.signals() == [new_signal]
\ No newline at end of file
"""
B-ASIC test suite for InputPort
TODO: More info
"""
from b_asic import OutputPort, Signal, SignalSource, SignalDestination, Addition
import pytest
@pytest.fixture
def signal():
source = SignalSource(Addition(0), 1)
dest = SignalDestination(Addition(1),2)
return Signal(source, dest)
def test_connect_multiple_signals(signal):
"""
make sure we can connect multiple signals to an output port
"""
outp_port = OutputPort(0)
outp_port.connect(signal)
# create new signal
source = SignalSource(Addition(0), 3)
dest = SignalDestination(Addition(1),4)
new_signal = Signal(source, dest)
outp_port.connect(new_signal)
outp_port.signal_count() == 2
assert outp_port.signals() == [signal, new_signal]
\ No newline at end of file
import b_asic
"""
B-ASIC test suite for Port interface, place all general test cases for abstract class Port here
TODO: More info
"""
from b_asic import InputPort, OutputPort, Signal, SignalSource, SignalDestination, Addition
import pytest
@pytest.fixture
def outp_port():
return b_asic.InputPort(0)
def signal():
source = SignalSource(Addition(0), 1)
dest = SignalDestination(Addition(1),2)
return Signal(source, dest)
def test_connect_one_signal_to_port(signal):
port = InputPort(0)
port.connect(signal)
assert len(port.signals()) == 1
assert port.signal() == signal
def test_change_port_signal():
source = SignalSource(Addition(0), 1)
dest = SignalDestination(Addition(1),2)
signal1 = Signal(source, dest)
signal2 = Signal(source, dest)
def test_port(outp_port):
assert outp_port.signals() == []
\ No newline at end of file
port = InputPort(0)
port.connect(signal1)
assert port.signal() == signal1
port.connect(signal2)
assert port.signal() == signal2
\ No newline at end of file
from b_asic import Signal, SignalSource, SignalDestination
from b_asic.core_operations import Addition
import pytest
# TODO mock operation
# Use port index
@pytest.fixture
def operation():
return Addition(0)
@pytest.fixture
def signal_dest(operation):
return SignalDestination(operation, 0)
@pytest.fixture
def signal_src(operation):
return SignalSource(operation, 0)
def test_construct_source_signal(operation):
s = SignalSource(operation, 0)
assert True
def test_construct_signal():
s = Signal(signal_src, signal_dest)
assert True
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment