JetBrains-Research / JetBrains-Research/TestSpark

TestSpark does not provide information about enum-parameters of CUT's methods

Open
#202 0 comments 0 reactions 0 assignees View on GitHub
new feature
Dominant language
Kotlin
Stars
88
Forks
24
PR merge metrics
No merged PRs in 30d

Description

# Description
Currently, TestSpark does not provide any information about the enum parameters. Syntactically, these enum parameters are no different from the parameters of user-defined classes:

```java
// CUT:
public class EpubChecker {
...
// EPUBVersion, EPUBProfile are enums
int validateFile(String path, EPUBVersion version, Report report, EPUBProfile profile) { ... }
}

// ENUMs:
public enum EPUBProfile {
DEFAULT,
IDX,
DICT,
EDUPUB,
PREVIEW;

public EPUBProfile makeTypeCompatible(Set pubTypes) { ... }
public PublicationType matchingType() { ... }
}

public enum EPUBVersion {
Unknown("unknown"), VERSION_2("2.0.1"), VERSION_3("3.3");

private final String version;

EPUBVersion(String version) { this.version = version; }
public String toString() { return version; }
}
```

It would be beneficial to list the enums' existing entries (and method signatures) in the methods information prompt component.

# Definition of Done
* [ ] Figure out what information should be presented about the enum parameters of the CUT's methods **(*)**.
* [ ] Implement the functionality proposed in **(*)**.

Contributor guide

Open the contributing guide

Research direction

Start by locating the methods information prompt component and inspecting how parameters of user-defined classes are currently represented. Decide what enum entries and method signatures should be shown, then implement that presentation and verify that the prompt includes the selected enum information.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.