Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lexer from Arnauld & Module Dependency scope from me #24

Open
wants to merge 226 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
226 commits
Select commit Hold shift + click to select a range
140f585
update jbehave core to 3.6 version
jarosite May 8, 2012
8e440e7
Pattern Variants feature done
jarosite May 8, 2012
0b46aeb
examples basic done
jarosite May 11, 2012
580655f
simplified lexer
jarosite May 11, 2012
ada6d8a
Add .gitignore
Arnauld Aug 25, 2012
1b8e7fd
First working version of the lexer... need more work to add 'Examples…
Arnauld Aug 25, 2012
4bc90a2
Fix .gitignore
Arnauld Aug 25, 2012
41b98f0
Merge remote branch 'jarosite/pattern_variants' into improve-parser
Arnauld Aug 25, 2012
2a9177c
Fix lexer + fix parser + add 'colors and fonts' page
Arnauld Aug 26, 2012
2b4aed9
Fix colors and fonts page's labels + add sample for broken meta parsing
Arnauld Aug 27, 2012
965b38c
Add 'Examples:' support + tests + comment + Add parametrized step com…
Arnauld Aug 30, 2012
b085284
Add first version of custom lexer, in order to support localized keyw…
Arnauld Sep 1, 2012
c38df34
Fixes localized lexer + add tests + add 'on fly' language switch
Arnauld Sep 3, 2012
5946eb4
Fix lexer + parser + localized support
Arnauld Sep 4, 2012
62fbd80
Add test libraries
Arnauld Sep 5, 2012
c364199
Rework parser: more robust in case of invalid content + reorganize cl…
Arnauld Sep 5, 2012
a1de142
Merge branch 'improve-parser' of git://github.com/Arnauld/IntelliJBeh…
jarosite Sep 10, 2012
49134c4
Modified plugin identification to differentiate it from the original.
witspirit Jan 27, 2013
cecc5c0
Corrected module setup
witspirit Jan 27, 2013
b3dd319
Fix basic table support:
witspirit Jan 27, 2013
296682f
Ensured we only scan for steps in the project containing the story fi…
witspirit Jan 27, 2013
27d2ee4
Added .gitignore to omit IntelliJBehave.zip (deployable plugin) and o…
witspirit Jan 27, 2013
904335b
Merge branch 'improve-parser_by_amauld' of https://github.com/jarosit…
witspirit Jan 27, 2013
9dade29
Merge branch 'improve-parser_by_amauld' of https://github.com/jarosit…
witspirit Jan 27, 2013
fb5437e
Alternate module description based on local jars in lib and testlib
witspirit Jan 27, 2013
121de52
Modified POM to be aligned with the expectations of the module config…
witspirit Jan 27, 2013
cde8213
Added testLib/ to .gitignore to ensure you don't add testLib stuff by…
witspirit Jan 27, 2013
44d9d8e
* Ensured some debugging statements are hidden (protected by flag)
witspirit Jan 28, 2013
f2990b8
Work around JBehave performance issue for invalid input - when the cu…
Jun 12, 2013
2b05db6
Fixing shifted highlighting of parameters
Jun 12, 2013
da2d0fe
Fixing some possible NPEs
Jun 12, 2013
19f8b9e
Added ignore for atlassian ide connector.
witspirit Jun 14, 2013
6acd5d7
Merge branch 'master' of https://github.com/harley84/IntelliJBehave
witspirit Jun 14, 2013
f73b2a4
Updated plugin metadata to prepare for publishing
witspirit Jun 19, 2013
088dced
First attempt at README.MD
witspirit Jun 19, 2013
9ed5c8b
Merge branch 'master' of https://github.com/witspirit/IntelliJBehave
witspirit Jun 19, 2013
747f6fb
Fixing NPE
Aug 16, 2013
d7f7d21
Updated versions
dmalch Dec 19, 2013
bb26074
Compatibility with idea 13
dmalch Dec 19, 2013
3f588af
Update for project file
dmalch Dec 19, 2013
fceb35f
Speed up
dmalch Dec 20, 2013
2d363f9
Speed up
dmalch Dec 20, 2013
4345971
Update version
dmalch Dec 20, 2013
689969f
Improved checking of steps
dmalch Jan 8, 2014
383c7fb
Improved checking of steps
dmalch Jan 8, 2014
41debd8
Support for multiline steps
dmalch Jan 21, 2014
3dde264
Support for multiline steps
dmalch Jan 21, 2014
4e5342c
Highlight params in multiline steps
dmalch Jan 21, 2014
c000190
Fixing out of bounds exception when there are no parameters yet in jb…
Jan 25, 2014
ce4c156
Optimizations in UnusedStepsInspection
Jan 26, 2014
b306b60
For now turning off Unused Step Declaration inspection by default - c…
Jan 31, 2014
45ab904
Updating plugin version to be updated at the repository
Jan 31, 2014
4e6f52b
Guava
harley84 Mar 8, 2014
7b1e06d
Project file
harley84 Mar 8, 2014
208688c
Merge remote-tracking branch 'origin/pr/3'
harley84 Mar 8, 2014
f58870b
Fixing showing the settings
harley84 Mar 8, 2014
e4911a9
Adding a tooltip to settings page and proper capitalization
harley84 Mar 8, 2014
76dbd38
Fixing an out of bounds exception and getting rid of some obsolete re…
harley84 Mar 13, 2014
3a4e5fe
Merge pull request #1 from witspirit/master
dmalch Mar 27, 2014
39e0684
Merge with master
dmalch Mar 27, 2014
be6be4c
Updated lexer. Now it is able to parse multiline steps.
dmalch Mar 27, 2014
df480df
Merge branch 'updated_lexer'
dmalch Mar 27, 2014
033752d
Minor touch up
dmalch Mar 27, 2014
8af5b60
Added icon for stories
dmalch Mar 27, 2014
d87a1a1
Updating JBehave core version - fixes #6
harley84 Mar 29, 2014
a5736b9
Some minor memory optimizations
harley84 Mar 29, 2014
643bf5b
Merge remote-tracking branch 'origin/pr/8'
harley84 Mar 29, 2014
7062444
Turning the unused steps inspection off by default and preparing vers…
harley84 Mar 29, 2014
301a5c6
Merge pull request #2 from witspirit/master
dmalch Apr 4, 2014
bf09ade
Some warnings + fixes #10
harley84 Apr 5, 2014
01843c7
Supporting IN_EXAMPLES flow. Fixes #9
harley84 Apr 7, 2014
4ffa5d3
Fixing a possible NPE
harley84 Apr 7, 2014
c17f739
Better handling the created story file extension and progressing the …
harley84 Apr 7, 2014
340210d
Adding self to vendors
harley84 Apr 13, 2014
722a7a9
Merge pull request #3 from witspirit/master
dmalch Apr 15, 2014
859406c
Reference resolution has been reworked
dmalch Oct 2, 2014
67bb4ae
Refactoring
dmalch Oct 3, 2014
32637c9
Refactoring
dmalch Oct 3, 2014
0d49616
Merge remote-tracking branch 'origin/pr/17'
harley84 Oct 6, 2014
2bc5476
Updating references and plugin description
harley84 Oct 6, 2014
2b3ca79
Merge pull request #4 from witspirit/master
dmalch Oct 7, 2014
8345b69
Fix for the issue #18 Plugin does not recognise pattern variants
dmalch Oct 7, 2014
1c048cf
Updating version
harley84 Oct 8, 2014
53548b6
Merge pull request #5 from witspirit/master
dmalch Oct 14, 2014
3bb0cc6
Fixed issue #20
dmalch Oct 14, 2014
b01dd6a
Fixed issue #21
dmalch Oct 14, 2014
65e40de
Fixed issue #21
dmalch Oct 15, 2014
62dde91
Added spellchecker
dmalch Oct 15, 2014
2d5776a
Fixed project file
dmalch Oct 15, 2014
122249a
Added support for Kotlin.
RodrigoQuesadaDev Sep 21, 2015
91030db
Merge pull request #33 from RodrigoQuesadaDev/kotlin
harley84 Oct 11, 2015
ff15b14
Update StoryCommenter.java
ulmanA Nov 9, 2015
4b4da20
Merge pull request #1 from ulmanA/ulmanA-patch-1
ulmanA Nov 9, 2015
d127d38
Merge pull request #35 from ulmanA/master
harley84 Nov 9, 2015
17dad1e
Updated code to support Kotlin 1.0.3.
RodrigoQuesadaDev Nov 3, 2015
6422bf1
Optimized step matching and updated code to support Kotlin 1.0.4.
RodrigoQuesadaDev Oct 5, 2016
f4d9255
Switched build system to Gradle and fixed broken StoryLocalizedLexer_…
RodrigoQuesadaDev Sep 28, 2017
409c181
ISSUE-42: Fixed NPE occurring in JBehaveUtil class.
RodrigoQuesadaDev Oct 1, 2017
80029d4
Bump versions to latests and adjust where necessary
JenoDK Feb 6, 2019
d65151f
Add a setting to turn off code completion for story files. resolves #46
JenoDK Feb 6, 2019
bd40cb5
Merge pull request #47 from JenoDK/master
JenoDK Mar 4, 2019
d4d6771
Update README to include some contribute docs
JenoDK Mar 4, 2019
afd5fad
Avoid ClassCastException - resolves #28
JenoDK Mar 4, 2019
6a9a787
Change to build.gradle and plugin.xml to release a new version
JenoDK Mar 4, 2019
f65145d
Feature/#52 upgrade versions and support (#54)
picimako Apr 11, 2021
a8aebf2
#58, #60: Upgrade versions to support IntelliJ versions from 2021.1
picimako Aug 8, 2021
02a893c
#58, 60: Upgrade dependency versions
picimako Aug 9, 2021
7132558
Fix Gradle Wrapper files (#66)
valfirst Sep 30, 2021
e58135d
Update badge to point to the plugin in JetBrains Marketplace (#65)
valfirst Sep 30, 2021
866aeab
Use non-deprecated API
valfirst Oct 7, 2021
3eea664
Merge pull request #67 from valfirst/use-non-deprecated-api
JenoDK Oct 20, 2021
750a1d0
Add gradlew build and test workflow action
JenoDK Oct 20, 2021
af72ccd
Upgrade intellij gradle plugin to 1.3.0. Set untilBuild to 213.*. Rep…
picimako Dec 27, 2021
2623862
Favor plain Java 8 over Guava (#68)
valfirst Jan 3, 2022
b7b170b
Simplify code by using java 11 language features
picimako Jan 7, 2022
1a6398a
Update .github/workflows/main.yml
JenoDK Jan 18, 2022
1251c25
Update .github/workflows/main.yml
JenoDK Jan 18, 2022
38a6863
Update gradle IJ plugin, gradle and JUnit versions. Add support for I…
picimako Feb 1, 2022
0d764dd
Add structure view to .story files.
picimako Mar 2, 2022
3ae2d31
Upgrade gradle wrapper to 7.4
picimako Apr 13, 2022
6591a55
Upgrade gradle intellij plugin to 1.5.2
picimako Apr 13, 2022
5accedb
Use bundled Kotlin
picimako Apr 13, 2022
39cf79e
Fix support of IJ2022.1 in JBehaveStepsIndex
picimako Apr 13, 2022
929bed5
Update changelog for v1.57
picimako Apr 13, 2022
0715405
Add limitation note for structure view.
picimako May 5, 2022
50a911f
Add some run configurations for plugin development.
picimako Jul 27, 2022
1100156
Add support for IJ2022.2.
picimako Jul 27, 2022
db92c1f
Updated the kotlin and gradle-intellij-plugin versions.
picimako Nov 21, 2022
a877c5e
Add support for IJ-2022.3
picimako Nov 21, 2022
1e94123
Remove calls to some deprecated methods.
picimako Nov 21, 2022
1c8905c
Add missing plugin descriptor file for the kotlin plugin.
picimako Nov 21, 2022
039133d
Add basic lifecycle, composite and narrative support to the Story str…
picimako Nov 21, 2022
a040832
Update plugin version and changelog
picimako Nov 21, 2022
32c464d
Update gradle-intellij-plugin to 1.10.0
picimako Dec 1, 2022
3d6fd58
Merge pull request #76 from witspirit/support-2022-3
picimako Dec 1, 2022
897774f
Upgrade to Gradle 7.6
valfirst Jan 13, 2023
87e166d
Merge pull request #77 from valfirst/gradle-7-6
picimako Feb 5, 2023
8adaa5b
Update gradle-intellij-plugin to 1.13.1
picimako Mar 5, 2023
b10d3e8
Use gradle 7.6 in build.gradle as well.
picimako Mar 5, 2023
98c0994
Update plugin to support IJ-2023.1.
picimako Mar 5, 2023
abefbda
Merge pull request #78 from witspirit/v160
picimako Mar 5, 2023
09bd7ab
Revert gradle-intellij-plugin to 1.12.0
picimako Mar 5, 2023
d4a26e2
Migrate to JBehave 5
valfirst May 12, 2023
f9025bc
Merge pull request #79 from valfirst/migrate-to-jbehave-5
picimako May 15, 2023
ae2f8c8
Merge pull request #69 from witspirit/Add-gradlew-build-test-action
picimako May 15, 2023
5a13794
Fix build in CI
valfirst May 15, 2023
8c7d2f0
Merge pull request #80 from valfirst/fix-build-in-ci
picimako May 19, 2023
6c8c472
Upgrade to Gradle `8.1.1`
valfirst May 20, 2023
a01de4e
CI: align version of checked out IDEA sources and target IDEA version
valfirst May 20, 2023
eb046ee
Merge pull request #84 from valfirst/align-version-of-checkouted-idea…
picimako May 20, 2023
85fadf0
Merge branch 'witspirit:master' into upgrade-to-gradle-8-1-1
valfirst May 20, 2023
8e107b7
Merge pull request #83 from valfirst/upgrade-to-gradle-8-1-1
picimako May 21, 2023
64d9f9a
Update plugin configuration to be based on the platform plugin template
picimako May 31, 2023
dc02234
Refine the readme
picimako May 31, 2023
54ef180
Update and fix a few tests
picimako May 31, 2023
ead65aa
Update since and until builds in plugin.xml
picimako May 31, 2023
c717599
Make JBehaveStepsIndex light service and fix related tests
picimako May 31, 2023
524da09
Migrate the UI form designer-based settings page to Java based implem…
picimako May 31, 2023
ae6cd08
Disable some lexer tests
picimako May 31, 2023
46793ae
Disable some lexer tests
picimako May 31, 2023
6a64125
Remove checkout of intellij-community
picimako May 31, 2023
495759a
Add plugin verifier configuration
picimako Jun 18, 2023
ef11b5b
Merge pull request #85 from witspirit/to-plugin-template
picimako Jun 19, 2023
c2e8a01
Fix changelog formatting and start semantic versioning
picimako Jun 19, 2023
5ad5bb3
Merge pull request #86 from witspirit/versioning-update
picimako Jun 19, 2023
d94103c
Update plugin configuration and dependency versions
picimako Oct 14, 2023
533ad38
Remove deprecated API usage
picimako Oct 15, 2023
3fafcd7
Use org.apache.commons.lang3.LocaleUtils instead of org.apache.common…
picimako Oct 15, 2023
0dd7805
Merge pull request #87 from witspirit/v1.62.0
picimako Oct 15, 2023
a399cd3
Update plugin configuration and dependencies
picimako Jan 30, 2024
eed8424
Merge pull request #88 from witspirit/v1.63.0
picimako Jan 30, 2024
ec90dc7
Update plugin version to 1.64.0
picimako May 20, 2024
0cf9ab4
Update dependencies and gradle versions
picimako May 20, 2024
80773b4
Make IJ-2023.1.6 the earliest supported IDE version
picimako May 20, 2024
124959d
Various minor improvements (missing annotations, unnecessary variable…
picimako May 20, 2024
b1c7447
Improve the unused step declaration inspection, and report the method…
picimako May 21, 2024
84f4602
Improve the undefined step inspection
picimako May 21, 2024
b91bd55
Make KotlinPsiClassesLoader.getPsiClasses() JvmStatic and simplify St…
picimako May 21, 2024
0c4ae0e
Remove 'StoryAnnotator'
picimako May 21, 2024
d1d3036
Minor improvements in StoryCompletionContributor
picimako May 21, 2024
5830655
Make the ScanUtils class final
picimako May 21, 2024
2c8ff51
Remove JUnit 4 dependency and split JUnit 5 and JUnit 3 test into sep…
picimako May 21, 2024
e46a1be
Mark a local variable as const
picimako May 21, 2024
eb3595c
Simplify JBehaveStepReferenceProvider
picimako May 21, 2024
a6b57c3
Introduce caching in JBehaveStepsIndex
picimako May 21, 2024
fce2e78
Add Gradle test task include-exclude configuration
picimako May 21, 2024
e694877
Simplify KotlinAnnotationsLoader a little
picimako May 21, 2024
1098565
Minor adjustments in JBehaveUtil
picimako May 21, 2024
c9ba3f5
Cover JBehaveUtil with tests, and improve the code in it
picimako May 22, 2024
9566efc
Add a null check when querying the Ref object in the PSI change listener
picimako May 22, 2024
413b1b7
Add tests for JBehaveJavaStepDefinitionSearch and improve its impleme…
picimako May 22, 2024
5af391d
Increase test coverage of JBehaveUtil. Add a short-circuit condition …
picimako May 22, 2024
a1d8237
Add tests for JBehaveJavaMethodUsageSearcher. Deduplicate ReferencesS…
picimako May 22, 2024
c390735
Add tests and javadoc for JavaStepDefinition. Optimize its implementa…
picimako May 22, 2024
75d1ab8
Add tests for StepPsiReference and StepPsiReferenceContributor. Impro…
picimako May 23, 2024
cb542a7
Remove an unused import
picimako May 23, 2024
3db95d1
Move JBehaveStepsIndex tests to JUnit5 implementation
picimako May 23, 2024
b801437
Update plugin to support IJ-2024.2-EAP.
picimako May 23, 2024
84ab31f
Merge pull request #89 from witspirit/v1.64.0
picimako May 23, 2024
ec800a1
Add caching for the JBehave step reference resolution and Given-When-…
picimako Jun 9, 2024
b58c71f
Rename a few variables, and remove an unnecessary variable creation
picimako Jul 4, 2024
0bd7bf9
Implement a simplified and optimized version of JBehave's PatternVari…
picimako Jul 4, 2024
5c76117
Use already available parent method, if available, for annotations in…
picimako Jul 4, 2024
0b59737
Add some collection related fine-tunings in PatternVariantBuilder
picimako Jul 4, 2024
50a24e3
Deduplicate annotation type retrieval, and StepPatternParser static, …
picimako Jul 4, 2024
9c31207
Lower the number of search scope creations in JBehaveJavaStepDefiniti…
picimako Jul 4, 2024
580ef58
Cache step definition finding results per JBehaveStep in JBehaveSteps…
picimako Jul 4, 2024
c645dff
Add licence NOTICE
picimako Jul 4, 2024
31b53df
Merge pull request #90 from witspirit/1.65.0
picimako Jul 4, 2024
771f13b
Add code documentation to a handful of Kotlin step definitions relate…
picimako Sep 17, 2024
7d6f351
Updated IDE support range to 2023.2.8 - 2024.3-EAP
picimako Sep 17, 2024
348fe56
Update dependencies, GHA workflow and gradle wrapper
picimako Sep 17, 2024
d414cb4
New supported IDE version range: 2023.2.8 - 2024.2.0.2
picimako Sep 17, 2024
fb2dc45
Merge pull request #91 from witspirit/1660
picimako Sep 17, 2024
38218d5
Update project to IJ Platform Gradle Plugin 2.0 and JDK 21
picimako Sep 17, 2024
8a36057
Fix JBehaveStepDefClassPsiChangeListener to no longer fail when it en…
picimako Sep 17, 2024
94fb1e9
Make sure the plugin works with the Kotlin K2 compiler
picimako Sep 18, 2024
b4d898c
Fix a potential exception during highlighting undefined steps
picimako Sep 18, 2024
38c36e0
Remove a couple of deprecated API usage
picimako Sep 18, 2024
0146729
Update JUnit3 test run configuration to use the correct gradle task
picimako Sep 18, 2024
43506dc
Fix JUnit3 gradle task name in GHA workflow
picimako Sep 22, 2024
9411c92
Merge pull request #92 from witspirit/1670
picimako Sep 22, 2024
d8a7dcb
Use the proper name for the kotlin K2 compiler extension
picimako Sep 30, 2024
463468c
Remove unnecessary since-until build versions from the plugin.xml
picimako Sep 30, 2024
1cec47b
Update the Run Verifications run configuration to use the task from t…
picimako Sep 30, 2024
7a3e28e
Merge pull request #93 from witspirit/1671
picimako Sep 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
190 changes: 190 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,190 @@
# GitHub Actions Workflow is created for testing and preparing the plugin release in the following steps:
# - Validate Gradle Wrapper.
# - Run 'test' and 'verifyPlugin' tasks.
# - Run Qodana inspections.
# - Run the 'buildPlugin' task and prepare artifact for further tests.
# - Run the 'runPluginVerifier' task.
# - Create a draft release.
#
# The workflow is triggered on push and pull_request events.
#
# GitHub Actions reference: https://help.github.com/en/actions
#
## JBIJPPTPL

name: Build
on:
# Trigger the workflow on pushes to only the 'main' branch (this avoids duplicate checks being run e.g., for dependabot pull requests)
push:
branches: [ master ]
# Trigger the workflow on any pull request
pull_request:

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:

# Prepare environment and build the plugin
build:
name: Build
runs-on: ubuntu-latest
outputs:
version: ${{ steps.properties.outputs.version }}
changelog: ${{ steps.properties.outputs.changelog }}
pluginVerifierHomeDir: ${{ steps.properties.outputs.pluginVerifierHomeDir }}
steps:

# Check out the current repository
- name: Fetch Sources
uses: actions/checkout@v4

# Validate wrapper
- name: Gradle Wrapper Validation
uses: gradle/actions/wrapper-validation@v3

# Set up Java environment for the next steps
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

# Setup Gradle
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-home-cache-cleanup: true

# Set environment variables
- name: Export Properties
id: properties
shell: bash
run: |
PROPERTIES="$(./gradlew properties --console=plain -q)"
VERSION="$(echo "$PROPERTIES" | grep "^version:" | cut -f2- -d ' ')"
CHANGELOG="$(./gradlew getChangelog --unreleased --no-header --console=plain -q)"

echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "pluginVerifierHomeDir=~/.pluginVerifier" >> $GITHUB_OUTPUT

echo "changelog<<EOF" >> $GITHUB_OUTPUT
echo "$CHANGELOG" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT

# Build plugin
- name: Build plugin
run: ./gradlew buildPlugin

# Prepare plugin archive content for creating artifact
- name: Prepare Plugin Artifact
id: artifact
shell: bash
run: |
cd ${{ github.workspace }}/build/distributions
FILENAME=`ls *.zip`
unzip "$FILENAME" -d content

echo "filename=${FILENAME:0:-4}" >> $GITHUB_OUTPUT

# Store already-built plugin as an artifact for downloading
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ steps.artifact.outputs.filename }}
path: ./build/distributions/content/*/*

# Run tests and upload a code coverage report
test:
name: Test
needs: [ build ]
runs-on: ubuntu-latest
steps:

# Check out the current repository
- name: Fetch Sources
uses: actions/checkout@v4

# Set up Java environment for the next steps
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

# Setup Gradle
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-home-cache-cleanup: true

# Run tests
- name: Run JUnit 5 Tests
run: ./gradlew runTestsInIJCommunity

# Run tests
- name: Run JUnit 5 Tests with K2
run: ./gradlew runTestsWithK2InIJCommunity

# Run tests
- name: Run JUnit 3 Tests
run: ./gradlew runJUnit3TestsInIJCommunity -Pidea.home.path=./intellij-community

# Collect Tests Result of failed tests
- name: Collect Tests Result
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: tests-result
path: ${{ github.workspace }}/build/reports/tests

# Run plugin structure verification along with IntelliJ Plugin Verifier
verify:
name: Verify plugin
needs: [ build ]
runs-on: ubuntu-latest
steps:

# Free GitHub Actions Environment Disk Space
- name: Maximize Build Space
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false
large-packages: false

# Check out the current repository
- name: Fetch Sources
uses: actions/checkout@v4

# Set up Java environment for the next steps
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: zulu
java-version: 17

# Setup Gradle
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-home-cache-cleanup: true

# Cache Plugin Verifier IDEs
- name: Setup Plugin Verifier IDEs Cache
uses: actions/cache@v4
with:
path: ${{ needs.build.outputs.pluginVerifierHomeDir }}/ides
key: plugin-verifier-${{ hashFiles('build/listProductsReleases.txt') }}

# Run Verify Plugin task and IntelliJ Plugin Verifier tool
- name: Run Plugin Verification tasks
run: ./gradlew verifyPlugin -Dplugin.verifier.home.dir=${{ needs.build.outputs.pluginVerifierHomeDir }}

# Collect Plugin Verifier Result
- name: Collect Plugin Verifier Result
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: pluginVerifier-result
path: ${{ github.workspace }}/build/reports/pluginVerifier
61 changes: 61 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# use glob syntax.
syntax: glob
*.ser
*.class
*~
*.bak
*.off
*.old
.DS_Store

# lib'n misc
#lib/
testLib/
file/

# eclipse conf file
.settings
.classpath
.project


# building
/build/
target/
bin/
test-output/
out/

# Exported plugin for deployment
IntelliJBehave.zip

# other scm
.svn
.CVS
.hg*

# switch to regexp syntax.
# syntax: regexp
# ^\.pc/

# IntelliJ
*.iml
*.ipr
*.iws
.idea
.intellijPlatform

# Atlassian Plugin Configuration
atlassian-ide-plugin.xml

# Plugins
/providedLib

# Gradle
.gradle/
#gradle.properties

# Other files
/local.properties
#*.jar
!gradle/wrapper/gradle-wrapper.jar
23 changes: 23 additions & 0 deletions .run/Run Build.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Build" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="buildPlugin" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<method v="2" />
</configuration>
</component>
24 changes: 24 additions & 0 deletions .run/Run IDE with Plugin.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Plugin" type="GradleRunConfiguration" factoryName="Gradle">
<log_file alias="idea.log" path="$PROJECT_DIR$/build/idea-sandbox/system/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="runIde" />
</list>
</option>
<option name="vmOptions" value="" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run Tests - JUnit3.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Tests - JUnit3" type="GradleRunConfiguration" factoryName="Gradle">
<log_file alias="idea.log" path="$PROJECT_DIR$/build/idea-sandbox/system/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="runJUnit3TestsInIJCommunity" />
</list>
</option>
<option name="vmOptions" value="" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run Tests - JUnit5 - K2.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Tests - JUnit5 - K2" type="GradleRunConfiguration" factoryName="Gradle">
<log_file alias="idea.log" path="$PROJECT_DIR$/build/idea-sandbox/system/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="runTestsWithK2InIJCommunity" />
</list>
</option>
<option name="vmOptions" value="" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run Tests - JUnit5.run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run Tests - JUnit5" type="GradleRunConfiguration" factoryName="Gradle">
<log_file alias="idea.log" path="$PROJECT_DIR$/build/idea-sandbox/system/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="runTestsInIJCommunity" />
</list>
</option>
<option name="vmOptions" value="" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
Loading