1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2026-05-25 22:52:14 +02:00
Commit Graph

202 Commits

Author SHA1 Message Date
3eba0556b2 Revert per-caret registers 2026-05-09 12:25:27 +02:00
1a51520428 Revert "Fix(VIM-4109): Configure test source sets for Gradle 9+ compatibility"
This reverts commit 5c0d9569d9.
2026-05-09 12:21:37 +02:00
1grzyb1
64e110f27a VIM-186 Add comment-aware code wrapping for gq/gw 2026-04-23 13:57:28 +02:00
1grzyb1
eaf39234b2 VIM-1158 Add gw to reformat code with preserving the cursor position 2026-04-23 13:57:28 +02:00
1grzyb1
7ec1e4c58d VIM-4202 Fix state after commentary action
in split mode/clion/ rider, after the comment action runs on rpc, it happens after removing selection. To fix that, we execute handler directly in synchronous way
2026-04-21 10:21:29 +02:00
1grzyb1
08aea2b202 Split mode test for simple undo insert 2026-04-15 10:14:13 +02:00
1grzyb1
5416d1505f VIM-4172 Add test for visual selection commands 2026-04-15 09:52:06 +02:00
1grzyb1
9251a83031 VIM-1158 Refactor gq tests: use multiline strings and class-level annotation 2026-04-13 10:29:20 +02:00
1grzyb1
3793458d64 VIM-1158 Add gw to reformat code with preserving the cursor position 2026-04-13 10:29:20 +02:00
1grzyb1
c82539e379 Remove manual DriverRunner registration 2026-04-10 09:59:25 +02:00
1grzyb1
4f5b793642 Bump ideaVersion to 2026.1 2026-04-08 13:48:33 +02:00
1grzyb1
2fdf52d305 Split double undo into two singles once 2026-04-08 09:24:14 +02:00
1grzyb1
1e489e2c14 Wait for ideavim to attatch to editor 2026-04-08 08:44:16 +02:00
1grzyb1
06d877415d Make go back shortcut platform-specific 2026-04-07 12:52:07 +02:00
1grzyb1
c26658d27d Ensure editor is ready before proceeding with split tests 2026-04-07 10:52:41 +02:00
digitalby
74cf6fbee8 refactor: Extract isGotoAction and saveJumpBeforeGoto helpers, add split-mode test for IDE Back jump 2026-04-07 09:47:42 +02:00
1grzyb1
46823abcda Fix timing in jump navigation split tests 2026-04-03 12:25:19 +02:00
1grzyb1
5a2d982ca5 VIM-3918 Ensure commentary is installed 2026-03-26 11:28:28 +01:00
dependabot[bot]
53f2b4b9af Bump org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm
Bumps [org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm](https://github.com/Kotlin/kotlinx.coroutines) from 1.10.1 to 1.10.2.
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.10.1...1.10.2)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm
  dependency-version: 1.10.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-25 15:56:49 +00:00
