Total Complexity | 3 |
Total Lines | 25 |
Duplicated Lines | 68 % |
Changes | 0 |
Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.
Common duplication problems, and corresponding solutions are:
1 | from contextvars import ContextVar |
||
2 | |||
3 | from curio import Kernel, run as _curio_run |
||
4 | |||
5 | from async_btree import run |
||
6 | |||
7 | |||
8 | View Code Duplication | def test_run_curio(): |
|
|
|||
9 | counter = ContextVar("counter", default=5) |
||
10 | |||
11 | async def reset_counter(): |
||
12 | if counter.get() == 5: |
||
13 | counter.set(0) |
||
14 | return 0 |
||
15 | return -1 |
||
16 | |||
17 | with Kernel() as kernel: |
||
18 | assert run(kernel, reset_counter) == 0 |
||
19 | assert run(kernel, reset_counter) == 0 |
||
20 | assert counter.get() == 5 |
||
21 | |||
22 | assert _curio_run(reset_counter) == 0 |
||
23 | assert _curio_run(reset_counter) == -1 |
||
24 | assert counter.get() == 0 |
||
25 |