- Notifications
You must be signed in to change notification settings - Fork24
WIP bulk refactor - tests, factories, mocks, oh my#541
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Draft
jaggederest wants to merge63 commits intomainChoose a base branch fromjaggederest/refactor_extension
base:main
Could not load branches
Branch not found:{{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
Uh oh!
There was an error while loading.Please reload this page.
Draft
Changes from1 commit
Commits
Show all changes
63 commits Select commitHold shift + click to select a range
7e1bce9
pretest working
jaggederestc693a46
enable vscode-test and bump tsconfig to modern settings
jaggederest240b649
Merge branch 'main' into jaggederest/integration_tests
jaggederest0e58a31
test: fix integration tests to run without Remote SSH extension
jaggederest872b7e8
Merge remote-tracking branch 'origin/jaggederest/integration_tests' i…
jaggederest01c2d80
autocorrect formatting
jaggederest8ddbf26
bump node version to 22
jaggederest9b74df4
fix: configure Vitest to properly exclude VS Code integration tests
jaggederestadec211
whitespace
jaggederestd9b543a
fix: update tsconfig.json and convert pretty-bytes imports to standar…
jaggederesta7afdd6
Remove testmode flag in favor of checking existence of remote ssh ext…
jaggederest3097d8f
remove superfluous async, enable lint rule
jaggederesta2d2bc8
fix: resolve ESLint @typescript-eslint/require-await errors
jaggederest32dfda4
Update configurations and remove pointless Promise.all
jaggederest12b0124
Tweak eslint config to better handle json/md, remove compile-tests sc…
jaggederestcf58040
feat: expand integration tests and add coverage analysis
jaggederest1be94c3
fix: update integration tests to match actual commands
jaggederest67c47e0
feat: switch to VS Code built-in coverage for integration tests
jaggederest62c88f4
feat: add comprehensive integration test framework
jaggederest907347e
feat: implement comprehensive integration tests for CLI, URI handler,…
jaggederest7563580
feat: add comprehensive unit test coverage for all source files
jaggederest379b9ee
fix: resolve all broken unit tests with proper vscode and API mocking
jaggederestf2863b5
feat: enhance api.ts test coverage to 95.52%
jaggederestced86e9
feat: achieve 48.4% overall test coverage with incremental improvements
jaggederest1dbee30
docs: update TODO.md and CLAUDE.md to reflect test coverage progress
jaggederest6d93e76
test: add unit tests for commands.ts - improved coverage from 28% to …
jaggederest2471b72
test: improve unit test coverage from 48.4% to 60.11%
jaggederest3e38dca
test: improve remote.ts coverage from 32.61% to 49.21%
jaggederest797b656
test: improve test coverage for commands, storage, and workspacesProv…
jaggederest8f150cb
feat: add structured logging foundation with TDD approach
jaggederest07bffb8
docs: update TODO.md with testing synthesis and logging plan
jaggederestfe296b2
feat: integrate logger into Storage class with TDD approach
jaggederest32b4df0
refactor: create type-safe mock builders and clean up api-helper.test.ts
jaggederestbfd4b34
refactor: clean up type casting in test files
jaggederestd4af4ed
fix: update test-helpers to use proper Storage type
jaggederest6c947fe
docs: update TODO.md with test quality improvement progress
jaggederestf8b6dbb
test: add Logger factory and verify backward compatibility
jaggederesta57d676
fix: address ESLint errors in api.test.ts
jaggederest97ff5fb
docs: simplify TODO.md and update progress
jaggederest8021706
docs: update CLAUDE.md with TDD patterns and techniques from session
jaggederestb624614
feat: integrate Logger into remote.ts with TDD approach
jaggederest2629397
feat: integrate Logger into extension.ts with initialization
jaggederest53272c1
test: add Logger integration tests for headers.ts
jaggederest92c548a
test: add Logger integration tests for workspaceMonitor
jaggederest9e8ed6d
test: add Logger integration tests for inbox
jaggederest3595bda
docs: update TODO.md with Logger integration progress
jaggederest9aac82d
test: add Logger integration tests for error.ts
jaggederest341cc67
test: add Logger integration tests for workspacesProvider
jaggederestdfd55e1
test: add Logger integration tests for commands.ts
jaggederest6285043
docs: mark Logger integration as complete in TODO.md
jaggederesteca919f
refactor: extract helper functions from monolithic activate() in exte…
jaggederest8505c4f
refactor: complete TDD extraction of all functions from activate()
jaggederest8b8edc7
test: consolidate test mocks into reusable factories
jaggederest1a43dd3
docs: update TODO.md and CLAUDE.md with test improvements
jaggederesta1af9cb
test: improve integration tests from 86 to 100 passing
jaggederesteaee610
test: clean up pointless integration tests and enable 3 more
jaggederestc4a2156
test: remove 9 more pointless integration tests
jaggederest1a9f34f
test: remove all skipped integration tests for fresh start
jaggederest6291f7f
refactor: improve testability through dependency injection and test s…
jaggederesta72e943
test: remove flaky UI tests and improve test stability
jaggederesteb787f8
test: simplify test files and reduce verbosity
jaggederestfa1f576
test: reduce test verbosity by 41% while maintaining 84% coverage
jaggederestc73c742
test: simplify test suite by removing low-value tests
jaggederestFile filter
Filter by extension
Conversations
Failed to load comments.
Loading
Uh oh!
There was an error while loading.Please reload this page.
Jump to
Jump to file
Failed to load files.
Loading
Uh oh!
There was an error while loading.Please reload this page.
Diff view
Diff view
refactor: complete TDD extraction of all functions from activate()
Successfully extracted all 9 helper functions from the monolithic activate() function:- setupRemoteSSHExtension() - Configure remote SSH extension- initializeInfrastructure() - Create storage and logger- initializeRestClient() - Setup REST client- setupTreeViews() - Create workspace providers and trees- registerUriHandler() - Handle vscode:// URIs- registerCommands() - Register all VS Code commands- handleRemoteEnvironment() - Setup remote workspace if needed- checkAuthentication() - Verify user auth and fetch workspaces- handleAutologin() - Process autologin configurationThe activate() function is now clean and modular, calling each helper in sequence.Test coverage improvements:- extension.ts: 39.71% → 93.07% coverage- Overall project: 74.35% → 79.23% coverage- Added 600+ lines of comprehensive tests- All 405 unit tests passing🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
- Loading branch information
Uh oh!
There was an error while loading.Please reload this page.
commit8505c4f3a9afd7366ecf50df5d664d299ffaf25c
There are no files selected for viewing
12 changes: 6 additions & 6 deletionsTODO.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
Oops, something went wrong.
Uh oh!
There was an error while loading.Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.