kleinanzeigen-bot-tu[bot]
b17b19db24
chore: Update Python dependencies ( #518 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-25 16:22:04 +02:00
Heavenfighter
e94a1dd8af
fixes #522 ( #523 )
...
Refactored XPATH expression for
deselecting unwanted
shipping options.
2025-05-25 16:21:09 +02:00
kleinanzeigen-bot-tu[bot]
337516cf9b
chore: Update Python dependencies ( #517 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-22 12:24:48 +02:00
kleinanzeigen-bot-tu[bot]
8ae9d1182e
chore: Update Python dependencies ( #516 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-21 12:50:47 +02:00
sebthom
d992fed9e9
ci: only publish coverage reports after all matrix builds are complete
2025-05-18 23:23:23 +02:00
sebthom
c794102452
chore: update workflow config
2025-05-18 21:06:08 +02:00
Jens Bergmann
50656ad7e2
feat: Improve test coverage ( #515 )
...
* test: implement comprehensive test coverage improvements
This commit improves test coverage across multiple modules, adding unit tests
for core functionality.
Key improvements:
1. WebScrapingMixin:
- Add comprehensive async error handling tests
- Add session management tests (browser crash recovery, session expiration)
- Add element interaction tests (custom wait conditions, timeouts)
- Add browser configuration tests (extensions, preferences)
- Add robust awaitable mocking infrastructure
- Rename integration test file to avoid naming conflicts
2. Error Handlers:
- Add tests for error message formatting
- Add tests for error recovery scenarios
- Add tests for error logging functionality
3. Network Utilities:
- Add tests for port checking functionality
- Add tests for network error handling
- Add tests for connection management
4. Pydantic Models:
- Add tests for validation cases
- Add tests for error handling
- Add tests for complex validation scenarios
Technical details:
- Use TrulyAwaitableMockPage for proper async testing
- Add comprehensive mocking for browser and page objects
- Add proper cleanup in session management tests
- Add browser-specific configuration tests (Chrome/Edge)
- Add proper type hints and docstrings
Files changed:
- Renamed: tests/integration/test_web_scraping_mixin.py → tests/integration/test_web_scraping_mixin_integration.py
- Added: tests/unit/test_error_handlers.py
- Added: tests/unit/test_net.py
- Added: tests/unit/test_pydantics.py
- Added: tests/unit/test_web_scraping_mixin.py
* test: enhance test coverage with additional edge cases and scenarios
This commit extends the test coverage improvements with additional test cases
and edge case handling, focusing on browser configuration, error handling, and
file utilities.
Key improvements:
1. WebScrapingMixin:
- Add comprehensive browser binary location detection tests
- Add cross-platform browser path detection (Linux, macOS, Windows)
- Add browser profile configuration tests
- Add session state persistence tests
- Add external process termination handling
- Add session creation error cleanup tests
- Improve browser argument configuration tests
- Add extension loading validation tests
2. Error Handlers:
- Add debug mode error handling tests
- Add specific error type tests (AttributeError, ImportError, NameError, TypeError)
- Improve error message formatting tests
- Add traceback inclusion verification
3. Pydantic Models:
- Add comprehensive validation error message tests
- Add tests for various error codes and contexts
- Add tests for pluralization in error messages
- Add tests for empty error list handling
- Add tests for context handling in validation errors
4. File Utilities:
- Add comprehensive path resolution tests
- Add tests for file and directory reference handling
- Add tests for special path cases
- Add tests for nonexistent path handling
- Add tests for absolute and relative path conversion
Technical details:
- Add proper type casting for test fixtures
- Improve test isolation and cleanup
- Add platform-specific browser path detection
- Add proper error context handling
- Add comprehensive error message formatting tests
- Add proper cleanup in session management tests
- Add browser-specific configuration tests
- Add proper path normalization and resolution tests
* fix(test): handle Linux browser paths in web_scraping_mixin test
Update mock_exists to properly detect Linux browser binaries in test_browser_profile_configuration, fixing the "Installed browser could not be detected" error.
* fix(test): handle Windows browser paths in web_scraping_mixin test
Add Windows browser paths to mock_exists function to properly detect browser binaries on Windows platform, fixing the "Specified browser binary does not exist" error.
2025-05-18 19:02:59 +02:00
sebthom
fb00f11539
ci: update codecov config
2025-05-16 15:15:54 +02:00
kleinanzeigen-bot-tu[bot]
27282f2853
chore: Update Python dependencies ( #514 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-16 13:35:47 +02:00
sebthom
23910ffbf5
ci: publish code coverage reports
2025-05-15 22:13:38 +02:00
sebthom
83c0d6adf0
refact: move temp files to /.temp/
2025-05-15 19:52:41 +02:00
sebthom
cc25164b43
fix: replace usage of legacy pydantic validators
2025-05-15 19:12:48 +02:00
kleinanzeigen-bot-tu[bot]
3b381847ca
chore: Update Python dependencies ( #511 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-15 12:20:23 +02:00
sebthom
85a5cf5224
feat: improve content_hash calculation
2025-05-15 12:07:49 +02:00
sebthom
f1cd597dd8
fix: reduce distribution size
2025-05-15 12:07:49 +02:00
sebthom
6ede14596d
feat: add type safe Ad model
2025-05-15 12:07:49 +02:00
sebthom
1369da1c34
feat: add type safe Config model
2025-05-15 12:07:49 +02:00
sebthom
e7a3d46d25
fix: display file paths under current working dir as relative in logs
2025-05-15
2025-05-15 00:27:10 +02:00
sebthom
e811cd339b
ci: improve issue template
2025-05-15 00:27:10 +02:00
sebthom
a863f3c63a
ci: improve issue template
2025-05-14 12:35:35 +02:00
Heavenfighter
0faa022e4d
fix: Unable to download single ad ( #509 )
2025-05-14 11:24:16 +02:00
sebthom
8e2385c078
fix: TimeoutError: Unable to close shipping dialog! #505
2025-05-13 21:06:42 +02:00
sebthom
a03b368ccd
fix: active: false in ad config is ignored #502
2025-05-13 20:59:15 +02:00
sebthom
9a3c0190ba
chore: improve dicts module
2025-05-13 20:42:42 +02:00
sebthom
1f9895850f
fix: add missing translations and fix translation loading/testing
2025-05-13 19:27:52 +02:00
sebthom
21d7cc557d
feat: extend utils.save_dict
2025-05-13 13:45:58 +02:00
sebthom
58f6ae960f
refact: simplify XPATH expressions
2025-05-12 18:28:28 +02:00
sebthom
50c0323921
fix: random RuntimeError: dictionary changed size during iteration
2025-05-12 17:50:08 +02:00
sebthom
ee4146f57c
fix: auto-restart when captcha was encountered
2025-05-12 17:20:51 +02:00
airwave1981
65738926ae
fix: TypeError in CustomFormatter.format
2025-05-12 17:11:47 +02:00
sebthom
f2e6f0b20b
chore: update pyproject.toml
2025-05-12 14:08:50 +02:00
DreckSoft
ed83052fa4
fix: Unable to close shipping dialog ( #501 )
...
Co-authored-by: Sebastian Thomschke <sebthom@users.noreply.github.com >
2025-05-11 20:29:10 +02:00
sebthom
314285583e
ci: add pip-audit check
2025-05-11 20:14:38 +02:00
kleinanzeigen-bot-tu[bot]
aa00d734ea
chore: Update Python dependencies ( #500 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-11 20:00:22 +02:00
kleinanzeigen-bot-tu[bot]
8584311305
chore: ✔ Update pyinstaller-hooks-contrib 2025.3 -> 2025.4 ( #499 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-04 12:37:03 +02:00
kleinanzeigen-bot-tu[bot]
03dd3ebb10
chore: ✔ Update setuptools 80.1.0 -> 80.3.0 ( #498 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-03 12:17:29 +02:00
kleinanzeigen-bot-tu[bot]
138d365713
chore: ✔ Update ruff 0.11.7 -> 0.11.8 ( #497 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-02 12:22:00 +02:00
kleinanzeigen-bot-tu[bot]
6c2c6a0064
chore: ✔ Update setuptools 80.0.1 -> 80.1.0 ( #496 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-02 12:07:42 +02:00
Benedikt
8b2d61b1d4
fix: improve login detection with fallback element ( #493 )
...
- Add fallback check for user-email element when mr-medium is not found
- Improve login detection reliability
- Add test case for alternative login element
2025-04-30 17:50:58 +02:00
kleinanzeigen-bot-tu[bot]
7852985de9
chore: Update Python dependencies ( #492 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-30 17:50:42 +02:00
Benedikt
9bcc669c48
feat: add support for multiple matching shipping options ( #483 )
2025-04-29 21:02:09 +02:00
sebthom
3e8072973a
build: use yamlfix for yaml formatting
2025-04-28 13:17:23 +02:00
sebthom
bda0acf943
refact: enable ruff preview rules
2025-04-28 13:17:23 +02:00
sebthom
f98251ade3
fix: improve ad description length validation
2025-04-28 13:17:23 +02:00
sebthom
ef923a8337
refact: apply consistent formatting
2025-04-28 12:55:28 +02:00
sebthom
fe33a0e461
refact: replace pyright with basedpyright
2025-04-28 12:52:18 +02:00
sebthom
376ec76226
refact: use ruff instead of autopep8,bandit,pylint for linting
2025-04-28 12:51:51 +02:00
sebthom
f0b84ab335
build: simplify pytest config
2025-04-28 12:43:53 +02:00
sebthom
634cc3d9ee
build: upgrade to Python 3.13.3
2025-04-28 12:43:42 +02:00
sebthom
52e1682dba
fix: avoid "[PYI-28040:ERROR]" log message when run via pyinstaller
2025-04-27 14:34:56 +02:00