dependabot[bot]
7082757b0e Bump org.kodein.di:kodein-di-jvm from 7.20.2 to 7.31.0
Bumps [org.kodein.di:kodein-di-jvm](https://github.com/kosi-libs/Kodein) from 7.20.2 to 7.31.0.
- [Release notes](https://github.com/kosi-libs/Kodein/releases)
- [Changelog](https://github.com/kosi-libs/Kodein/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kosi-libs/Kodein/compare/7.20.2...v7.31.0)

---
updated-dependencies:
- dependency-name: org.kodein.di:kodein-di-jvm
  dependency-version: 7.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-25 15:39:41 +00:00
1grzyb1
c01a38d584 VIM-3918 Add split-mode tests for jump navigation 2026-03-25 11:43:43 +01:00
1grzyb1
6c569d9cb3 VIM-3918 Add split-mode tests for file ops, marks, and bookmarks 2026-03-25 11:43:43 +01:00
1grzyb1
c332b010f4 VIM-3918 Add split-mode tests for commentary, repeat, and format undo 2026-03-25 11:43:43 +01:00
1grzyb1
01a7cb4865 VIM-3918 Infrastructure for running split mode tests 2026-03-25 11:43:43 +01:00
1grzyb1
f3b67416cd VIM-4134 Format with = action in split mode
Formatting was broken in split mode and also in monolith mode cursor position restoring didn't match vim actual behaviour. refactored it to work in same way as commenting works
2026-03-18 11:35:37 +01:00
1grzyb1
2d63251b29 VIM-4134 Check for write lock before removing bookmark 2026-03-17 11:48:35 +01:00
1grzyb1
cb3a11e785 VIM-4134 update tests for new module structure
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 14:24:30 +01:00
1grzyb1
d44bf3aa02 Update copyright years to 2026
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 14:24:30 +01:00
dependabot[bot]
5475c410c4 Bump org.junit.vintage:junit-vintage-engine from 6.0.1 to 6.0.3
Bumps [org.junit.vintage:junit-vintage-engine](https://github.com/junit-team/junit-framework) from 6.0.1 to 6.0.3.
- [Release notes](https://github.com/junit-team/junit-framework/releases)
- [Commits](https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3)

---
updated-dependencies:
- dependency-name: org.junit.vintage:junit-vintage-engine
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-25 15:43:20 +00:00
dependabot[bot]
c65bdeb134 Bump org.junit.jupiter:junit-jupiter from 6.0.1 to 6.0.3
Bumps [org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework) from 6.0.1 to 6.0.3.
- [Release notes](https://github.com/junit-team/junit-framework/releases)
- [Commits](https://github.com/junit-team/junit-framework/compare/r6.0.1...r6.0.3)

---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-25 15:42:32 +00:00
1grzyb1
29067706ec VIM-4134 Replace java.io.File with java.nio.file.Path 2026-02-17 15:01:02 +01:00
1grzyb1
5a51b69174 Fix flaky TemplateTest by adjusting escape sequence timing
Fix flaky inline rename test
2026-01-30 11:19:45 +02:00
1grzyb1
8651b8f8ec VIM-566 Add operator-pending mode support for zj and zk 2026-01-28 19:15:42 +02:00
1grzyb1
ec42b4ff64 VIM-566 Add support for navigating between folds with zj and zk commands 2026-01-28 19:15:42 +02:00
1grzyb1
9236b4cc72 VIM-566 Implement zf create fold action 2026-01-27 13:02:26 +02:00
1grzyb1
0c21dcb132 VIM-566 add set foldelevel command support 2026-01-27 11:25:01 +02:00
1grzyb1
98ebaabf10 VIM-566 improve performance by batch apply fold level 2026-01-23 16:54:51 +02:00
1grzyb1
23119b169b VIM-566 Add zm folding support 2026-01-23 16:54:51 +02:00
1grzyb1
c0d3624f3c VIM-566 Add zr folding support 2026-01-23 16:54:51 +02:00
Alex Plate
5445878d21 Fix testTrackActionId UI test flakiness
Wait for "Action id copied" confirmation notification after clicking
"Copy Action Id". This ensures the clipboard was actually updated before
proceeding to paste, fixing the race condition where the test would
paste stale clipboard data.

The old wait for "Stop Tracking" was unreliable because that button
exists in both the old and new notifications during the transition.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:26:04 +02:00
Grzybek
0264e1cd75 VIM-566 Add zA toggle folding support 2026-01-21 16:48:36 +02:00
Alex Plate
3627d62175 Disable build cache for PyCharm and Rider UI tests
Same fix as ui-ij-tests - ensures tests actually run instead of
using cached results.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:03:36 +02:00
Alex Plate
0312531361 Disable build cache for UI tests to ensure they always run
UI tests were being skipped due to Gradle build cache restoring
previous results. This defeats the purpose of stability testing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 14:55:00 +02:00
claude[bot]
a52dfa48bf Fix UI test notification dismissal timeout
Replace Thread.sleep() with proper waitFor() conditions and explicitly
dismiss notifications to prevent test timeouts.

The testTrackActionId test was failing because the IdeaVim notification
balloon remained visible after clicking "Stop Tracking", causing a 5-second
timeout when waiting for "Copy Action Id" text to disappear.

Changes:
- Replace Thread.sleep(1000) after clicking "Copy Action Id" with waitFor
  condition that checks for "Stop Tracking" button to appear
- Remove Thread.sleep(1000) after clicking "Stop Tracking"
- Add explicit notification dismissal using Escape key
- Increase timeout for final waitFor to 3 seconds to allow dismissal

This follows the cause-effect principle for UI tests by waiting for
specific UI conditions rather than arbitrary timeouts.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-08 16:54:01 +02:00
Alex Plate
2bf418978a Update PyCharm UI test to handle new startup behavior
PyCharm now opens with a project directly instead of showing the Welcome Frame. Removed the project creation logic and unused imports.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-07 23:36:55 +02:00
claude[bot]
52eed09a69 Fix Rider UI test by handling .NET SDK installation step
The RiderUiTest was failing because it didn't handle the .NET SDK
installation dialog that appears when creating a new Rider project
in a fresh environment.

Root cause:
- When the "New Solution" dialog opens, Rider detects that no .NET SDK
  is installed and shows an "Install" button
- The "Create" button remains disabled until the SDK is installed
- The test was trying to click the disabled "Create" button, which
  failed silently, leaving the dialog open
- The test then timed out waiting for the main IDE frame to appear

Changes:
1. Added SDK installation handling in startNewProject():
   - Detects and clicks the "Install" button if present
   - Waits 10 seconds for SDK installation to complete
   - Waits additional 2 seconds before clicking Create

2. Made license frame handling optional:
   - Wrapped manageLicensesFrame in try-catch
   - Prevents failure if license is already activated

3. Increased timeouts for project creation:
   - Extended IDE frame lookup timeout from 10s to 60s
   - Added 5-second wait after clicking Create button
   - These changes accommodate the time needed for project creation

Test results:
- Test now passes successfully (100% pass rate)
- Duration: ~1 minute (previously timed out at ~20 seconds)
- All test assertions pass

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-07 23:22:00 +02:00
claude[bot]
904bf50cd8 Fix UI test by disambiguating activation code text field selector
The test was failing because both the "Activation code" radio button
and the text input field share the same accessiblename attribute.
The XPath selector "//div[@accessiblename='Activation code']" was
matching both elements, causing the test to fail when trying to set
text on the first match (the radio button, which is not a JTextComponent).

Solution: Add a classhierarchy filter to the XPath to ensure we only
match the text input field component (JTextComponent), not the radio button.

This fix makes the selector more specific and prevents the ambiguity
that was causing the test failure.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-07 22:54:03 +02:00
claude[bot]
52a6275a9d Fix UI test by using accessible name instead of obfuscated class
The UI test was failing because it relied on an obfuscated class name 'W'
to locate the activation code text field. The class name changed to 'Y' in
a recent version of JetBrains Rider, causing the test to fail with
NoSuchElementException.

This change uses the stable 'accessiblename' attribute instead, which:
- Is more stable across UI updates
- Is semantically meaningful and self-documenting
- Follows accessibility best practices

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-07 18:41:58 +02:00
Alex Plate
59372c653d Fix UI test tab selector for IntelliJ accessible name changes
IntelliJ Platform now appends file type suffixes to accessible names
for improved accessibility (e.g., "MyTest.java, Java file" instead of
just "MyTest.java"). This caused UI tests to fail when trying to find
and click on Java file tabs.

Updated the XPath selector in Editor.kt to use a flexible matcher that
handles both:
- Exact match for older IntelliJ versions or files without suffixes
- Prefix match with comma for files with type suffixes

The comma in 'starts-with(@accessiblename,'$title,')' ensures we don't
accidentally match unintended tabs that happen to start with the same
characters.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-07 16:23:49 +02:00
Alex Plate
4fb61b02cc Comment out failing testTripleClickRightFromLineEnd test
This test is currently failing and needs investigation.
See AI analysis in CI for details.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-06 23:54:52 +02:00