Replaces LICENSE (GPLv3 -> AGPLv3) and prepends `SPDX-License-Identifier: AGPL-3.0-or-later` to every source file across decnet/, decnet_web/, tests/, scripts/, and tools/. Rationale: closes the GPLv3 ASP loophole so any party operating a modified DECNET as a network service must offer their modified source. Personal copyright (Samuel Paschuan) + inbound=outbound contributions make a future unilateral relicense infeasible. - LICENSE: full AGPL-3.0 text (gnu.org/licenses/agpl-3.0.txt) - COPYRIGHT: project copyright notice - tools/add_spdx_headers.py: idempotent header injector (shebang- and PEP 263-aware) Touches 1565 source files (.py, .ts, .tsx, .js, .jsx, .css, .sh). No behavior change; comments only.
38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
import asyncio
|
|
import pytest
|
|
|
|
from decnet.web.db.factory import get_repository
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def event_loop():
|
|
loop = asyncio.new_event_loop()
|
|
yield loop
|
|
loop.close()
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def repo(tmp_path_factory, event_loop):
|
|
path = tmp_path_factory.mktemp("perf") / "bench.db"
|
|
r = get_repository(db_path=str(path))
|
|
event_loop.run_until_complete(r.initialize())
|
|
return r
|
|
|
|
|
|
@pytest.fixture(scope="session")
|
|
def seeded_repo(repo, event_loop):
|
|
async def _seed():
|
|
for i in range(1000):
|
|
await repo.add_log({
|
|
"decky": f"decky-{i % 10:02d}",
|
|
"service": ["ssh", "ftp", "smb", "rdp"][i % 4],
|
|
"event_type": "connect",
|
|
"attacker_ip": f"10.0.{i // 256}.{i % 256}",
|
|
"raw_line": f"event {i}",
|
|
"fields": "{}",
|
|
"msg": "",
|
|
})
|
|
event_loop.run_until_complete(_seed())
|
|
return repo
|