Vesa Lehtinen

12 papers Journal 3Unranked 9
YearRankTypeTitle / Venue / Authors
2020 J jnl
IEEE Internet Things J.
AlaaEddin Loulou, Juha Yli-Kaakinen, Toni Levanen, Vesa Lehtinen, Frank Schaich, Thorsten Wild, Markku Renfors, Mikko Valkama
2019 conf
ISWCS
AlaaEddin Loulou, Juha Yli-Kaakinen, Toni Levanen, Vesa Lehtinen, Frank Schaich, Thorsten Wild, Markku Renfors, Mikko Valkama
2017 J jnl
IEEE Commun. Mag.
Adnan Qamar Kiayani, Vesa Lehtinen, Lauri Anttila, Toni Lahteensuo, Mikko Valkama
2015 J jnl
IEEE Trans. Circuits Syst. I Regul. Pap.
Juha Yli-Kaakinen, Vesa Lehtinen, Markku Renfors
2013 conf
RWS
Vesa Lehtinen, Toni Lahteensuo, Petri Vasenkari, Antti Piipponen, Mikko Valkama
2012 conf
WCNC Workshops
Ville Syrjälä, Vesa Lehtinen, Mikko Valkama
2007 conf
ISSPA
Vesa Lehtinen, Markku Renfors
2004 conf
EUSIPCO
Vesa Lehtinen, Djordje Babic, Markku Renfors
2004 conf
ISCAS (3)
Shahed Hagh Ghadam, Djordje Babic, Vesa Lehtinen, Markku Renfors
2003 conf
ISCAS (4)
Vesa Lehtinen, Markku Renfors
2003 conf
ISCAS (4)
Djordje Babic, Vesa Lehtinen, Markku Renfors
2002 conf
EUSIPCO
Vesa Lehtinen, Markku Renfors
pyproject.toml
← Index pyproject.toml ini
[tool.black]
line-length = 120
target-version = ['py38']
include = '\.pyi?$'
extend-exclude = '''
/(
  # directories
  \.eggs
  | \.git
  | \.hg
  | \.mypy_cache
  | \.tox
  | \.venv
  | build
  | dist
  | venv
)/
'''

[tool.isort]
profile = "black"
line_length = 120
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
ensure_newline_before_comments = true

[tool.flake8]
max-line-length = 120
ignore = ["E501", "W503", "E203", "F401"]
exclude = [
    "__pycache__",
    ".git",
    "venv",
    "build",
    "dist",
    "*.egg-info",
]

[tool.pylint.messages_control]
disable = [
    "C0114",  # missing-module-docstring
    "C0115",  # missing-class-docstring
    "C0116",  # missing-function-docstring
    "C0103",  # invalid-name
    "R0903",  # too-few-public-methods
    "R0913",  # too-many-arguments
    "R0914",  # too-many-locals
    "R0915",  # too-many-statements
]

[tool.pylint.format]
max-line-length = 120

# ============================================================================
# Pytest Configuration
# ============================================================================
[tool.pytest.ini_options]
testpaths = ["tests/unit", "tests/integration"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]

# Default options: verbose, show locals on failure, strict markers
addopts = [
    "-v",
    "--strict-markers",
    "--tb=short",
]

# Custom markers for selective test execution
markers = [
    "unit: Pure unit tests - no external deps, no disk I/O, fast (< 1s each)",
    "integration: Integration tests - use real test binaries on disk",
    "slow: Tests that take > 5s (e.g. entropy on large files, full extraction pipelines)",
    "pe: Tests specific to PE binary analysis",
    "elf: Tests specific to ELF binary analysis",
    "macho: Tests specific to Mach-O binary analysis",
    "apk: Tests specific to APK binary analysis",
    "exporters: Tests for database exporters (ClickHouse, Elasticsearch, Print)",
    "dataclass: Tests for dataclass construction and field validation",
    "binja: Tests for Binary Ninja decompiler extractors (mocked, no license needed)",
]