microsoft / microsoft/testfx

[JsonRpc Protocol] Separate location.method to location.method-name and location.method-parameters

Open
#5,476 1 comment 0 reactions 0 assignees View on GitHub
area/server-mode-jsonrpc
Dominant language
C#
Stars
1k
Forks
312
Avg merge
8h 30m
Merged PRs (30d)
469

Description

One challenge in F# is its identifier name rules, where `(` for example is allowed. That means that clients cannot separate method name from parameter types.

I strongly believe that for MTP we should separate location.method to 2 different properties, matching the model of TestMethodIdentifierProperty. This means we don't need the escaping rules of ManagedMethod, and we are not forcing framework authors to implement the escaping logic and plug it in TestMethodIdentifierProperty for no good reason.

It's probably even better to separate it to 3 properties, `location.method-name`, `location.method-arity`, and `location.method.parameters`. This will require a public API change to TestMethodIdentifierProperty.

Contributor guide

Open the contributing guide

Research direction

Start by locating the JsonRpc `location.method` representation and the `TestMethodIdentifierProperty` API referenced in the issue. Compare the proposed two-property and three-property models, then confirm the protocol and public API changes needed; done means an agreed property shape without requiring framework authors to implement escaping logic.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.