-
Notifications
You must be signed in to change notification settings - Fork 111
Implementation of testing api for testing vscode extensions language features [Part 2] #802
Conversation
Signed-off-by: Josh Pinkney <joshpinkney@gmail.com>
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
❌ E2E Happy path tests failed ❗ See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) ℹ️ |
crw-ci-test |
❌ E2E Happy path tests failed ❗ See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) ℹ️ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
still requiring changes:
- move it to '@eclipse-che/plugin' ,
languages
namespace or tests - cleanup dependencies and dev-dependencies
- re-use most of declarations from existing vscode/theia
.d.ts
- it is not enabled on any che-theia assembly.
Signed-off-by: svor <vsvydenk@redhat.com>
❌ E2E Happy path tests failed ❗ See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) ℹ️ |
❌ E2E Happy path tests failed ❗ See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) ℹ️ |
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
Signed-off-by: svor <vsvydenk@redhat.com>
✅ E2E Happy path tests succeed 🎉 See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) |
extensions/eclipse-che-theia-plugin-ext/src/browser/che-languages-test-api.ts
Outdated
Show resolved
Hide resolved
extensions/eclipse-che-theia-plugin-ext/src/browser/che-languages-test-api.ts
Outdated
Show resolved
Hide resolved
…nents Signed-off-by: svor <vsvydenk@redhat.com>
✅ E2E Happy path tests succeed 🎉 See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) |
Signed-off-by: svor <vsvydenk@redhat.com>
@benoitf PR was updated to re-use declarations from theia.d.ts, could you please take another look |
✅ E2E Happy path tests succeed 🎉 See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) |
lot of changes have been done, cancelling my request for changes
@svor : do you have a testing plug-in that you're using ? like a given branch of https://github.com/che-incubator/Che-Java-Tests or I can use master branch from there ? |
@benoitf test plugin is not ready yet, i'm working on adapting it |
@benoitf |
Signed-off-by: svor <vsvydenk@redhat.com>
To run tests from test plugin use this devfile: apiVersion: 1.0.0
metadata:
name: che-java-sample-tests
components:
- id: redhat/java11/latest
type: chePlugin
- reference: https://raw.githubusercontent.com/svor/che-java-tests/sv/tests/meta.yaml
type: chePlugin
- reference: https://raw.githubusercontent.com/svor/che-plugin-registry/sv/che-theia2/v3/plugins/eclipse/che-theia/next/meta.yaml
memoryLimit: 1024Mi
type: cheEditor |
✅ E2E Happy path tests succeed 🎉 See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oups, it seems my review was not published
clicking submit now
extensions/eclipse-che-theia-plugin-ext/src/browser/type-converters.ts
Outdated
Show resolved
Hide resolved
extensions/eclipse-che-theia-plugin-ext/src/browser/type-converters.ts
Outdated
Show resolved
Hide resolved
Signed-off-by: svor <vsvydenk@redhat.com>
✅ E2E Happy path tests succeed 🎉 See Details
Tested with Eclipse Che Single User on K8S (minikube v1.1.1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tested on a custom che instance
…features [Part 2] (eclipse-che#802) * Added extension testing Signed-off-by: Josh Pinkney <joshpinkney@gmail.com> * Fix build errors Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add selectionRange language action Signed-off-by: svor <vsvydenk@redhat.com> * Move language test API under che namespace Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * use thei.Uri instead of plugin-ext/lib/common/uri-components.UriComponents Signed-off-by: svor <vsvydenk@redhat.com> * Update language test api to use types from theia/plugin Signed-off-by: svor <vsvydenk@redhat.com> * Fix declaration request Signed-off-by: svor <vsvydenk@redhat.com> * code cleanup Signed-off-by: svor <vsvydenk@redhat.com> Co-authored-by: Josh Pinkney <joshpinkney@gmail.com>
…features [Part 2] (eclipse-che#802) * Added extension testing Signed-off-by: Josh Pinkney <joshpinkney@gmail.com> * Fix build errors Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add selectionRange language action Signed-off-by: svor <vsvydenk@redhat.com> * Move language test API under che namespace Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * Add empty line Signed-off-by: svor <vsvydenk@redhat.com> * use thei.Uri instead of plugin-ext/lib/common/uri-components.UriComponents Signed-off-by: svor <vsvydenk@redhat.com> * Update language test api to use types from theia/plugin Signed-off-by: svor <vsvydenk@redhat.com> * Fix declaration request Signed-off-by: svor <vsvydenk@redhat.com> * code cleanup Signed-off-by: svor <vsvydenk@redhat.com> Co-authored-by: Josh Pinkney <joshpinkney@gmail.com>
What does this PR do?
This PR is based on #597 and was created to continue work on the task about providing language's TestAPI.
It introduces testing API that allows you to talk to a specific vscode extensions language features. It gives the ability to create tests that call into a vscode language extension for two reasons:
Tests can be run against newer version of language plugins so we know if a language plugin can be updated or something needs to be fixed
Che tests can talk directly with the language server so we know that if the language server request fails then it's an actual failure, rather than a test failing for a different reason and making it look like it was the cause
Examples of such tests can be found in: https://github.com/che-incubator/Che-Java-Tests
What issues does this PR fix or reference?
eclipse-che/che#14409
partially eclipse-che/che#15797