From 42bd3e2094b36cb4f9f7d98d74dd189ee86f7378 Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson <oscar.gustafsson@gmail.com> Date: Wed, 25 Jan 2023 17:22:17 +0100 Subject: [PATCH] Add first test for operation split --- b_asic/operation.py | 2 +- test/test_operation.py | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/b_asic/operation.py b/b_asic/operation.py index f26ff285..11cd476b 100644 --- a/b_asic/operation.py +++ b/b_asic/operation.py @@ -735,7 +735,7 @@ class AbstractOperation(Operation, AbstractGraphComponent): try: result = self.evaluate(*([Input()] * self.input_count)) - if isinstance(result, collections.Sequence) and all( + if isinstance(result, collections.abc.Sequence) and all( isinstance(e, Operation) for e in result ): return result diff --git a/test/test_operation.py b/test/test_operation.py index a92f07ce..fa120571 100644 --- a/test/test_operation.py +++ b/test/test_operation.py @@ -310,3 +310,12 @@ class TestIOCoordinates: i_c, o_c = bfly.get_io_coordinates() assert i_c == [[2, 0.25], [3, 0.75]] assert o_c == [[5, 0.25], [10, 0.75]] + + +class TestSplit: + def test_simple_case(self): + bfly = Butterfly() + split = bfly.split() + assert len(split) == 2 + assert sum(isinstance(op, Addition) for op in split) == 1 + assert sum(isinstance(op, Subtraction) for op in split) == 1 -- GitLab