diff options
Diffstat (limited to 'tests/run.lua')
| -rw-r--r-- | tests/run.lua | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/run.lua b/tests/run.lua index 7e49e62..db19ffa 100644 --- a/tests/run.lua +++ b/tests/run.lua @@ -7706,6 +7706,30 @@ test("ActionFacade returns typed primary action outcomes", function() end, "clever-f: Invalid mapping 'x'") end) +test("Same-direction explicit coordination reads current-context state", function() + local _, transitions = fresh_sequence_state() + local normal_target = target("a") + local visual_target = target("b") + transitions:BeginAcquisition("n", "F") + transitions:CommitAcquiredTarget("n", normal_target) + transitions:BeginAcquisition("v", "t") + transitions:CommitAcquiredTarget("v", visual_target) + local host = MemoryHost.new({ + mode = "v", + count = 2, + cursor = { line = 1, byte_column = 3 }, + }) + + local resolution = sequence_coordinator.new({ host = host }) + :repeat_same_direction() + + same("explicit_same", resolution.kind) + same(domain.ModeContext.from_full_mode("v"), resolution.invocation.context) + same(2, resolution.invocation.count.value) + same(domain.Descriptor.TILL_FORWARD, resolution.request.descriptor) + same(visual_target, resolution.request.target) +end) + for _, item in ipairs(tests) do local ok, failure = xpcall(item.body, debug.traceback) if not ok then |
