From 54d3bb86d32627f5e58fc4b5188c0fb911e41dd1 Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 1 Apr 2025 14:17:09 +0800 Subject: [PATCH 01/25] update plugin name --- README.md | 126 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 69 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 7a9a7d2c..85fe1577 100644 --- a/README.md +++ b/README.md @@ -1,78 +1,90 @@ -# Pitest-Gradle +# TestCraft Pro -This is a plugin for IntelliJ IDEA that allows you to run PITest (https://pitest.org/) mutation testing on your Gradle project. +TestCraft Pro is a comprehensive Java testing toolkit for IntelliJ IDEA that enhances test quality through mutation testing, test case management, and assertion validation. ## Features -- Run Pitest on your Java Gradle projects -- View mutation test results in a tool window and navigate to the source code -- Decorate the editor of the source code with mutation test results -## Installation - -1. Download the latest release from the [releases page]() -2. Open IntelliJ IDEA -3. Go to `File` -> `Settings` -> `Plugins` -> `Install Plugin from Disk...` -4. Select the downloaded `.zip` file - -## Usage - -1. Open your junit test file, run the test make sure it is passing -2. Right click on the test file and select `Run PIT Mutation Test` -3. Input the target mutation test class, for example `com.example.MyClass` or `MyClass`, and click `OK` -4. The mutation test will run and the results will be displayed in the `Mutation Tool Window` - -## Screenshots - - -To run the plugin, right click on the test file and select `Run Mutation Test` in the `Unittest Helpers` menu. +### 1. Mutation Testing +- Run PITest mutation testing on both Java Gradle and Maven projects +- View mutation test results in a dedicated tool window +- Navigate directly to mutated source code +- Visual decoration of mutation results in the code editor -![run pitest](./screenshots/1.png) +### 2. Test Case Management +- Automated test case annotation generation +- Test case annotation validation and inspection +- Configurable annotation schemas through settings +- Smart code completion for test annotations +### 3. Test Quality Assurance +- Inspection of test assertions +- Detection of missing assertions in test methods +- Validation of assertion statements +- Configurable assertion checking rules -Input the target mutation test class, for example `com.example.MyClass` or `MyClass`, and click `OK` - -![input target class](./screenshots/2.png) - -It will prompt you with the collected classpath information, click `OK` (you can also click `Cancel` to stop the mutation test) - -![classpath](./screenshots/3.png) - -The mutation test will run; and upon finishing, it will popup a dialog with the verbose output of the mutation test, as well as a button to view the results in the browser - -![mutation test results](./screenshots/4.png) +## Installation -You can also navigate to the `MutationTestHistory` tool window to view the results; -double click on a row to will open the code editor to the class under test, and the editor will be decorated with the mutation test results +1. Open IntelliJ IDEA +2. Go to `Settings/Preferences` → `Plugins` → `Marketplace` +3. Search for "TestCraft Pro" +4. Click `Install` -![mutation test history](./screenshots/5.png) +Alternatively, you can download the latest release from the [releases page]() and install manually: +1. Go to `Settings/Preferences` → `Plugins` → `⚙️` → `Install Plugin from Disk...` +2. Select the downloaded `.zip` file -`MutationTestHistory` tool window also support searching, input the class name and press enter to locate the class; and a second enter will open the code editor to the class under test. +## Usage -![search](./screenshots/6.png) +### Running Mutation Tests +1. Open your JUnit test file +2. Right-click and select `Unittest Helpers` → `Run PIT Mutation Test` +3. Input the target class name (e.g., `com.example.MyClass` or `MyClass`) +4. View results in the `MutationTestHistory` tool window + +### Test Case Management +1. Configure annotation settings in `Settings` → `Unittest Annotation Configuration` +2. Use the annotation inspection to identify missing or incorrect test annotations +3. Right-click in a test file and select `Unittest Helpers` to access annotation tools +4. Use code completion (Ctrl+Space) for quick annotation insertion + +### Assertion Validation +1. Configure assertion rules in `Settings` → `Unittest Assert Check Configuration` +2. The plugin will automatically inspect your test files for: + - Missing assertions + - Invalid assertion usage + - Proper test step documentation + +## Configuration + +### Annotation Settings +- Go to `Settings` → `Unittest Annotation Configuration` +- Configure custom annotation schemas +- Enable/disable automatic import of annotations +- Set annotation validation rules + +### Assertion Settings +- Go to `Settings` → `Unittest Assert Check Configuration` +- Configure assertion validation rules +- Enable/disable specific assertion checks +- Set custom assertion patterns +## Screenshots +![Run TestCraft Pro](./screenshots/1.png) +*Running mutation tests from context menu* +![Mutation Results](./screenshots/4.png) +*Viewing mutation test results* -## Known Issues +![Test History](./screenshots/5.png) +*MutationTestHistory tool window with search capabilities* -- [ ] it cannot find the classpath if the project is not managed by Gradle, click on the Project structure and import the project as Gradle project -- [ ] it cannot find the resource directory if you don't mark the directory as resource root, right click on the directory and mark as resource root +## Contributing -## runPluginVerifier +Contributions are welcome! Please feel free to submit a Pull Request. -```shell -./gradlew runPluginVerifier -``` -``` -2024-10-12T18:50:17 [main] INFO verification - Finished 1 of 8 verifications (in 2.1 s): IC-223.8836.26 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 2 of 8 verifications (in 2.1 s): IC-232.10335.12 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 3 of 8 verifications (in 2.1 s): IC-233.15619.7 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 4 of 8 verifications (in 2.1 s): IC-231.9423.9 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 5 of 8 verifications (in 2.1 s): IC-222.4554.5 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 6 of 8 verifications (in 2.1 s): IC-241.19072.14 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:17 [main] INFO verification - Finished 7 of 8 verifications (in 2.1 s): IC-242.23726.16 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible -2024-10-12T18:50:25 [main] INFO verification - Finished 8 of 8 verifications (in 10.4 s): IC-243.19420.21 against com.github.jaksonlin.pitestintellij:1.0.1-beta: Compatible +## License -``` \ No newline at end of file +This project is licensed under the [Apache 2.0 License](LICENSE). \ No newline at end of file From 33743d160dfe612ac4a9ddc8c4df54b22ded67d9 Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 1 Apr 2025 14:21:28 +0800 Subject: [PATCH 02/25] add liscense --- LICENSE | 190 +++++++++++++++++++++++++ NOTICE | 9 ++ src/main/resources/META-INF/plugin.xml | 73 +++++++--- 3 files changed, 251 insertions(+), 21 deletions(-) create mode 100644 LICENSE create mode 100644 NOTICE diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..e9a7b5d5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,190 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + Copyright 2024 TestCraft Pro + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/NOTICE b/NOTICE new file mode 100644 index 00000000..288b8a0d --- /dev/null +++ b/NOTICE @@ -0,0 +1,9 @@ +TestCraft Pro +Copyright 2024 [Your Name/Organization] + +This product includes software developed by: +- The Apache Software Foundation (http://www.apache.org/) +- JetBrains s.r.o. (IntelliJ Platform) +- JavaParser (https://javaparser.org) +- FasterXML, LLC (Jackson Project) +- JUnit Team (JUnit Library) \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 0bda0453..c8b00a0c 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -1,26 +1,57 @@ - Bundled with PIT 1.16.1 -

- Adds a 'Unittest Helpers' menu to the right-click context menu in the editor, and the `Run Mutation Test` action to the submenu. -
- Adds a 'Mutation Test History' tool window to display the history of mutation tests for each of the `mutated` classes. -
- You can navigate to the source code of the mutated class by searching on the class name with enter key. -
- Adds rendering of the mutation test result on the code editor. -
- Automatic detection of the classpath dependencies for running the mutation test, making use of the Gradle API from the IntelliJ IDEA. -
- Support long classpath for running the mutation test, especially for enterprise projects when there are thousands of classes in the classpath; and even jar files from other locations. -
- Additional classes in resource directory (marked as resource in IDE) are added to the classpath for mutation testing. -

- Usage: Right-click on a JUnit test file and select `Unittest Helpers` -> `Run Mutation Test` to run PIT mutation testing on the test file. -

- ]]>
+ TestCraft Pro is a comprehensive Java testing toolkit that enhances test quality through multiple features: + +
    +
  • Mutation Testing +
      +
    • Run PITest on both Gradle and Maven projects
    • +
    • Visual results in dedicated tool window
    • +
    • Source code navigation and decoration
    • +
    +
  • +
  • Test Case Management +
      +
    • Automated test case annotation generation
    • +
    • Annotation validation and inspection
    • +
    • Smart code completion for annotations
    • +
    +
  • +
  • Test Quality Assurance +
      +
    • Assertion statement validation
    • +
    • Missing assertion detection
    • +
    • Test documentation verification
    • +
    +
  • +
+ ]]> + + 1.0.5 - 2025-04-01 +
    +
  • Added assertion statement validation
  • +
  • Enhanced test quality checks
  • +
  • Added compatibility with IDE version 251
  • +
+ +

1.0.4 - 2025-01-16

+
    +
  • Added compatibility to IDE version 251
  • +
+ +

1.0.3 - 2024-11-14

+
    +
  • Added unit test annotation generation
  • +
  • Added unit test annotation inspection
  • +
+ +

Previous Versions

+
    +
  • Initial PITest integration
  • +
  • Bug fixes and stability improvements
  • +
+ ]]>
1.0.1-beta From 23608a39bc10c2cae73b6d615a392dcdc3138966 Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 1 Apr 2025 14:32:25 +0800 Subject: [PATCH 03/25] new plugin --- CHANGELOG.md | 25 +++++++++++++++++++++- MIGRATION.md | 29 ++++++++++++++++++++++++++ NOTICE | 8 +++++-- README.md | 13 +++++++++++- build.gradle.kts | 11 ++++++++-- gradle.properties | 14 ++++++------- src/main/resources/META-INF/plugin.xml | 8 ++++--- 7 files changed, 92 insertions(+), 16 deletions(-) create mode 100644 MIGRATION.md diff --git a/CHANGELOG.md b/CHANGELOG.md index e2999d17..3fc4397b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,30 @@ com.intellij.modules.json
-# pitest-intellij Changelog +# TestCraft Pro Changelog + +## [1.0.0] - 2025-04-01 +### Project Launch +- Complete rebranding and expansion of functionality +- Migration from MIT to Apache 2.0 License +- New comprehensive test management features + +### Added +- Enhanced test case management system +- Annotation validation and generation +- Assertion statement verification +- Support for both Gradle and Maven projects +- Configurable test quality rules + +### Carried Forward +- All PITest mutation testing capabilities +- Results visualization and navigation +- Editor integration features + +### Changed +- Project name from pitest-gradle to TestCraft Pro +- License from MIT to Apache 2.0 +- Expanded plugin scope beyond mutation testing ## 1.0.0 - 2024-10-12 ### Initial Release diff --git a/MIGRATION.md b/MIGRATION.md new file mode 100644 index 00000000..7326f74c --- /dev/null +++ b/MIGRATION.md @@ -0,0 +1,29 @@ +# Migration Guide: pitest-gradle to TestCraft Pro + +## Overview +This document guides users migrating from pitest-gradle to TestCraft Pro. + +## Changes +1. **Package Name Changes** + - Old: `com.github.jaksonlin.pitestintellij` + - New: `com.github.jaksonlin.testcraftpro` + +2. **Configuration Updates** + - Plugin settings are now under "TestCraft Pro" in IDE settings + - Additional configuration options for new features + +3. **Feature Enhancements** + - All existing PITest features remain available + - New features are automatically available after installation + +## Migration Steps +1. Uninstall pitest-gradle plugin +2. Install TestCraft Pro from JetBrains Marketplace +3. Reconfigure any custom settings in the new interface + +## Backwards Compatibility +- All existing PITest configurations will continue to work +- Existing mutation test results remain compatible + +## Support +For migration assistance, please open an issue in the new repository. \ No newline at end of file diff --git a/NOTICE b/NOTICE index 288b8a0d..40fa427c 100644 --- a/NOTICE +++ b/NOTICE @@ -1,9 +1,13 @@ TestCraft Pro -Copyright 2024 [Your Name/Organization] +Copyright 2024 Jakson Lin This product includes software developed by: - The Apache Software Foundation (http://www.apache.org/) - JetBrains s.r.o. (IntelliJ Platform) - JavaParser (https://javaparser.org) - FasterXML, LLC (Jackson Project) -- JUnit Team (JUnit Library) \ No newline at end of file +- JUnit Team (JUnit Library) + +This product is a derivative work that evolved from pitest-gradle. +The original pitest-gradle was licensed under MIT and has been rewritten +and relicensed as TestCraft Pro under Apache License 2.0. \ No newline at end of file diff --git a/README.md b/README.md index 85fe1577..d0637c32 100644 --- a/README.md +++ b/README.md @@ -87,4 +87,15 @@ Contributions are welcome! Please feel free to submit a Pull Request. ## License -This project is licensed under the [Apache 2.0 License](LICENSE). \ No newline at end of file +This project is licensed under the [Apache 2.0 License](LICENSE). + +## Third-Party Licenses + +This project uses the following open-source libraries: + +- JavaParser (Apache License 2.0) +- Jackson Libraries (Apache License 2.0) +- Kotlinx Serialization (Apache License 2.0) +- JUnit (Eclipse Public License 1.0) + +For full license texts, see the NOTICE file in the project root. \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index b2400e35..315d4723 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -29,10 +29,17 @@ intellij { version.set(providers.gradleProperty("platformVersion")) type.set(providers.gradleProperty("platformType")) - // Plugin Dependencies. Uses `platformPlugins` property from the gradle.properties file. plugins.set(providers.gradleProperty("platformBundledPlugins") .map { it.split(',').map(String::trim).filter(String::isNotEmpty) } - .map { it + listOf("git4idea") } + .map { plugins -> + val untilBuild = providers.gradleProperty("pluginUntilBuild").get() + println("untilBuild: $untilBuild") + if (untilBuild.startsWith("251")) { + plugins + "com.intellij.modules.json" + } else { + plugins + } + } ) } diff --git a/gradle.properties b/gradle.properties index cd4f5ee2..68dd4ea8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,24 +1,24 @@ # IntelliJ Platform Artifacts Repositories -> https://plugins.jetbrains.com/docs/intellij/intellij-artifacts.html -pluginGroup = com.github.jaksonlin.pitestintellij -pluginName = pitest-gradle -pluginRepositoryUrl = https://github.com/jaksonlin/pitest-gradle +pluginGroup = com.github.jaksonlin.testcraftpro +pluginName = TestCraft Pro +pluginRepositoryUrl = https://github.com/jaksonlin/testcraft-pro # SemVer format -> https://semver.org -pluginVersion = 1.0.5 +pluginVersion = 1.0.0 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html pluginSinceBuild = 201 -pluginUntilBuild = 251.* +pluginUntilBuild = 252.* # IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension platformType = IC -platformVersion = 2022.2 +platformVersion = 2024.2.5 # Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html # Example: platformPlugins = com.jetbrains.php:203.4449.22, org.intellij.scala:2023.3.27@EAP platformPlugins = # Example: platformBundledPlugins = com.intellij.java -platformBundledPlugins = com.intellij.java, com.intellij.gradle,com.intellij.java,git4idea +platformBundledPlugins = com.intellij.java, com.intellij.gradle,com.intellij.java,git4idea,com.intellij.modules.json # Gradle Releases -> https://github.com/gradle/gradle/releases gradleVersion = 8.9 diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index c8b00a0c..8ccbc8f3 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -25,6 +25,8 @@ + +

Originally evolved from pitest-gradle, TestCraft Pro has expanded to become a complete testing toolkit while maintaining all mutation testing capabilities.

]]> 1.0.1-beta Jason Lam - com.github.jaksonlin.pitestintellij - Pitest-Gradle - jaksonlin + com.github.jaksonlin.testcraftpro + TestCraft Pro + Jakson Lin com.intellij.modules.platform com.intellij.modules.java From 85688de1ac6a9583d043c45a4850cae08d3c10f3 Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 1 Apr 2025 16:40:16 +0800 Subject: [PATCH 04/25] need check why failed --- .vscode/settings.json | 3 ++- gradle.properties | 2 +- src/main/resources/META-INF/plugin.xml | 22 +++++++++++----------- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 7b016a89..e0120650 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,4 @@ { - "java.compile.nullAnalysis.mode": "automatic" + "java.compile.nullAnalysis.mode": "automatic", + "java.configuration.updateBuildConfiguration": "interactive" } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 68dd4ea8..1ca795e4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,7 +18,7 @@ platformVersion = 2024.2.5 # Example: platformPlugins = com.jetbrains.php:203.4449.22, org.intellij.scala:2023.3.27@EAP platformPlugins = # Example: platformBundledPlugins = com.intellij.java -platformBundledPlugins = com.intellij.java, com.intellij.gradle,com.intellij.java,git4idea,com.intellij.modules.json +platformBundledPlugins = com.intellij.java, com.intellij.gradle,com.intellij.java,Git4Idea,com.intellij.modules.json # Gradle Releases -> https://github.com/gradle/gradle/releases gradleVersion = 8.9 diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 8ccbc8f3..279b3d3b 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -70,19 +70,19 @@ messages.MyBundle - + + implementationClass="com.github.jaksonlin.testcraftpro.completions.AnnotationCompletionContributor"/> - + @@ -110,15 +110,15 @@ - - From 0cf237594cd9cc30134b35d2ea410bfee9f9bb3a Mon Sep 17 00:00:00 2001 From: zhislin Date: Sun, 27 Apr 2025 21:10:39 +0800 Subject: [PATCH 05/25] refact dir and ns --- docs/features/test-case-tracking.md | 155 ++++++++++++++++++ docs/images/test-management/1.png | Bin 0 -> 7180 bytes docs/images/test-management/10.png | Bin 0 -> 18201 bytes docs/images/test-management/11.png | Bin 0 -> 19695 bytes docs/images/test-management/12.png | Bin 0 -> 168046 bytes docs/images/test-management/13.png | Bin 0 -> 155286 bytes docs/images/test-management/14.png | Bin 0 -> 127088 bytes docs/images/test-management/15.png | Bin 0 -> 12403 bytes docs/images/test-management/16.png | Bin 0 -> 53272 bytes docs/images/test-management/17.png | Bin 0 -> 90344 bytes docs/images/test-management/18.png | Bin 0 -> 55932 bytes docs/images/test-management/19.png | Bin 0 -> 99672 bytes docs/images/test-management/2.png | Bin 0 -> 189600 bytes docs/images/test-management/20.png | Bin 0 -> 49027 bytes docs/images/test-management/21.png | Bin 0 -> 10682 bytes docs/images/test-management/22.png | Bin 0 -> 168405 bytes docs/images/test-management/23.png | Bin 0 -> 49265 bytes docs/images/test-management/3.png | Bin 0 -> 45369 bytes docs/images/test-management/4.png | Bin 0 -> 49745 bytes docs/images/test-management/5.png | Bin 0 -> 79655 bytes docs/images/test-management/6.png | Bin 0 -> 74272 bytes docs/images/test-management/7.png | Bin 0 -> 1764 bytes docs/images/test-management/8.png | Bin 0 -> 153769 bytes docs/images/test-management/9.png | Bin 0 -> 38647 bytes gradle.properties | 8 +- settings.gradle.kts | 2 +- .../MyBundle.java | 2 +- .../GenerateAnnotationCommandAction.java | 10 +- .../actions/RunCaseAnnoationCheckAction.java | 10 +- .../actions/RunPitestAction.java | 4 +- .../RunTestFileAnnoationCheckAction.java | 6 +- .../annotations/AnnotationFieldConfig.java | 2 +- .../annotations/AnnotationFieldType.java | 2 +- .../annotations/AnnotationParser.java | 4 +- .../annotations/AnnotationSchema.java | 2 +- .../annotations/AnnotationValidator.java | 2 +- .../annotations/DefaultValue.java | 2 +- .../annotations/FieldValidation.java | 2 +- .../annotations/UnittestAnnotationConfig.java | 2 +- .../annotations/ValidationMode.java | 2 +- .../annotations/ValueProvider.java | 2 +- .../annotations/ValueProviderType.java | 2 +- .../CommandCancellationException.java | 2 +- .../pitest/BuildPitestCommandCommand.java | 4 +- .../pitest/HandlePitestResultCommand.java | 8 +- .../commands/pitest/PitestCommand.java | 12 +- .../pitest/PrepareEnvironmentCommand.java | 10 +- .../commands/pitest/RunPitestCommand.java | 10 +- .../commands/pitest/StoreHistoryCommand.java | 4 +- .../CheckAnnotationCommand.java | 10 +- .../CheckMethodDataCommand.java | 4 +- .../GenerateAnnotationCommand.java | 16 +- .../UnittestCaseCheckCommand.java | 10 +- .../UnittestFileInspectorCommand.java | 8 +- .../AnnotationCompletionContributor.java | 10 +- ...stomAnnotationCompletionLookupElement.java | 4 +- .../components/ChatPanel.java | 2 +- .../components/LLMResponsePanel.java | 4 +- .../components/LLMSuggestionUIComponent.java | 10 +- .../MutationToolWindowUIComponent.java | 6 +- .../components/ObservableTree.java | 8 +- .../components/PitestOutputDialog.java | 2 +- .../components/PremiumSettingsComponent.java | 4 +- .../context/CaseCheckContext.java | 10 +- .../context/PitestContext.java | 8 +- .../context/TestPoints.java | 2 +- .../context/UnittestCase.java | 2 +- .../context/UnittestCaseInfoContext.java | 4 +- .../context/UnittestCaseStatus.java | 2 +- .../context/UnittestMethodContext.java | 2 +- .../inspectors/UnittestInspector.java | 8 +- .../license/PremiumManager.java | 2 +- .../MyApplicationActivationListener.java | 2 +- .../mediators/ILLMChatClient.java | 2 +- .../mediators/ILLMChatMediator.java | 6 +- .../mediators/IMutationMediator.java | 4 +- .../mediators/IMutationReportUI.java | 4 +- .../mediators/LLMChatMediatorImpl.java | 8 +- .../mediators/MutationMediatorImpl.java | 6 +- .../observers/BasicEventObserver.java | 2 +- .../observers/ObserverBase.java | 2 +- .../processors/UnittestMethodProcessor.java | 4 +- .../services/AnnotationConfigService.java | 4 +- .../AnnotationValueProviderService.java | 10 +- .../InvalidTestCaseConfigService.java | 4 +- .../services/LLMService.java | 20 +-- .../services/PitestService.java | 10 +- .../services/RunHistoryManagerService.java | 10 +- .../settings/AnnotationSettingsComponent.java | 4 +- .../AnnotationSettingsConfigurable.java | 6 +- .../InvalidTestCaseSettingsComponent.java | 4 +- .../InvalidTestCaseSettingsConfigurable.java | 4 +- .../settings/OllamaSettingsComponent.java | 6 +- .../settings/OllamaSettingsConfigurable.java | 6 +- .../TestCraftSettingsConfigurable.java | 6 +- .../LLMSuggestionsToolWindowFactory.java | 8 +- .../toolWindow/MutationToolWindowFactory.java | 4 +- .../util/Blocks.java | 2 +- .../util/ClassFileInfo.java | 2 +- .../util/FileUtils.java | 2 +- .../util/GitCommitInfo.java | 2 +- .../util/GitUserInfo.java | 2 +- .../util/GitUtil.java | 2 +- .../util/GradleUtils.java | 2 +- .../util/Indexes.java | 2 +- .../util/JavaFileProcessor.java | 2 +- .../util/Mutation.java | 2 +- .../util/MutationReportParser.java | 2 +- .../util/Mutations.java | 2 +- .../util/OllamaClient.java | 2 +- .../util/Pair.java | 2 +- .../util/ProcessExecutor.java | 2 +- .../util/ProcessResult.java | 2 +- .../util/PsiUtil.java | 2 +- .../util/TargetClassInfo.java | 2 +- .../LLMSuggestionUIComponentViewModel.java | 10 +- .../MutationToolWindowViewModel.java | 10 +- .../MutationTreeMediatorViewModel.java | 16 +- src/main/resources/META-INF/plugin.xml | 58 ++++--- 119 files changed, 426 insertions(+), 259 deletions(-) create mode 100644 docs/features/test-case-tracking.md create mode 100644 docs/images/test-management/1.png create mode 100644 docs/images/test-management/10.png create mode 100644 docs/images/test-management/11.png create mode 100644 docs/images/test-management/12.png create mode 100644 docs/images/test-management/13.png create mode 100644 docs/images/test-management/14.png create mode 100644 docs/images/test-management/15.png create mode 100644 docs/images/test-management/16.png create mode 100644 docs/images/test-management/17.png create mode 100644 docs/images/test-management/18.png create mode 100644 docs/images/test-management/19.png create mode 100644 docs/images/test-management/2.png create mode 100644 docs/images/test-management/20.png create mode 100644 docs/images/test-management/21.png create mode 100644 docs/images/test-management/22.png create mode 100644 docs/images/test-management/23.png create mode 100644 docs/images/test-management/3.png create mode 100644 docs/images/test-management/4.png create mode 100644 docs/images/test-management/5.png create mode 100644 docs/images/test-management/6.png create mode 100644 docs/images/test-management/7.png create mode 100644 docs/images/test-management/8.png create mode 100644 docs/images/test-management/9.png rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/MyBundle.java (95%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/actions/GenerateAnnotationCommandAction.java (73%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/actions/RunCaseAnnoationCheckAction.java (72%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/actions/RunPitestAction.java (89%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/actions/RunTestFileAnnoationCheckAction.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/AnnotationFieldConfig.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/AnnotationFieldType.java (52%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/AnnotationParser.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/AnnotationSchema.java (99%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/AnnotationValidator.java (99%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/DefaultValue.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/FieldValidation.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/UnittestAnnotationConfig.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/ValidationMode.java (65%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/ValueProvider.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/annotations/ValueProviderType.java (82%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/CommandCancellationException.java (73%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/BuildPitestCommandCommand.java (95%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/HandlePitestResultCommand.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/PitestCommand.java (85%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/PrepareEnvironmentCommand.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/RunPitestCommand.java (85%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/pitest/StoreHistoryCommand.java (71%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/unittestannotations/CheckAnnotationCommand.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/unittestannotations/CheckMethodDataCommand.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/unittestannotations/GenerateAnnotationCommand.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/unittestannotations/UnittestCaseCheckCommand.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/commands/unittestannotations/UnittestFileInspectorCommand.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/completions/AnnotationCompletionContributor.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/completions/CustomAnnotationCompletionLookupElement.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/ChatPanel.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/LLMResponsePanel.java (99%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/LLMSuggestionUIComponent.java (95%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/MutationToolWindowUIComponent.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/ObservableTree.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/PitestOutputDialog.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/components/PremiumSettingsComponent.java (86%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/CaseCheckContext.java (84%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/PitestContext.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/TestPoints.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/UnittestCase.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/UnittestCaseInfoContext.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/UnittestCaseStatus.java (56%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/context/UnittestMethodContext.java (89%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/inspectors/UnittestInspector.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/license/PremiumManager.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/listeners/MyApplicationActivationListener.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/ILLMChatClient.java (66%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/ILLMChatMediator.java (72%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/IMutationMediator.java (64%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/IMutationReportUI.java (62%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/LLMChatMediatorImpl.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/mediators/MutationMediatorImpl.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/observers/BasicEventObserver.java (64%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/observers/ObserverBase.java (91%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/processors/UnittestMethodProcessor.java (85%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/AnnotationConfigService.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/AnnotationValueProviderService.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/InvalidTestCaseConfigService.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/LLMService.java (88%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/PitestService.java (91%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/services/RunHistoryManagerService.java (92%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/AnnotationSettingsComponent.java (99%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/AnnotationSettingsConfigurable.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/InvalidTestCaseSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/InvalidTestCaseSettingsConfigurable.java (94%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/OllamaSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/OllamaSettingsConfigurable.java (95%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/settings/TestCraftSettingsConfigurable.java (92%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/toolWindow/LLMSuggestionsToolWindowFactory.java (84%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/toolWindow/MutationToolWindowFactory.java (87%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/Blocks.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/ClassFileInfo.java (92%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/FileUtils.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/GitCommitInfo.java (92%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/GitUserInfo.java (92%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/GitUtil.java (99%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/GradleUtils.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/Indexes.java (90%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/JavaFileProcessor.java (97%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/Mutation.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/MutationReportParser.java (95%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/Mutations.java (93%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/OllamaClient.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/Pair.java (88%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/ProcessExecutor.java (98%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/ProcessResult.java (91%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/PsiUtil.java (96%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/util/TargetClassInfo.java (88%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/viewmodels/LLMSuggestionUIComponentViewModel.java (86%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/viewmodels/MutationToolWindowViewModel.java (84%) rename src/main/java/com/github/jaksonlin/{pitestintellij => testcraft}/viewmodels/MutationTreeMediatorViewModel.java (94%) diff --git a/docs/features/test-case-tracking.md b/docs/features/test-case-tracking.md new file mode 100644 index 00000000..927d7219 --- /dev/null +++ b/docs/features/test-case-tracking.md @@ -0,0 +1,155 @@ +# 测试用例全局追踪功能需求计划 + +## 概述 +TestCraft插件计划增强测试用例管理功能,实现全局追踪能力,帮助团队更好地管理和维护测试用例。 + +## 当前功能 +- ✅ 测试用例注解管理 + - 自定义测试用例注解(@TestCase) + - 可配置注解字段(作者、标题、目标类、目标方法等) + - 测试点(TestPoints)标记 + - 测试状态管理(TODO, DONE, BROKEN, DEPRECATED) + +- ✅ 测试用例验证 + - 检查测试方法注解完整性 + - 验证测试断言有效性 + - 检查测试文档完整性(步骤和断言注释) + +- ✅ 测试用例生成 + - 自动生成测试用例注解 + - 智能代码补全 + +## 计划功能 + +### 1. 测试用例索引功能 +- [ ] 建立测试用例全局索引 + - 实现测试用例的快速索引建立 + - 支持增量更新 + - 提供索引重建机制 + +- [ ] 多维度搜索 + - 按类名搜索 + - 按方法名搜索 + - 按状态搜索 + - 按测试点搜索 + - 按作者搜索 + - 按时间范围搜索 + +- [ ] 统计和分析 + - 测试用例数量统计 + - 测试用例状态分布 + - 测试点覆盖分析 + - 测试用例质量评分 + +### 2. 测试用例关联 +- [ ] 需求关联 + - 支持与需求ID关联 + - 需求覆盖率分析 + - 未覆盖需求识别 + +- [ ] 缺陷关联 + - 支持与缺陷ID关联 + - 缺陷修复验证追踪 + - 回归测试用例识别 + +- [ ] 依赖关系分析 + - 测试用例间依赖关系 + - 测试用例与代码依赖关系 + - 依赖变更影响分析 + +### 3. 测试用例报告 +- [ ] 覆盖率报告 + - 测试用例覆盖率统计 + - 代码覆盖率分析 + - 分支覆盖率分析 + +- [ ] 质量分析报告 + - 测试用例完整性评估 + - 测试用例有效性分析 + - 测试用例维护性评分 + +- [ ] 执行历史追踪 + - 测试用例执行记录 + - 执行结果分析 + - 失败模式识别 + +### 4. 测试用例导航 +- [ ] 快速导航 + - 测试用例跳转 + - 相关测试用例推荐 + - 测试用例分组浏览 + +- [ ] 批量操作 + - 批量状态更新 + - 批量标签管理 + - 批量导出/导入 + +- [ ] 重构支持 + - 测试用例重命名 + - 测试用例移动 + - 测试用例合并/拆分 + +## 优先级规划 + +### 第一阶段(基础功能) +1. 测试用例全局索引 +2. 多维度搜索 +3. 基础统计功能 + +### 第二阶段(增强功能) +1. 需求关联 +2. 缺陷关联 +3. 覆盖率报告 + +### 第三阶段(高级功能) +1. 依赖关系分析 +2. 质量分析报告 +3. 执行历史追踪 + +### 第四阶段(优化功能) +1. 快速导航 +2. 批量操作 +3. 重构支持 + +## 技术实现要点 +1. 索引存储 + - 使用本地文件系统存储索引 + - 考虑使用轻量级数据库 + - 实现增量更新机制 + +2. 性能优化 + - 索引建立优化 + - 搜索性能优化 + - 内存使用优化 + +3. 用户体验 + - 提供进度反馈 + - 支持取消操作 + - 错误处理和恢复 + +## 里程碑计划 +- M1: 完成基础索引功能 +- M2: 实现多维度搜索 +- M3: 完成需求关联功能 +- M4: 实现覆盖率报告 +- M5: 完成高级分析功能 +- M6: 实现优化功能 + +## 风险评估 +1. 性能风险 + - 大型项目索引建立可能耗时 + - 搜索性能可能受影响 + +2. 兼容性风险 + - 不同IDE版本的兼容性 + - 不同项目结构的兼容性 + +3. 维护风险 + - 索引数据一致性维护 + - 功能扩展的复杂性 + +## 后续计划 +1. 用户反馈收集 +2. 性能优化 +3. 功能迭代 +4. 文档完善 \ No newline at end of file diff --git a/docs/images/test-management/1.png b/docs/images/test-management/1.png new file mode 100644 index 0000000000000000000000000000000000000000..6e538f17697267a7744855c48ce6fa06f65cbcce GIT binary patch literal 7180 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 NX{cx^mngmp`Y-d}%NhUx literal 0 HcmV?d00001 diff --git a/docs/images/test-management/10.png b/docs/images/test-management/10.png new file mode 100644 index 0000000000000000000000000000000000000000..b17811610160be176b3bda41b70a2b38d3804a49 GIT binary patch literal 18201 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%0DH)%xe)MC)9j59zIUrgdRuKkIAKkA$%A7 zZQ<1vNoxnV@H*3ab<6B}qNj!+C@*pJT@1h#!(7Rx6ze=aM+axV zv?^otZ>J>0Cxok4r>K6T%zVAaXW!Rd-P)GTru6c6ni#ks&*y?mYKW@$Z&6foLn?*Q zkWOrCS*I0^W$2xDgvQTET)h1T25$H)G!qMs7}F|BlRh&!I=YoI#yEF%O2~<#Vk|2} z*%3SWUv%3}GP1Te_Ca<~LT|ra!y~XIyBzE3ySV);m4yysMFMN+j9NOQ4E1O?>9|l> z99(=aL+ocL)L zYSdPCnU~WDs0H|wrmwZ(Q$2Vwrc~(a>%^R70Oktsg7@~0tDDe&dKe={LkF>GWf4v?!DQ_P=LhSR@I-aU@VfZsXDai$Z*Ti#GGsVRKsdW28Z&;W|+ z6EfG+>#gT_hiMD>=Yh5hhqm^P%6&C%g{*ZvW^ zA`}x(BadTo2eG>J?oLe>P-_<*O zPL?Rv-CR;4Sr^OwZ79tqdnl9?{Kx@E!JO*R+569e#&$VA+_YC^TlFePmu|7?ieb${ zA;bHK?~l7I^=h{Zq>L^&HuE`3ZWtQ9QGOs^mW>XB(Ap>~q4V;F@`PGeNW2xh0;Tm( z!E9%RPKLnoV@s4#K7Za1`Qad>9z$dbcD}&#uL#}~B# z8e})?WFl|v`1XTKvj)LJX)W9GVDaZ%-d9|&uwxZl!1Z#?eo6pvG1sxGd(})Sk zvLlnSJ$Y!q2vS5f%;lRN=qmx$y54!oiAND zK+#h_%}irX%WN6ppA=*((5W0uc%9&Our(sCtZA95!3_mL6(JHT$YXTOv|soE_y%vZ zn9ifLbdxlKyeQdB8U4T6kq7va!QIOr@t>#Dv(m(8Myg7RBz~J1y>r?W-OrBiH&0R4 z)mO6iWk*VXz)so0fHKJHE=@lbC+I250fBs07fwsTsv}j5lvHfEBAxi{=)J1_FWld> zm8F4_YN=U#Lf=u91{nBZZl(E|#}%U`A4y+}aZLif^o~)yi+` zQkHxiB`Z6|FfuOFW8?(Bi3G40{@r^i2L8~;N=L;?0b(fym+1Z$r+Sdo;!WPK(mt9d zO;sBDO)kxlpF}leh`m9iBM59Y!^SQ$!P=phhZJb2#cL+S^nH;9NyNqJ$?3aui!uuc zFR=Eiej2VWDJZE+fR2jwp1i}qVFRRSD#xXUj2wTp`9wwE9+7oy`@X`RGsRIX@e^%X zNg=JK1m*|(nZy7&^yIT?yf_KTIO8$`dpT)`IcPo)MwW)CstLz@A&!~`m#R*(c+2dI z_%bC()G2AMK_v$#a0I4vKV)5c4;-z|FKi4gYSPHieoVuTzZ_BKUlp*jvx4;r(RFiw zbu?0=?Ar26kJb9fC-eP#m^cR$cZI)B zL3>4-2A^QRs0y5vkf0JFCpV%LDV48zraCTys#sCjN{=c6TNFqbT4Ug-Q}y$P{3)4| zlSxYDN`_cO|BXIk0Y z71!3rM?AmZd8@y!!_ClH{q4%eSwA{>DCl=4U}bNU*IKF0S6uo9*P#$Hv?YmR}lIHz`Ay=dss%F3o&^u(e3QagvZOa@$Hl&SWd^Z&Sd z>!>!muzS0Tv`}1&6n7}@9!PL^EAFMZLvgnN#ogWAN(oTBxI+mZT!Zt=^FGhJ*86?` zXC`aToSAdxzW2U%Xgak-7Q5LGJf?~KR)7!hFazrt?bN>5^J)9@2ROM11U^4PEV=!K zO>#34ZF`_#@^%HKTe_luUNmVdlM)(O^`B_s_LWZ~^_pZ^$1WBt_b-nVguGEN>ZjLIwL1!cnOC(?T??Njh7ONWk=J^%eR(NH)m)=}25Z40XCsvh{ z!g8zo7M+-TW8wuYE***109?Aors>kJsg)W=5JxxztkD8IPFT09^^Mwo>}s$K_$h^t z`9*%eBb2K1Y+5&YiF;PA55&!L&#B;Uvqf*8Aeh&`NmKqMcw0?9;x1yi+ptT>4!_~7X*4}!fu%Se=5g1({HljAF9M^ zJ&A366J=wMg*gs4s0@qA5xuzuDC5#V%7P*Bu7Lxu!3pwSmiESt zRowp5%TU^49etu*Up4ea$GlXZ8S+7iccay4FmF8&Mt!a)W!E$bu9CPK+fh@S+4c@N zD+B0O?ZIYv@q28DmXj?kxR&0Dc>S!~J@)E|e~p(no($*j4;-a8FrNJFqIqMq(PG!y z0DAIuy$Gyu@_S-I6@EOfW_;{JbJf97d|5kn!tR|Hk%QhKf(Zq>e5vxxRe+4cpUtYe zM0Ep66$?tY$13^Kc@9jYwcd_w5v2PPo#oWLo{|h0OqcQFI%fmdAZXpYeH}iflc@B? zMC3|%^U!Ym&-8uv@v$`c!5*R+)6mVK2)~EB^c>`ue~S8^sy|#|;~}~L9Q@0yhZA%O zZ%)8g8UHzs@ZfnCS`2(Sn>0Rk#ZEwQ$&85fT%(1o&{>{#6Wc>&MDW*zrga!#qBY2JAC zNd<3vRPos5T_2pu4xEiAu45rvTk4RiBNwhhEYdXjgFn<7*1eIJ74y@kjluD{D`FZ_ zNC7*dPQw2dC3^?`G@% zIDdB?bSX-5eXZZwlogck3Lo~|P3psN$PxkZ(?##foU--EzTTC0d!-5c;>|bEPf@*_ zT2Cg`pgu-)m6Lo!k~~xegu%P`DpG|S5gNgNSbQX$l8C|3wbjkSMn|gfmd#zPPceM+ zmCc(+-If{>4ucY&4&O}BW2ra$r(P}R0Iv8-Ae z?^|gcA5C(S6Bud6t}LXKDIA9h`DW}RgIANCODLh`@&cccY2(*9`XLX*f_hPn$;F$y zbln(!vU(;V+S^Y_8oD9+y2*Hk$@jb!{^8041HLTV0+hO?pen}lVUJX1kBokONykd! z$LpD~8G2L70d;+?=(1h!+k1q3t1-mNAO?)v~E6N}q=Ki2z7~pRF3L zsGO~9K++Y?m?Sx}nzJvQFIKl8G?;t1@Nz?7QugT_@!1qATIcM+>0CN$cx-R6%Cy1B zx#p&lx*K;)mDC%46U3X|?3-C|UIG@4O><+<*vcOD>jEk?jJVHy9FY51q z^JjAlpz3OBHh!Wg>EGoqj}+bvg)?!)G(tJvVXJ|LepB&^CP(Kpdfn6Qe`Tg(D2uLs zA|pOebS&g%pVN@E&?J@_dV6Wls*HoBbfx^UO{R>xs2HqeASdZd!+xfdl#Cajl`W?3 zDEMCOgh445P%)I}Q1&4#4z!8)s7@6pZAq^)yNVVQ&B4X2eBx?lcC*vOElQjM$hqg|Zsf%6gb_~nT?s@_qv7DK@Py~ZDV!#s$;}vCXSlhTC zqtP`IlG3G3Y#1X@Ra!~>;iJxU~B975v5FXaMBDDZxa z9i#Acqd5akn;;95sZuuw#L!2GROFl>=(#Ic!rO!`RZ`2W6g7aHN|CIzD zsXL*BDsPW`gX8dd(jm>eW9tKH*40Pl>-7YMBJ{Y+HY{Ik=ld1=a6hk)D@^T-zbc!V zuFJ6Mmu=S(JcvKM@U8ukvD9#TP3|R|7+Ok-wD4198txg+`HSmCkLr!Z<2J39+^A;s zryHrQDGvYM+cVb9DvjX9tjO?4P|4o(m@lI$>wx6rW>CAr@2f17X1aG?z$rwtBfJRs z!C_FfOZ1Gim9v}o{t4Y{#4-iI2BalDS>89)$)g;VwNhbgn2wTHik&h{jLo?*CLvL9 z()_^w5=!Elowpa}u8zm~xO&MN1K!1cbOIWz>?e2ko|&ce6g1R*&kO`Gi@Y@BX;RI` ziW$r8S6PsAu%;KtBG(PduFW*u`7uC5xL;7vkTSH$P;5b$mY!x}V-Z@GW^I9#ZnZ~h zVr3IsR;=HMM0JC*mYt>i&>dQF`lUq9P3c8rWH>Qc{uxrUiY`Yz|J}8vBPIgji%~qRH7fdHMS;57DM^ zs2Vjazwq2`phQqJ(jI@P1N1{$jZ9IUZy6BcigX5I5vY}WKy3LduwF4=kMcqDyYYX- z&f0~n>`0>IIEG|rQ`VDK(ZkOwPpI6DymTEs$l2@VY zoG?z+?CDFcL{4YfsySuA^`Jt7sfbSn~Hui}VYsKl{FpQnYI8 zyyEU^Jor`d0Ma$Dgf)FRdno}oclAd@>mfaJ>uF8Q3x_-Ef2G8yVFmCXONzAz)MHzqha#e!OX$kfFgzgKkN=b>{5O zlBEa28Fl3hRT~H~iPAT1E;q|uJu3~e>%j{Zqug6eOM-#>yj(nb4A9`(sa z0XeDGgxUfA9b)H**otEB{Ora{Cq|}71WbZbSls{sh%mWr1)ZekwNPfqgAL~dIZx-J z`1OyQUCCtZ^2_p)(nDoU9v{Oi_KK>gQT>hl&ynwjoV5SI02xCrXqVGH>p)2 zUUl_*lqJxTXCZkj3d%_~y}60t(x^J$T-_s(8e70@V`cJ-{TwJMf%*ZJf~zZYr)*g7)VD;w?2{S`eLctWj%rhh@X)7UBQ$o&{VY1iF z2YjHdn{Dc9o*Xjk+8n1QnIl@98x9G{890m#pp5O=!wUq;EyFIuXh(CbWyWtuweYJH0w7ZS2J?PARdt zG_*DKj%j3sxtg`Ek#gX#2-67D=otFc%JN9ZvEsXW=oyaAD_vpnBFX64e$zh{QEzkt zC1t9QOl}NNjn^pOF3Or2qSDatw?f?IZViQ1c%({t_XxyR{|ew-5h)d$%Kc9!Pum2- z`tlcE2wlIp345})fw9QC3{&A?Am9YM7Y1pabnM3{OI3hXJQD75*A|bvzI!j&QqM>i zm!7+K58ZT5MA*^#^I<}pD6I>xkcYI*aCM16-O(B6gT0U{OYo#HPzCUP)%g=S`SZ=< z!@kc;8F?#0b6fYgzNq&f-0AlBjdr(gz8_U7SPbY6G1}!7RR;&2%T7to{*J(8^;LgK zRd7Td5?N}+#S)dc_15a^6nB57)N{B;q%E4Z|vRQu3@JjKrE6Fd2-cnZX$^Ys-!8j~2eT+XTs@hNJ9VWiPhWs<^bCEOE0@T_9VAxWkPd=x9qLPEQH!ZO+{12 zavkOM`;R1~$91zt0XY;o8?yqh8oL4WN`EpbHRWe>=ZV<$>=sBr*nObm3411mSR!j0 zaU1YlJc{^MRYgZ9$Tms0!ApX4pmDZ>53E`vixeO(zdXk z9{u?@W$2RZkUdEOH`^PdM8@PaR|SBsvvpcIwb%(IPfhyV02)bv%<#LCG@`dN3NFgY zm?1fFSUHXO8rWB~mu_#8oH3en&U$+6_RtML@2tN1JajoQfkR zvRQX3e@a6}{&!)%OL!7hbuV2ooX~X#bky!+&VR%W;R^2LfjTZ>pCYh z)5*u{={v%-6t~BMCQ&kABFtHP${U_^N6lmwd9r5_|2J~gi@5&rxrW%>^315vfS^3vtp5=zWSQ8_zl zL0rhfuXl_i94O~ky?QtxVrYK)0r$vFLrF?-&|C35RCPDBMDnseI_ijguv0zN z>j>5(^W3Uv_c3D{?O zY35o*&n=5wp7@6_+DekMlt>q9=N&lJNGNZzk+tQ8WTRHA_xNXz%1S@02vRf$y_m91 zM$yog#X?uWgA5d@85+uZ6~2}RVjiTJUNQMqT!o>0k-QI8RGC{) zV#cXge?E?3dz8F?AeMqiBO(Fjx|lkmO{Yv+5NF5P!bgo^DzMM5hoZ ztI?>0ap#2(+`W^+79H$~`8oA+-~jxUDgus~0PqJlyc=SS@HTn&Me}>9j#0y@kwW{Q zVZczYl>mn!55i(rl}&{gH6f$J_~) z5TFaS9#Z^eqD~`e*<|e4T6>QSo~?tZI7t zu%8qA5S4{7Gke_b*cZdd^F&ojKe2HYrL;uHV(_?P6(;9X#l=-vUaL{z()IsMQ5~GR zBVI;`&yGlHy*m|UzGKDoM(2QVnnDr{m4T9K6s%eTS0^QltBWSy?ip39q_n!;L;|Tr z)aoT56PHJ778#g?I5CjAt;&?-$f2&OVPtN6jiqDxFgue|nIw4J;JlBmIw9}ODU&uK zc3%mgOBQ2)vTs-ZiIXKrEJM^S3SG2HH*NH^KphBnwof!e2S6bgYtU9VJM8_;%IRg<69Sh+Hkdyya_vz7FURU z;xPYf78<~9#WveaJ%(;(n?hr9e=cYEp5nVzTay61CWW*1S`JBPPu8bu+~M{N2D#Xu z`Hny$R{_<7!Bit1O?-~Dtc+s5@o)zE%&Axk8>jqLXnrv*>=%bMd8&!$t=n1Rz}Dws zpoR5>mK=3B7tmCUD+GOYW{1v1T@}}L0W7&=k}xMxCl*OYe)2^&)O*N@xK6-n zPsd1k0MXXUIln|{;agP-LHljJZQw|)8>CqFkx=C!c8c$+BeyODJ4Z$0Yvpr+CFNbb zGPk^1`KC1XSc17r4-;KQZrFA*p7a`bBB9;D2(g^F8o9GcU52{?7d(cui#}UJP(}ob zXhewCeUC!dvSa8vNW4UB|90+A?{kZ3*HH?T7-I^!0Z0q%^zYX^c9>yFQ?yWT(qz59 zzccw$CA~{;WJR2iI)t6>eQg0b#KCo4hs+S~jQ zw;>oiZ`Y&_${ai!YX7jb9C;7iUyB@zFuBSLO~8&hyDmnBCuA0P3~Qw-DJwXkDTagh zYuFM#GtPjIsT?`F`8K)OB+irl~!xk!c(~i~4-BksB(ZXOXS{yr?4S{z=p#%xPych|x02DZwYdTfRUf?o!^8tSGQ|G2Q)x z_WPgRsAqZ&eS~{drsxXXvz6()e<-zxyk*y57v+h&i2vb3f7qb^C_k7j3=w6s4qlJ_ z_FuG?$Bh@5Ui10kwbO++^r{wjpx`1~me&`0p(bQ^qOyz;i&rBnEZw)ciI;TW)8jEQ z<|<+%uimRZ-e!HU!A?H^+(Volc}^=ZLG8psEuhzDt6lM| znd6xu6ngu2)=e1uymlv#(d&50?`s*}`T6H}3`-r$<5k}xH~V*yB@Ta>Rf#7J)^5-& zacNIRy2)!c*>8IwugQAD@AtRcfI(7K++~e5#ZF!s%)@8!U|FB;>6#2jjaVG`?hi%B z>PaQ*5n!3x-u_9SqkH*@R2l}n)$8MIcj>0x;NV{(qbo9Dcy)Bgz2|y#nBKct+l5JO zN)#ogyiUHHKR-Xg-Pl=S3ry<-MKy6f2tw2gEi<+@*i6d_85U-><>QgMwB~We9X{8rTZ+&`YO+n4}t+L_Na7jL^r8i}+X3DPHYao`nLfNaTEeDs1 zIBXL!O^A~+6*U)9MS#bxuTw&QD@LowX`Np7&HGly&n};gAOc5^u#oV9kTKezXv0sH$(ob?ypi49dXNL1s z?x7)qGAZ=kxL&mYO7kg#|G=bC!sGE(It>+ia1)p*%qevls8xRF$J4(}j0a41ORd(R zWHACF3EK+1Bxp4Puza0?M=Lo}Tk@b1VteOY_HgeWoH|ay**fJr=2$EV*N-e$Jp7YV zJCmXQ=|D{#*6Q9I;DRvCoaHY%f@DoVtOTL<_3!Z4FIILxdg~Yj(qS?v*a-kv=A_ahh8Mn0 zI2D4xQSQROAGP}rXNmM4w{Pz0RMu933f8RnSVfm836zFI>M>Qd-k!r&lKhKli-l%8 zm^k>+4E3qaz2dsIkqkDzN|K(a430%yS4tdQJmY`%UKBBuEsQ8EjB#d6N*NQyb( zN%n1Cy6|F=V~eYc3rbQYcG}v1Vi0=MwHBaBE~985crq|RL_&)A=6oB(o{(P0zNB|v zmrinnG@!O1AYtju!ruEqAJuc_+6A0K7^XumX?!7gH%LoJN|fi{n1R4F22s2K$`g@3 zo>-Sw<+fJklrKrA3s^1~VS@=3%rt3^9{bQ-<}uCQLkNxfzTfyoD^0??Gb%wTl(GK0 zcV+*-XG>`*H=JV;6(u6S?TA#^mnvAAHkY?!`dMhQEaL(a2N(NwER!$DSo*M_nCEI8 zR8V0%E>(DVmswOtOX=GCrk{t?yLn;>#_=9`Q1-r zdATwRVcTdCGuGxaetWXGqF3C(j2FWmd{gf}N?tP!&WKRUkYC**zE9E8*EewVbnU(K zd0(e1IQLzmo%forvmJVPnA+Fpd#wZ~`pQW88(&h^75 zPN-x8fcv}@fQ(+I9#>WG-K6C0#pP!qN`qZ;)dWph89u*d7i1c#Bst-jotAMm<{cr> z(r-O+a5s(qb!rveyDfi0?%dh^^Yl)HV0S)~?6`r0V`y|7bvK2aPk6PcColYy92Zg3 zBQsf+lauS%;x=Ab$H7c7K$YKpbnTi;hn1i@m3TmjZNY%Jgo{19HUI0*oMovzQ&FLH zYEvK8xRenqD}RT8sd0G>p(N(Z{VY3j^17yG$oUXYpKq5-^Mqp~7r;=5dlhFS^Q)3d z@{eei($w);gX$Hyb7O;|LcOR!LCra-SLW0`-v5DihMij@;y3v57}C8GgW^y5kbuQ| zheW@2(7J?=jlB?pw^(X?oZJr1i3!Z_EY#__r}V$5u*pk3&LDRq zv}XMzl$YAw&!UL$B_k(GNna5XQbA==vFV75QSV&er|c`Tfi?LiV%1@IyAE(AlbyfClxGTsKXewz=xMmO=h(7w~rsV zoKaa_RoB_9=$nq??S#yvg#aMNs-_bL`HKFGBXzZesl5XO!``&lxAIU5KNRkD3kR&IDWg3v2 zR?`zbN3%AwDJ^7@7V@!&ey^2h6ewOa(l_?84!LU3Kw{!JYq>E6+3%h{MBiTfNKl!e zqQyZ>u-2LC{>G+D-`{lHg(QIK|J{*M-iDn=fIS4`CiZso8|$+thxoD8oIlfFoXzlC zJR4%q(j(#?5~j2-{nBHOe4E|f7lk{v%=`oMKN0lSv5aQfv#+UwzOPAZD^exud85s3 zf%T_`R>m1@g=zTgO!Csc4AaK(38dzJ7D_!0^y9hyvCp6+Rf0iV)*2TgNfEKX5WTVG z7TeI+)HgmZ5{7tmvT9WE@g#KT1qQt<8u6qV;6z}Z{=I<@eK9oD1U#H|p1-aZ89MIo z?MTU-eO!At?oBFR&W`Hmd_(BVukR>@XFau7or#h|T;$!N9nGUz$ejdc6#!P$JkKue zJRcSo2n#!1zRxCO)%VTd0rASX7SFJq-(C%=$FVwp^BteP!qXzJP7c>qihbX+#lsW( zA=R2?zzScbNsO|-oKR=g#1j5JsLy$Pyk&nprjJZzXlvso!ADYn?dZ*I3a7I#WJv<~ zjQ0J@2%5|4%m%I*c|R#(stP*&?5z5hmWiDwR64B^5)7>`GBD%EoA5Ol8g|8JSpy#@#w5&1C^ueIr^(-drL^aSUJDca3#lWS zB)8FT-<*1f7T=bP1W`+c$PEP%EyIKH_f`1HY0 z6aK+UHloiCJ>SP9XSz>@rkntGe)M6V#}xhTO$Uvmk7-J8Imwi4d)j&z)T|yWY&z7C z3IKf#M3&nML&nkkGqSWOaFTIROV~G5MrwTFm35t|4&_)*TVE;^=KT=XFY|OtVY!>3 z4(N}cZ1{D%f%Lk`dN10zFbQ7o*5?b5NOsy9r;$9!wkx)#ksxuGXmRidO@zsLWff{5!;I9R zLquS{L10c+@Y=!mokoG&p+RK$7i_l<(t_EL@%d2xvb3=RVcL)N$+LRCR1KwB+UAWN z*$XcSWHcU`kL;(@k^@;P!TUk4SrHte(`FOLADoW9zlVJU*>#a$Mo3+<8r2FdNT^7? zmaL$wMCZXI#SUDY2wAh~pJ&E@k}0t~3SYf-cj?y4>uOJZ$hNlFNl8mh%k7{H`?=sW zK=6St2Z7zBSJv^NHB|;+Pgsq-qxjU2Sk=dkWHX&?RWX+!D>Ki0KcW`R!rb8IGz>C8 z`jDZmJs1+VN^UuXV!5lOPg29FlM)~(aq9mw1w3S2CV(^dw`$6|eK#|& z%F@~*Kb2o0JJ>F+3M*CR5C8zuoSXLuIQ{eR)hwP?$~?(QoXWCD-(4@imX>9vQMQwd z=h)^tPqmU24}^I8b0CWTxOx~xdxo)^mT~|YXOLA zHM5|bUJ8rX+%J#b0ZU(Od5ZR4?=>}2u<_;lU%FhQXZ!5Hu!_;fE#tGMFUm0T@+P!o zJW~W_9`Bm1*=i*Gr`@&M;PT;5@Jtm5s&4v0H}S2r*#~q}WQ6hmo15qOSyAdio1FXC zS97(xv=|s|+SW8bzw|Gv_(nrWf^EUr znSQA>BcFC&Atf%gk3KC5IO8NH6+sf!d4ECA*afG3lM1Et=IK<0J0at@$cp`ZM$f~y z+i&TBeblhPvk92V!IzjP8;S^gpG*c^*KtOg&rVLZdzt#%r(S8pr*96eg)?*f{vKY+ zT5tCC;^SQ1-mH~nc<8-9XF7XJeYQQ(bNaAdLFai5#S`tiN&6qTS`A6eO>hUOSUK|)9sEv4R zM%{n6Cq$VLC*fvW@6;TB)H&TDFzoUhIoNgZyuCwb^Ya^O&|>qX826-D^69%k910uL z3rP{}*}0YL{g~b5IVQKg=C5*hp?hi6_;_Kvoes@5>U@$~q`kXdC{J&*{Gc4?(n*s+ZeBGzT-uv$#GjhtO?k*ZFbjf+C22)przC6 zF`b~s@bqE!yu9`Z)zh7+|f`3I?W$9Y@ z`o}fhYNmT>Y8w#I@%~2OtGKE3-Z#$gFwsy-aF*}q=oNHuA(zZXP;{pch1eH$oh{LN z@gj`4IYpoUAiP*ICXXl?-rn+8T?K7riIZ0{Hk^r$R*7Y#>Bjc%Ia&KWFmKJpmDHk7 z^q4W+(R<}Do82+AGt!OCzC?!<2!|5Op)}lW;v^{?+z1_Xbl4r8)YgegM2?et85#3mHRB#|9_9w+IvINMr#pN@GlI=m0oQ?<1snMk* zGH2@4#(Alg=LGwq$FI1{R8o@yuX#F0U)~_NL>ewk> zp|Q(z$}62ZZHXvC?X@qK^;rHvcu@tZ8(rwM!1RbeI*$F@lOj!hso@exf`8s@{o!lP zjh?u?n-2{Cq@eD2+f*1A!v65CHH@`j{bZnaKbeTHq z`8a%7SX?%%uOUuR9R|cmGZhJB-yHj@bbqJr_PEl$MZVV_Ug^9`YmsJBe15^@01|X-PeLCN>8M#sh}SEcK=>$KTCl$%9FhIuQZ1YtXruoA#2Bshe%q z01TT%g!ZzS?_98ia8<jgNW`5g%ll>>L4dSzwe(P!gtNNS%w2JU*F&0QUW24IvA zRo1vJ%%AIgM<2$yPYyU7Z_@sBjuk(;glefqI0;FHG5%AH!x@2oH#@h6|KqK?d`M2*5@{5~ySo1@Yxy+rRzMNrG z??0PlcW*7DuyXplEutlC^vQ3p;uTGPynuU*IF`8L4V!;?(XfjoS|2E|SEI33}zwAs4=n>;T>wb5Q$B~eAeTm69fZmq0^exR4snp^M8 zX`T%iUU98-RMIX{B2~8Oks(qhZP9-PS%}aoGJyLveaP#Xa+r854>|6?nz_fX7>i`b zynr{-s)S8O8kVJ%N`DVIWk9S@2N4K-_v~XX< zbQCoSAWghs9{8ztE_swQRlFC3DQNzbD-fHnP^XXpU@x`^=(sM_drGpTsF33 zh?UWoBodu~@4~uHoj=y+CQRZF;&e!toHiPjW()`JRJu=(eroZ!1@j%y$njhpAmBie)}|oNtZ%uzOF|P zk3@Z6$YgH6UUYy+;N=p9uE0S=99kb17$H99sVZ_L9MkpbJ_iPSu}I9mU=_KTdKm;q8{lSQp=FPnbuJDuAFi(zqWHPh%yRB z$wXPs7&#yHR0iH5n-;8rQ<};O%UrGX-_V2ooI6Xjy97d8R2jd`TdD(Y#xF1fEfFUv zW4kxJPd?DJ|wMM^REP?wLK@D;~=L7HI<0U4>FTCOSNV}I~XyM`+ z_Y{B>*!h5}P*LLP6nU2}i@mvd+M+Xg3jyDM1$WmuMsnhyMn(RzIio7H%iKOPy(^j9 z%hE4$cM7TgL7e}J3RIm@R40H_q7j`IV8oS|#P%SX&N1Vc`p8*ExJ)ZJR~cT>q6wfq z(hj1GV6rQA{Sw=oCi&w-ip-Vs-=k#U{NiW!HEAExx9Uo42!w&6m#R=ez{}KM&ZR^P zW){XNy+h_mv|5Cj`bBN@WDQ;E0Zm^?bjdqi1$=_A8IBEena4t;Poii(1-3qT5#L)9 zrmmVEe@m+r^LLRrAEyn!;xIWKEB15B9(Ok|qwB{aBnjuI&Vs_39-t(Oow$GeFBxyWAEA2Yj=X_f`wvRibyDd^ehvqL=_K5#-n9%e zsaiBcS^m*v`HcvA4Gs_yWtmvHM1osi(3lh%PDHloO$n*G@}6%+(0k^iZog7rcfWa0q_*|jLr_WWQYJi+(e>C{3!rw` zL$!`EBCxXfq#O-UpXIcGkGC!Q1D7DKC$jmN=N*CWoICEztxP$`mfNwN<%m}1qhpTn ze5d!3-pm30{jnb%nLe}NQ8m4Zvp6vGBw%hWZZ)b%DHpm&X7@?k zw9m|u!P#1J%GTOop{R_HC`_X;_%3f!0A!P8X>uR_3-ta;=VXt_hW4k)PhiR57k85e z!O43*Pq1Y!wg8NX+b4kUZqR_Ufhg!jvAV1*zGJca}t zz*xTQ63%=(Uf#V4l`3(v)erCvOi@W=ZCzT@L5(x#>%{araM0uK`2|h62acoqa(hg+ zh{!WTQhz`aXl2vay=MRRK^c2?Z)5Yq4`VVLyXs2+q6KjBPuR!xMasf_|~D05uMvE1JTK#XRb z=5CB;MX#PEgswjFsR;GF{vBwdrnufep*uh`5K+*k-bz%_2gth7%o^a}Zqu5aDNz=c zesApb0XHDNwX`X?M+pk3GN!s2h;5@}Mp&skDx(X7`JzP>u|F2$$+#>4Y>Gdy#fUCS zmRz>rgX1w{a+qSu>$sgvKQCCkTjF4@G5S~5BmAh3O1S*=ue;}gsDAfvPtok@Bik|-EKYzQ%_#Nu=>_<$yzWy zDYax>hRO;*GfsUw=^V6%ROzJ4id*)DWSNr7ZPPVh zA-Cc6>uq?gq$q8?zg(m`%jsC1=$(&;Xqj-28hKPSnP8ywZjgufi4tb?N5b{$+Diz$ z8n8}y*E(+yl!Z|l+yubnbBit=JGZcUi;J4Ux}u*WyY=nNQM+g6ef zQp~TXVDz@I;^MZjsZ2s{DRqZI;sl_MGe*5Mt`@HtyOx}m#hpDFR-c!3xpECBaTAlx!ov=pzJEb^>=vf zC5p^WW3S%QSx{aadGq^Ak*~u#f+=EKW^F?dwGAZ z(@BPeEu2l>nZ%7zw5Y7;@%GasZ*eDKSzJjTkji+;p}t&`=CTmYk6bGIx}RI#9J-bI z$yI+W4`QaJHu(?>`$1NZ9mr19Pq>U?pIzL=^?@ATD)%2Q=Nx#W2Z9c6Mm((o!!s?# z2{g8jkNp=020!f_ln$5E{uI>M@Yf$Ki4kPOPAWDxKPj^Ce|QPUvlcY95Y5afasu1HE&YAkzp zeXjJ)Uy`uLovtmwlAPbl-jzBjOf4X#)>ClC8|2Hy#yn zmhZN;ct%}(z1z*U-5;Rp%eSAnYP?p5wXdt;5^Nnebl98sXy*<(SGWEke9g_Rkvm&D zueq!`C|SVWesa}}VUiO*XTvSQHv}2e>4#1IcFG&kdn5Ko|mB2K2wpm zHvg|^+AbUpWx!I0s7Pbd7-?ho>_~9sL?%H5 zeO!%koLPIWx&QsY2b^0U@C`vUrHBp~DhdGoJxSKOS(#6KK)?M3rl*Q{MlWq5IoXT= ziCnFE+5Cqw86w}jkjei^6)7v+BWgq}T7u94Vh>y8ZMol0AxJ}{N;6_AViAc$?T)IMG~?MRoY`VdZi*}H7Z z`_;E5KG|TA1Z+eo%J#?ay%Qlr&^Q$~7>(DR3DD9dmplC6{W1K^S^5*rbBK?%OwxXF z4n!{tw0c?S5V;ft)tI5ct#PMvKHhvf?d%qu&@buNYpd36P?-tz@#!RE>(W&_+qfP) zN>9>_7KkCM8c<_W(I4DhhihTUo@As)<*yZ#G;bXV4U|mj{Wrob=eN`<0F1E@(Q_}* z@aMZqp#`R^s>LX|MxTp+ezptfU3e{7haCLnJxcHKyMEX^2?w`a?j^ju3w9mcv`f{c z%imcBi~cRXRVDZ)R{Yc6bRolhn zuA(zAS_r(gc#_aBikW=TxcOD@#6hZLmI1Lv7S_At;HdXHwu=R&f?3)iaRR;m0vgzpO z+P^)^y_8(MuPQvL&KBG`w|a&`1!f8Y*j~q70>M(!dksCNAUDIb&Zu zL#;MD{~Mloz&_=w>Eabft^0>q%4Lcw^4i;k{*78>{uTxm&6&#cvrx20gk|1zKD&19 zTWL&8l2|4{XQ)Zj5^jQ;9B?IqR>WqPN(C|%KEY<)DVR>Tqz9lSA1Mxh$Cw~)gzOgf zx@!YoQzk8}K*;jM_mGt;|F!MjT?J5um9-cl{0Y;j!3(`B=XJ$uZ0|Q-@Xe{ve^)=| zqlw6&yiH6u0Ii?mhHSfPKT0N()5l3oW?9&v{1naqUYzijc2`q-nI91p7rlDrif@6R zN^Cz>_U- z-E5D?d40;4sp*)_Myn-oBsV|G!pyB|zLdkbx?>trIg$LJVh`6IbhFpuTRCWe6e}1GyNEU{sOR2L3pF)r<*c4m4 z?|vdukvobd;a^tN6`>5)ceLb)4 z2s%f3^u@8>gh}HN<3~$x_E)6Tc%Ge)j9YfHMToQn7G0?18xLplRSmHyv|tIv4D4mw zmVCXyKBqJTnyUUkuD&uX%C_D5v5*uQx&?;LAtWROh8WUe=#-%wq+2D2?(S}+q(P;m z9XbSL=-uH3utf9gdL`&uVV4FCxCMmZn)xDAzNr6O=h) zE%;8h=7+eeX)JkcjQhQojA+DgXeZ%rmu!}(Q592-2Gxg#6?w%;-67doYdV9lY~(3= z4z8_eGV=28#QLE$r9M=ji1uvw&2hhKhlzw(QIi!nILo4$o~T7#oZP}pbrRw~^_Pnh zMhf|VU)P+7#~_Jcn>(tShO7+n&a27l%Qkpmiw`+`VLc|@w=(SF_Ezfalx#S^!0}MQ z-rf)mU1z?Ut%>G<#VX#S^HCuQ9g`CGn8i;7N#{|sI@=8F{IL^ZpsypU+6F1cIqoq> zLCWW&ueU}NyC@8YC+@K}XoDfs81F~7&F^*-8m^oc&(4r)dXh>xn<4V5#J&L04rat^ z{3UkWr4j55XZ`9_r>Wi1QZ z5^gRqXMB$=p|`9B1JYqiUTy@e5G)}(KMxzo;{mPwMJ6V`E1W|Sh^bC3iqsP zO~LdRm5j}vc*>+|*E5~&^Yez)e!=SJ6G3+l#HNsRb9BVd%JH-&{0L)GV55NGw16-X z5#=VUw{$vAvh^fyvWBq3*mqc}N|*!$2+`iLi2*X>@nAW#f{bM5z-{E#-)-b zesj3tnp)6W`++f!#OeF{4|X1stmJ-)6W5k zZdB&ancQP~d!8(|FPK-9BZ_7P+vYu`+|9Vm>jG9=pfsIgD{JaFSULuxA|mT|)rtw* zcOE#ho@e`k%sBb={FAVZ_$Zm?&Y8gyO`Syfd;X=j0CcG%T!{lTaN|AjP^5okPt(09 zW8=Jh-fhx&bM*9c3Lbta0l`lP3JC7S0blNA^*!ivp2 zZ|lTQ_gEs&uYY0#-`5tsd)?8y`Hg=8mDVBaql;s%hr!6X;u5VqHYw5b?I#egK}N{V z5Zh}iCCjM5+c9wJ>x+RK3!Rw<{|fGi@pnexw$_9!X66XIudvA(Su-=??;jNjx&wDr zM3{><$ukR_--q>Ebk?4IAj|FzW%N$jA|(Xc3~zEGR_j%M@x6=IGU-a!g}C03?L8TH z8E!YX&qH(hpU)*ZO%7<|as^D3xpG~XL0xx*F1WZ*-IQo$!dIQ%2`$_7`bG1d7o1Y8 zRh^0e>A>-KnWc>A(6M*%v`uA>)|^Fl_9<-%;0O`drB#iDf5Y7SB{I=qn5&S&O4AUu zGLGYNhDS)N)MJUK^-5#@9VQqEEqzN-_OVRBLT#$`$BvN^Yb>}CT9DUrs4-gOfBb0y zL7^nej-eXU8}uY&&-Qn%NH0FLNFf%( zXQ6K=f3n0!FFE@84V`Zb^=z@00mIJZ>Str*?@c;B0q?0OyGB7ZV7Udx?JA7Q?}+)m zF4GABwX@L`K8PzCKY3o&N9wU`KyZmRUFZ^1T**F&NCVuHB}zz<8DC!uzrEt*KU4bE zcpi7vLjyQPtTv4Boja!1?z-$U5oqw`*J%EFI3|`B%PeRGdzC>Es4MI~?FHXKM}LXP z%qOQK62@-!5km#9JliSJAu+Lpn8f)=reF1E51ZUy*^f=m5`VS3_D;;aRHlByKQSF2 zw<)v3Rb=)dF{w<{R#PJhpqq7gI*X~28PiQrWT+II2g<9%hGZ02u zqqwoknn7(LnHXP?&NZ?1E>_3oHY}?gm|1T;i(E7Fs6<`x=kuAtgn1M^Aur6^J!G?I z9Xy{HNwOO-#1k1Rz)k1uE%oJ3s}xa100?e)j%+%3@{~WZSw|aO9u*^czv%j}75u8^ zN(vqAo>gL=ma6sR@>JBIz3Vc7oJ`uP$ohz)p`~Q(TB=#)XDVAbg|moRdwJXant-%M zVUx@tP90%DXOJA+XgQr3H#!0&3L1`Y=UWs_FXo^N7(16)%xW`RK|T)1Um0>}TR&XT zlN~szVQxG*+ziDjd=`xFZO9%FUpFL%ri!>}n`Y+WIb24G(lD02(<%3O`TJK!I)EO- z?vfP8meM4lI?Ck1$nWo8iHHPiM-ms$heIigPt_-80-pXhhoiN`6RrIkGFAkfI~S13 zOXl&1E6>d_IH^j-I?c-}bM8I7Cggnvp1T?-2+v@`E#lXdAQcdH+xUR& z%BxF8)GxqnRz*@pYCBu0sYO5r@&H3SVq=!9<=Js#eG###3TTm$Qe56-ZUa;N!fTa- zx76Y=0QuSi|Je(*g*k|8A20iJ8zSKh%N1)f-%i=!-q7!{Du&Xe8pC(>r;%zJnt^>; z`SNfXtJmgt2b->B*8T)Z-R1HqX5dk;E83ma8!ndN)MCnJzFs=i|ILeBlIWR(y%zlM zkUP3EC=X|$V7X?{oND|vHYw)=Zy8IY|2@c~zpQR&Ny`SvFYrM7tObgp$hx7CzG+;| zWRzN!Q!a=xP7~C9a)O`Xe;b5PJ1RWm54JJpLI;^sloWWMvwC;xvsChNiBo+Mnt%i| zhlo5Qp${+KQ4@go@X}W3Gb8^kOYB`kcUGc&}6%Y-x< zihe_v&9Uag7{ti<)CZ9w2VQeCJo?X@ z@7@I+owqQ?Ee&fWgQ11|X>UOAgWT+h4BNQ4ad{<$o{h7-@hzTNF(3vEqM$@Cz=>7& z{hKNX|FSy8A>O{M>P;InGGa<+=vO!)6DbX!NN4}%G5RYn$b?Afs7;=ob!O>RUj@gI zT3U7>lIB&l37Te=QyLL7u`;I0p8vcUD{D9{Z7%ql+(9x z5`Pk{qph8r-%QjxDXF`{U&$%(G-G<+#3${iJc>VPi{|W&2u|tV0o}riti`W#F**l* zcdNOPNvt;l$ODS4N*`AHj6yWrjE4 z1Zpg)VuL9&8iiJKAfWVdCGt8PpbLTN-X5#^?%qYl>%}Lidh0H?NKNVbCUMY?vuwp0kxRy=vnooe++W5Vw_O2_k7 z()M+OL5O%mK!3kDz?Z&fx&Tb#U}*BC#qqhC<6LDKaQk<`*9fGVQSh{%ciVqw96&!B zvq}nOo-RT1*j%QoopJ<)f2HjX_;nA8he=^Z=3*|H0mnRrqtTr~I(t1O*xB+hjY8GZ zA}?n=dh3#(`IdFdl7yi9DKEx2i21psBxIP$=x;2_7hUklRRIdKx{cH+b5 zdUiD)>Z0cF#Juq2i78`GK0a|}v#`p)t3nd#=-KrFL(x>hLK|2es1_?)=#cAycVMM% zrUt&5aEdLhD0?4V4Lit{<(GM?CJ#^f>B@4#PN2Yw-t-=tPU`Li`71)&z@aGOWif=- zhV+39-}M;Q*Q}`bB<%#!8v;g-omnv|u@r2)%p7jaUMsX$-dKuN1noURvvBERBFt-Q z84Fz5Q_VM;t$6L|&-G%~-rf5Tr(u$YLaq`avK==SN?to&mdH zU;Hgib|hZ=R^_P|EL4>`o|6Y?^q3XVIQ4Kr&k-gVoz4@Q^~no|A|J1PHVj%#@{?dg zpoNpm-x;>~*YR-+yV?OBDIP+Q3G(-F zbT^~!zrPXyv3j$7lLSVr9)u=z>+K}}3xHyMB>v-f?BG`eI8^?-ACCYZ-@RfyqLno5 znVrAkXEZ`1i^eJL|1m=Qq1j654={`_VtCgi+#xF22m1g0l)hN7PB+u%FE4{7LKvag zC_zaDROQ*fktVV79khP0AVhmS;!gVXS5s(exZy923+TV-T2cpOTG!p^^;N&zsHVQr zlL2&XWvSFB2YL(2MnJE{Ws5#7DiLZBOj~o`h#N*ivtu_IOGgT$2*h3m@s!7c&*pxe z8QWK0@ZB;`%Xc8qV3}|*bCU;kVvv_-5*ikz*?R|!V$C)|L;+0pkDZ6a_Q7&a%p%uG zzkOM&AbFd!?z4TP3bMWuSIt*M>ZT@PmTI)J#qZUwFIb27@lfqvD%EYl>uT2|vggFO z7ZkXo1Wqbj&sp|~McneEbA*adCHc|M4yA8d^~-0wJt7w*=uZmb;x{VUF!ta=+JN58 zNkhGSEQfQmLZ_?#K7uRnWqZhYfU8jL*&TmR>H3@n+w17N*Y2ve_M82gv${~2Bc`kf}J86 zqz><&EXT)PW*;Rog4k}^o*wQStX;TW5juH`lDX)v>Dy)yqz{HHC5Lvwnb!Bk`~c3~ zw^V?h`Og=OOWRzb>D%yjOE%03In2bv-6eg1Ba| zA>h8-?&l;g#@`6Y$BA*|5!f_4#r3121n`XeRIL z)7d=i>Xj zg|&{{jbns`3l1y7KLdTQNXYfEL8T;j+n;OixeaNOsyIB(@(|QT+or(L<3W?Co@A#`)qK2g4`18Wj54Cd`wC3>rbh-+ z+Iop0xNN+T?61gNbxA1?7t$D0{9wg^ws;N=xJ{IAmFdq^b>U>WZr({B>Oz;BWYbv*x=5O9K^~<=1qz(M2JHK9;m&D&|Ez( z`p?N#gbP_0DdaI!{*%p|SWy3}S8uC`eqmfGg9~x{m7HYB=g-y@Otv?zW;;Or!r@(_ zmek4*QO?RU)744XtbT-Iv7Ch>Q)e^cM+LA#AD}Ie@$-JrzZdqg!)nyO~&psUx85pQ_ z+{CqPki?$rBh%Nn_;Al!DImNVL4r~;=eSxK8sbO&YL)-#kXO?l{Ir!TVb1HuJ?ZaQ z`sOfM0k!5QOd#xRuEuv6(;n`BbbpJ-&=BNdEA@{|fl@(o8B&Jsb5x*`*XwA{Qu#cQ zWO`nDxH-1m>O@JZynzOAbW@!m7E*42K(X4q>upNFENW7{Y6$G@vbkf8@^$6`g2`&E`L#yfUJ^|R&8G^VAJsLaAI%L{KUI3!L@zGqx2w~1kCwP zZ!S0ePg1&?_~f(|%nS^VDw%?!NFTc5&x{q+YO#Q3@j8OC4`7@}XknH;du~fOZQ%He zO&tquR$*mT#A${8XL5~GF&|}(BDN4MD1S8J zkk_#uTM*H&4;K6EvRZi0M|>5G%Se)u)N2IbozAvxDqWpA*w>sLbB-E`nzV7@q)TM> z25sziN^C5&nixuC7(04IAd2OvjC}r>`X_7gWp;a)ZO;3QOpV~CV&IdgiV<=*rey9G zxAPlIW~4?9uf8>5GqZh2aYrj^)uac){ufd18wVck;>r+v5GPLc>_SQ*2Oj}U zlM-h%%0p~g@|!`|<#*NtiTfWnM&jr+rW;n&xE@EPdmKJa`P6sF}GnMvDbWR6i>m|=Uf zLECic*n4%upfcjO*45`b2aq8kC(aMuzB(yQ@#wwkAyAaI1Gb8iQHv|R#>en|bhpDT zbn8)7v9Z!;B<$C!?63SnELv6gVeQEVEw|8;=Md@#Hop6!^F8$UNybSe0l-&TiHh3! zxSCNxz;8F}1&v`wU1wca`S^vt&uvini2;+y_Tg4tDdobSGnvin6T+w^qr>|yo4NQl zp}Ol?(KpMemFMDqq89GXQDvuJfCH!FORF}DdGwxnmr6u67jUPUyG#8S@O|qm)^i$( zzV4TlzS*r84dA6|l)Tb6>oGzG`Y87w(~Bf++~23;y4Oh`LKc0>**sAXh7-zsJjhZo zK%mNJI}n((vGQ{tzP(IzWo6a0K$Ag(@8rd5F#IGQ z$93keMpY|g4`mSGFSacpg$X*0CV0^4e~@^;QbRUg8I$H2PV zYcvDgH;r`vBKhOOD@8^qYXQ8$1d{~GbCMyL?wnx3NKirnH`(|&S*3Is2izQ2yOgA^lYO1 zO+MdZn@&Dk%v@xjD4%3Mg6f07jW7{#o=W&RQ@`&+~-S2%f_TC#n0orBK!B4 z3-{2!9u9wLVMn^p^?!{~vlnX9JQ;u&uj?bwNrsf=lP&FI4$Eeeot96dwTZOoG z?JHN?z`{=+5wDr8BD-vNX+h&^%Ae&5W;J;{J-WB5(-XE0gxc&xug?+|DjBT-as4c` z@AnR4&XBKbaVSz2f3Nr)(5=nt45V2^;|tw^)rFgi zzU&N%>E5|$VMQ1wzleM-zjw_Y2Gj-9QO7@VM+%MWg|D_!rNj?d>iS6ESc!qwYLF#%SWW9sK^eK*PQElMO-M z_PbboS_w92c{o0)zK_Rf>#!u?iQ$;YYhkg@_jPY*<7Y#dYd&q=!M;uxvz%kdms9*f z_Otiu>RFQO8sDrvUb8BlQSx-L-E%y@r!KZQ@NhrMYG06>cp3*`r!m=Cc+E$x;Sr%S zMj<=n(K@Pb^6ZN9WS1tRb|NKAW_OhEhDuCQf!VF;@(_o1R7L2GH@e#B*+EwI*cu-;I|XlS54Xei_%F27)7s+xA!-7X^>$nPG)Xg zX#m6G-419?SK@^OyA7$FXr>Lr`%{)tPxG5lxqRvbt&1;hcTs{kz6DQj$!xjUij3Id z^RcU4YgQI}w_+Bg8$Ln{W==U6jcTj1VW`eEc14uxfMGWoJTISTPJeZEJvLoS%HEHz z-->lJQd58b)oin;=~`hvRzuGv$*mz|LT5tE>&eRAWqp#~s!^dGqV{*LW@xhb!oYgzFAccM=m#v;l7jI-lD(;QPkcMR+py^@DjG==kjBDgrV#f zQ9u$|7B^!UGzbi|2|R1O8RFNBL7ND70^Bp~a9?5qS0eCH*g%-*ZCF5~cLYBv>V)~v z(Q_w}HV>SZ6mO@YttqM=&s2|gJPsP_lVy1HIgk<~yoDJ`6a#vC++Vd*R3${*C_(H1 zeRHDc;2}0Isk4DQiobN?mG{E`)kncUebfg%)-HdP*m50q0yk_3)r+1cZW^L>=IHYm zsXHYMoQu(m+UOU*Op6ubHBD=EWMsJX*CO3e!6wA0jrsK&C|Y)&wRGRq?6st$+)l3yqhYR||2QN=(I0X;o<)g{aL2H$a|mw^=%lz;%)6s7>Tfbz{yu zJ=M^Yyp~cH3c_tg%U}7VzJ#1F9-rYTeO)tTH)PoN)j2w?-B{L8l{phf`Ceu%H-s%+ znBzqK{7S_X5%pMinnrDN(!`Mw_Dd9^W#_ed-!cW{YI&OY`PbV(B`#va-a*-2Ii4QlWL)=)ak65tg zINODH;nR9PER&9KFP?an5xc|L(e@tUn^)&YzJKoe49r_8uv)^bvgS-5Za;^kVa|sS z-|l-@X~jDV7$8JdPzHo7oz^ERHo5G>{S~>zhhymM$;G`#_Ei)dmFekHY3Jlaca9%+ z7qZbNrvFOypeOa6{B#$?qQUKto9Sq)>LG^G5ASA^Svr=kdSCW0VwgvPTedLF=Kgu@ zfU~n91<*rGw;rtt@SGjTG}OH2jmNf3LwC?NdsNX1iO;QXoxkA{-~E-k+P8EYdV){t zb9u<^cjY*;6)qq$@PX&|H8o@7B}N>};scd)v?cQ9-4&Gz9olBBET;ie>n!BBH-zwe z#>rQ2F)<6@X4vl%xB1Y4bd>jA&~3ri!?iceRC{As7DZ{(xH})7iD@7PC@PM&66zykvx$-hDJzBk-WT_> zw=!{LDgtNAkm^Er*YMP3n%V%GLgJt?Ql83Bu~%}oBWE$F)At-?e~>E{qPqS+mwxQml3-6r@lU)Kx1H@9h2Oh1XzqPMlMA@zS>Eh$<=Nq1< zm#mZ~mEGP0o7y@n$aqNYnPf#3Td*JvXv`pJVfRNSRH|=?P1>#j7}lOt>UyeDd3g)wReaeV#{%B_ge;K7<(6STZu=w@fDkgdJV^v@bFC@;%on0n zSyE?+ntlp%Xx@dC7_zS(Z;N}$2z8a%yvvKr^%m!`s;b;#gO}cSEZ>J)2ZHF+O6oo= zl`ILJx^j zJC9&RQO*rAcj#rL=v|H2o3$Nhf(dAA%;UXOM4tyh)WO6{&#*i-u``nNvB7tH zYb@(8#qcx;1Xz8kd@Ys5Pc^w^*WQ%g(Ym6@!-bWwF2}?ASu4@?QNgu~GAb$~LVkRZ zwEolI~ky;ZVYcq7z*|5)|QD2`h_m&#>5i9GJX-=?q_i62lsV)EK}Cg zV7TT@rnG%QG*+q+2o1Hcj3hZy>Tw>*bzKK}cis;4$RVp%KDRR~o~oO(!^=qHSh5hu zw)CAR!yB)fgZ{5FaEr$X6?12GrW0=A3dp7toi1L-!^)?SB#P}iyrsix0dl0#9~a3k zC1Cy@_Lg}`lRrZ3=}!=O<8$IE^D@yUkOi9+*2g}^g1x|ka=&Rcg1|2q%W&D^N+Jj< zWu(T+FdZx_gh(i=>wxjFamkBKB54K~+DidV&J3MJspq8*Tz7lRlyrSy37@*<`u{`* z?xgNfLUKkT)&xNYNBij zgSm_+Lt5Q$D{qQcgove_IMiM+`eXiIb>nhg0VU882viUsHd{R<+yFk1|6gh3&{sYW zd@M%Ccr~-uA=EI_ZV=4#qy*@Avb(8Wlj!CyNxJ07l`0X zNz96{mgw?7X*D=^CR!QF6+Y`GpUjF}zUkfCv&0i|5gFg3iNVfGh6ApssaFdN;bW#y z;d#}xVb9q<=xMCFH+z_XZuLH`?3I12FWrMEe!@-39aWF-q+v9h(XsgdqO{96GHba1 z&Sl{%zwO@}QHsFM05k_Kb?FyHaO@tPlA@iLmq$zA&x>F^5@jx4FUqziHy%2z$)ae@Jl4B*0eckQNy7@*%7 zJ0x12<+2-0mF9uS$PNCa_4k6|R}KhpA@y=nJW#NZI}cFujcC>xs*ty;iaya$d1DtPTqFny zUI_pG{v)Eg=4_AA_>=LV=JJfzDqe zGNzw4WFk%9QfWjHtO{^P*5u?Rgkof zOHCM1Gc}TCPxs$xi@orF>{b^v^F~+HO461|tOf)H_kfoGt=#>^jL6$m%Q-E2m+I#& z|8VL(q~8PR)XayD)?BKn#-_!;eLFTO`|!lN#Zs5rppG!1nAv#D7vAxbq8(3Flih$1 zpH&IU2r71s-CukpLTbb#rX4cRsP;~IbAZ(I+LS1KG1SlkTZWHe+VbrQWt=vztAc9o z^GwNTu@uSKpCrCwUHlE2@CmPedxN~<#;lJUs^~*qK{T8>rpx#95|016{ZYGMCh99e z8atmjUCY0pdO!914-g`F5q|=yzU-a)z0!R67a;aBY(Mumv(!uJix%rg%d!q1j0~8& zkLNP1y~-^4t6wH56w>BKh$_%uGR1i?nj?{*?%$Jnjlwl=lth2c9$op6x!_+4vyrs3 zBRq!MOSrc2zQOVGz>`L zYIb@+{l)o|+mQBwd&+I&=dXFJg3~Wvr~aPK*AFv`3wfn2ad}B**IqkVMTui~s|m;{ zw4IOh`Z&ba4sUs4-icI&w+1BjpG4#&73e5GHFaVWink;st3XtOa3?^j#Sk0f;;5Rg zd=qY=-V>gnEx_h=Rdxpb&5sUDeTbg6co;s}^W;Tuv=|AQ7L;W!kGqS`QFSFtbf2DB zjqzjDPnp*06>pMTek&&aktTC?$@g0IUa&gqA$=_tgUSs@H}h_8DI-Rzol#z8;U7*r zGi^WVoWI^7?OU`Fx0v7Q0rvqy+d1ePy6tKVX(N$AcAQu*g@>s?iy^(s`^wxBEIGH@aBbwwqlthN5^8cGa-dn9uzM zB%w$O4sF;RnfF%(&sx%A_MnPjh*w|8Pt0!ixJ$Yhym~+XNLpzaqwNcR3T4~8R+!+NLd5W@Rc8%7*g?# zI=KpMx|0XI`AW*_DDum?oLp=H$e^7$)tnI_lTLXa8db+^?3j0665W5X2Wk_k#?1auy%YyNu!E>q zX-ME;O{BGly`tE|^7t$aEH*`*Jmry%h?np9ikAF+le6>SiCT1FAS4vr_q)$Bx{vY@ z&NJ`Sy0FQAK?IqYA;k2k=Du(%QR^!<73LyP5f zRFH_zb8egdJ?b?tEdI-zjLmw_2~Kgd{aHQ=9JNqegWFa*o3F@i@k0ymqw!G>U?Sc&;f_qtpg+jA|vOA1*uBrEnUVt_x)aemXbep+} zC$8#v8a<*)5kiFxfqTgVs_79@fW3?G&EJOfOIzLRyC&w|0RIe`Qb&ra5igxcjRU4~ z*VK-E+0Qgj@Li77xv0mCGCxa})>`*u2@iCild%fYBaW~HT)6g+O*cX(H*P9AW=zgz zK_Y8$1MyoZ zd4*Ai&B#6~-SNqeUjGX!pad2A*2>QVo59f6Ryi18a3irmiPSP@E=S zT&2{}`k0CBnF<^}Y15Giw8qsfWFYRB_FcimDCp~q+`FA_Q+H$D zRtPJt>G2ia-I{ZwT8@qNiEr%?bjNqB!vb+Q)voLeb{`e=Q`dZa!_;L-ia4Q zuSxne&-XugWoPl+ zY%-2!g}J~evwlE|UNb{L6v)|>WDxy=!q!m9%_xu~DBu0j=VrSKsX}sTVAjXetmv^_5gkA8JRZ*7=7MdsY)JYFg_0 zTwox-Rz+gdLhUF9`pC0$zWCc5A2UcBA@QIp6!{y0Sj&nbD}NR+88n{!v2W$oe#fJ5 zW}3#qpq@WJ;x~Ir{Bty=Bkz(pd4Am8Ds`Kkf2lnSMcwiqE9zRN`FWaAXL^6FYVJ20o%Y>jn3x@E-F54YV@_<1 zC7ik3KJLDTfQ@~ypOvF1uQLD`u2?$Yb!UiCA7%Oh9m23%_N}!2&YksNc;2_FiZ*wo zZJZaYscXu?b*lhZu=A&3p?SlKD#nb@%o@tx2KR=SWK6AgWvVHR&v3x_qGvojza4Qi zxB1kL+zyGxOYaqUqLAroKP&9=DvDym%5-bv2+{G>^8uH9?4>1Ed9`0Z-DYrnCYPyK zk+66;O^{;{QztfOBj~>E-)KYIYDcCh#_Q^oMma!&uNCZcxIR_zhAD>053 ztPpr_ay1Y~Moio_3WX|^Z7sCckY)J!d{@`E$9K9oU_B-)2caBqAcxFwflWjUW#y?R zkr-!MDy z0q3@vBRpy9D_s9v9b2!pUmjBi&_k9P{@#yLS&SOUd^v%gHK(o+!bF~;ZEorlTlL)> zB_Q?Kl}rq>DiF!T^IKX)1q1SII3a=P&)4u9M0W1Fm&7Yrcc4NR(w{%N1b?ihyzZ)Cc8*`(8M`4#vCEY59J_Pu@I*wWq0vZ zEI|3v*RM9Mmu2v{#9IW<%Z20(M57B=i32GnB;)H&*+bkc#D`|eO3dS%p0C7S__Vf-w%vjQzd#r z$dq10^m_Po-~yZnOKAOv?nhuW;@;oO-MK9l%gszz1d7oc2oH|mZ}6WhxhKW%juyF} zh>_CzFRz3|>r+Wsto55rxpPl!u7+H+Em1M0{K4NtwCT`k97q3QSIi3q-Y3@zf|52% zSTye8a0IptW)LPDZ^=(nmSZx)N_9!%z77o_v^q4e#joKX#U{*fohzz)doAA5{Z3eK zAbpJ14aMY67vAbhU<~Vq6d7*WpP)Q+DYSZfqnAo#9Aak@&a-`4?rI=r1HFTxn}OLl zdASa9M<|PbGq`mAx_Fm991cSHcq~|_m3y>b8*Wo1cn3{U+^cA5C`E3HuDOgTL9^&q zcU#(6>8<%+x?i<--yGI8m$9(-vW!A~LVlsOwl(cb;j)7s&oyruG@Qea(GirA_7)Jg zv1}K-=lYBCQ*J#WxWu6Z$gYVYso-97ad(2Gl`VskoVfFaz{OGqK*!hJKNL@<_IxYR;#p0o*TSnEQ z`1Zi@PqvCYch8WnI(OS))iD?>u+ug2VuLodN>wJGsKUvF$CD=%yD;nVb{|dM!+y;0 zq|Wto-TuQh=-h;ioCChWLO{hXm9t}$tg8?9GwN|$8hyw5#^E3Gl*F#X^`o{&>!%T< z<>9y!$*2$B{;lxx)xLEbMY#OSXY^?-hCLv&YWQZ82$zUU%=}lFSNp6wGq9MEfnZ;H8GN9q!ryjefOf%3{@q z%z2So$7LgwY@vkLc0CPcDP=o&{zhlw##`a~TG}&J)hBaeKQ2INhim+5S(I&zh-J^o z4OUbAL}d9!eiXjM!B5u(3irLVoePlgT>;5tECo^L#@@-_VOsyb4Hzt;*S#o>-=FG< z8>Px8+}izPK!lUpx2X-HK#)@I2Kc7PLmr%^hJWcHp1>O<%R|fs3w^Qs22}8C|NT8ogx$F&yezl~_+jUIi;~>3Q9ETGD;?FKPdz@%VkZ`X52$slNii!Ptq7wGcx7 z3^!_IY-TRtjrf(qO9z?hDj?KCKEJ{SF)amPS9DDO9R_5ouX6Ob{di(|>)$2O=tcw`E!x{OTXH(EeXJX-RZ?xg{6xkeysk2J?|ok%Cfu0h+FP; zm%d|OMaV-mqC@(Y628hew|PcCM3ir4{pG=pM*TSuu{Q+Oz9gj?n%o_ME>!zDY@u|J zwg_Obno{+;b3UIbOI*`QIR(Tez0HzCeCYcN8k!8pFDDU&lNuyi$*E)xjQv?fyU9BG z-Xr0S#Xc`@o*QwgWo4_Vp#OZD%(~XIl)@})rA1q>tV}1r`%lxV)7rWQ7EWuR!SQ&0 z_31I8dms=&K0pz_z2WKW(!0Y<$x&5xh&ucn-&H*EY)?o!uBop1tyvmrh}_(w25EjA-IG|-*<+$xSNvY;X#_0xRa zCRs2cb!lNjgzbm>Wwh_RHxH0v&3IFzfb2aE991wD?cJTtjHjo9vf`*{T~ts zilb615B(!DWoz1Qp>Ui^1}r0M8VGAMu+SVJj|&IgeDN5^Dl(5vh*MTm6R~eJnx!ml z#BgLZ2Ph3Qf#?YG)nq0E7L#Rp1VXwKl;YHQA@cIQ%b|Vb*$PrT&q5X`b)#u5J}})+ z*aG4JM^DEfN($fYNjb$(PRynR^7227@qO_XACCmO0Mz&(N|?naGE+TLH#@G2{a?|>;dl}VUE_;$fdQn^3mZuk1fSH?rdxkuO7bJtPr2%) z+A3%Yq3xC*s_RF1T9LBnboC;Mcfq=K(vlH`8@T2g_xuX+-k{=8molV^!1WexWV@8Q zIPt}FsAWz+4F#IEmmyh#Mwg!ij$4@lk7yD9{YU5NW5ZV$zp3sK-bPN0DRv(amBo~S z2_!&$oc2*SwVe(BbCia)(4vPU3{ag(i0pgEW-Z_H!<#&)o;90Og`XrHAb?xkBwN&K zU1{&4*+}n7AtTh|jdVtSl1yb+*O!eIZcHPgi1G-YDvBb+WNlZ-BsQt;HOj@VV$0Uj z&_^RuhS)d{n>+tB)qyOJ-fWMNY_jrmaa;rE%D2khqPZlb%jl(r4IDWh|7b9_xQ40R zq1<}RU%#@=rOkhumSWME_A-9clg!)5GcqiUUW83yFPg#XC&ODBb2Eor!{T$riA_$ePGlt}T>Fq7Jeq@l zCNp8AkhO_q@p>7y;??eTug1dwgzfctoV-avZrWK6Yr4ofRX&THj8NG!v3vokY%zE3 z_;oGi`y%m5NfVcZT?E$TV7f_RaM_%Kq|6{2+ICmZ`hQ%#1zQ{48}0qnjg}JJ3j}x9 zK!G4Zi%VOexD`rqZ=pzVf;$8WPH~6gF2S7=+>1M$dF21T=Q>}2kj%{9v)8@WZ}k;9 zUK1>>lQoshgsYH+bISqFHDJ|Vk&y-}UjTz#FEC2|gNkS73Tk=Yzed~G#SaAI*Hq>GAZ`r{ahZVyx+vl=m$ zHnTT!yeidZA;KfZ3gxXYt+$rTba%Wy*~pB{RK`b82abJpj2_`%6R;yA?Z z*olxY>1B#`^=R<8O`CNk!(>;&1H4oA(u$+hrZovNO&U9C9M17fwBJOYJ+7=pj`OF$ zhefZI?26oO%s4;Xh&?!IIsoztt4)uC$;;>AEyh$z{p_^=)GZ+>2^is^p18HY$I0qg zfHM}#c<3Cr;ch1~yir4mq7~ANX=UJKJH2;?!ANx3yqKT-y)B1XR~0Csp*F=_1e<5f zr-h8>$e_4Cg|dG#zw$1vXpr+7CIm^~){Q-OGwouKS8jJ8_ES^o{2 zjwg`P3wcSv-r*ZgY{U2~Mq6tAkTWXkK}BV>;pmnf;R&}0pMrD{Wr|XuiMbwCTivjy z!>en?A_w*p(3n3m`A!qmrXv4hul=h~tTNkv5@KFr{nyir&3jm?um5>}yvVr7LAXp) zOa6TmZy|_^-i*j)?pbmOCuilDffSU~s6{0x_7~j0p;u@GA&*j&`ceXKLM)>Xw*R=o zLOdvNEJD&mD5~WnLJ@7-d;t>=MH&8<~6uI$7Oxn`W(EVeP4#vk7y4ba>eaAz#Wi@=t z7J781nGtH-Gl#sXqU5c4;~@Gh6`0IRZ)IE|sWnwVy6x{%2bUhLQv1E4ck{*3YQb9O zKGAk~Y~7-e-{nk1N}5%a{jgy0t;EU02fhHe?r9zt%$i{)54}CM{|3xi8I#%}Dg_$n zncYTuR_2fny|Y!{7d{9&;G}}nPAw;AO}rYJQx9IWXyn!VH-;D9#vcQ%4D8=s2K8Wf z0P7P6#vT|H`RbHFUn;)BW(!Z566V|paS~}VMwCTySXMwk=A?8Uj?x2DPCG?VNw#(( zdMXOW%tBxAGdX0(dhQkP?udCfeT1HzQ^p(0w9%rS9`5ttHH5LmMG1oLM zOmmHqhK8FQHR>;I+mR3<GA6)LV9AwKlQPwh3gIL#Yr~M z!{=f(>fGz{cJ+-7-9nP_=pP@<#ub&GR8ZO`6K68VWQBkWCEkYG?6fHO++(LxWQtLf z00B~4cjnFN{YS3|-F)MESGje|ih@4qdU%y>U*_iLX4ilp)C+%aUEs|jB+M&f27nxy z{7+zm%vAO1$vfB2uWhJ;l^Tdy9oWtyb9oJZULBZ4BQzMg+qNATulRWDTtHttO23x9 zkb@o8M=$p6yg+CyDr=a$q@^X+u5`m{v8;Q1)eUaRw5 z1(ol1xH9FHH*j<7VTZ<-UG*)6Y*GGqq z$BnJH!HS8@j7{LZ*MH@Vxw)CrG4{x|rXPVA$P88vm>#ITz*1u4sA+(D>WSXd$NwlV zT-fN=HK)LSk>I-W0=Dz{O+>t8+t@4n<;sTxd=;w&))4Yv+4ir~#0FPp7+@qcLhm1U zKt>%ZwJ4ug*&#B;cR4|9SKyKsFv&%;vgYS4W;PL*q1X$9^o2xvmJLRWe$OYKXEJ@cv8jP#bOGHd`2yB~%vpH%o z;n5|X7BQK=iFt0o!*GT|BY5Cika_;SBHpyi0~NV4RnCCS;{Ogz0!?|qDCD0@#MBP* z3^p9in8DnG50cBWUEy|*GXE4j~OG0U> z-iVx#1R_49MXhakw2LPW#f&4~xbTCyK46nRX{9!~rfg<2Sto;`BR4B)t%7BAcJ%G= z=az(-)~ShCknCC_CQa8%ht~lMVak#1pAZ#~9W<%nYC+&SNknc=(%R_3*Y6&v2cebl z=|(|NW!*ayb>0q5MIC&LOjA%kikNIiV?=SElq@S64>ORDL}rB6q=7+{c%jI*f-dY^1a*Q&NMPx?PiSS zWO8yD2U~0!Zk+#f1$4dr_XS`Ek*m%Xx@v}gF6lvVNa%?jIvz^D5OCT=M2H^*e#~j< z2yE`75#R+pVCc;X!zvOROpteVWY1N2ey~3ybd!d7pPTQbHh~q5C=Tn8WC`LLv4KFdJgu0m)y@Q7R_sLsU{R`7SN{QZHsN ztJlK+aXswW%<#-8qxDW!hE;sdpjV=FmCo!(u;Ow}2$;^C++~D`ai0havaa-17566r zR$0Y~&qAt7qR^GO4P{nFQIe1P;wnW~_myQu4<5F%>icA0$^V-7#8?1Y8G;>n|AnGS z4^X-0UO}}(^8%2WC(iiy)WK-N@Ub#nBrBNsxh`=d1eO*DD4N{QnLLML%%Zp`^U9`y05}+va=}X&7d5spF$o8<9Np%yy z5rF|cRm(0S@2~w)gnhtpU8M4Z6iABsId@ngg>+oNGu^^=vkEkCxq^5;PUxVbQb8bi z0_V>bUS3c+N{zR^E0fSn4vfymMF{j9uaPBa(yX1|-=dq`{9Mw4AE%^|`z7>7oFZj5 z81Jc|=evR7D?&U$=tFh1n zlRF4Egd+Jn&m0BnFnKn%YSW6bH7eI@vG)U|n~Fh~Ik>a|RDG%zW30Hr@`$H@@Et2M zjcZ>0@6G=IdSAp0p-bhI+c)BgFc=P6uArxxf#BybtXmUA?hAS3 zf_fM;6`?d!b5Jay2!cA6Z*SVrdl_7z#`63>u@9@k4c z%F>@aiij?s7NA^y@i|aAfThHO<{p;UlYZ?xA+NVD?03KLAPmq3zHFOHSiM&9Xv zQ#7kT;b)jYD(7anI|NFUdLK=={x?qhyEgToXQ4d}Ievy#Q3+yLm?S|b>~1)??MWX) zuLVyj&R)9hbu7^6W}%q!au$_9emr^G{C|G^{*|dd%tA|F5*Qt#;FHIwU1{1s_|Rv1 z)tE3gGA1Exp6+2s2!t~YOJ%y^XL5x)dUDvO^LP7-B7J#!bh3}?$f)Xq`Kxn zucFF~Qs6$a+AUC-6)en7m^KtXpB5^%(PgdjULlav?lEcV4i{G$f@2G7qhB+b@ll3c zo>Z2x$rAQChsAu2>WEz}l=KDRfgrJf0)fiB11BaDp)LlHY`HKP5&oE6iE``MhFq~O6v ziI>ZOPuuCCl7)MI&$U*_i|U zFRA?3Rdro*JwYWU%w=NBDDU<6&COrK3r=3NUyfbrLMh&*e>@KqsnaqTNT8ljf~xK|GO7S7W2T*=gtv9#POaj zeY^Y(a|@r`-2;H!>48IWc)P(L+({3Ln`~nt^?M-#sKAWFg#h8a#Ec7*x`OA!OcHMH z#q7Q^IKqt`L4$@`w7eLP3=0S-I6KqiHG$_+A7W`zDK)br8H^Q- z6taKXM=ne-Vdf`Sl|#AehNnTYjHD~TmG4)m!nJksSbCaLQxYMLEoAikqm}I@(^IJj zVy=|Hn20*YGZ>2p594q-taCGU{Vd*^x^+WE3jG!TbF{~Urc&^2%K0UNsAoT#+gDVb zN*%iE)phROhsrv%N|%;svncc?1SUGbvFe{++Ka5o3WkTnM>}KMpWfgeU$tgA7l%2$ zdI-cld`OH)Xdi?VZRXRo?26mgiAraAB{puV9~X0Q&&Y58VKK3&Uca>eF{0}S-YVZ* zY%)l15ALLf9#pL`VgT{k#yB`HmaE|v=S1iP=3TRzEKA3Xtse75&_9}|?NF#}I!F;q z<3(d+of|J5ON!x;q09AvYx7GIySsOF+XMFAj6oGa6J$t8_oDUZfB)YmqD2%q2;%mf z%8n~XWdf2VhwLc|Lg-{k#c*9Y1q6?BD=81TPU-seU|JI*U{@Hv{e`rHJ?ntYSkX(j z$*IQkUnOSi$)DLHDP`Mjp3cj|>D=t-)km6nq;#ZTjo)x9IH@ncE;H@Vws1;V^24uk zUi|8C%bxmj@>A6;hwhfPOY^|W6li~;+3arI-mPym=ElcOo-Z_$d8biq88a`qKge&P z*xPQ%V6-=nWA^tfZ4-x`K6iQC|&HN~@?vl=v@Klu|#kyekau zTG}_b`AzGKFDR#uChE>MF^rwwa|2-sRw$H|1G}jkM<7*3*oiNzkQ#!j52r(7O4 z%vE&D{wZN^ZD^o+ulXvzD(FAY7no3QT?={MKKpzLoNb>vQkbYUbe4;IpIOKv~3qAK`n7g z>s$AZ=JCNfrth>zJNmDmD|QeQg$VKtvT+V;2Tra@8+9X>4}@6r?)9(f5-3rqF(>LJ zd4kt?hPl!5pOiQuxVR2l_@A_%FS|r<>uTw7=%##YiO-Y8m`AEvAd1f(!WeV2olT>5 zCre!24}YL@eu8Z{7Bs)jZi*+(^&AC1k~6$+ne){kk6-V%tn-^#EIyoWr*^Vd;2g{vIqU1yH-@UA-KFi(a-`W=Kpl# zvwmkVJhH>MwTMk3EtGhY8g56x-`VfPmo})vl<&dhP6!b|sFo&p5`BP8ebn=r=2Z~$ zY&kUN&)ZX%d!iXFi;QUR<0D1V`giy-*9Oq9KWUiqXj$%3*6}_}))Fp>-?pVT@6r5W zm0n6zqPRofpS67Oc(+Faw4ER}pH3%U*r)uaIx-b5`h4WYCQ*WEP4?pwh~9K~t~0^N z-50pOgP5BnpX6*87JfZi$R~?O;mE-%A+Z53~ra7_kuwWuko zvE$g&z6ZP)`Iv+hSaQZ|z5qaw-qfm~yHr5-qg$TY2TcPdez-Qx8T|)&NP&zh%IdJi zm5KNQ0@9^M@9G)9>m)w1>gGxM(@+29Up##F-+|hEHsDiH@p7(be~~NZgGFDfu&dE2 za&Pxz^Qx(9N{j38vU=`j#e@Ess*g;)lM;uq7B%8xom3$<7ZmNOso$1FMJTJ5DxiVr>{{^ z`7m#qAXN}P5P=u~ACv{8GeBv)2vs~*^8-WmaJW=p$Kfxc^-#U>xv3;(V}8%;bJyDo z7!HvO`=@hT7k{q07lI={3-@n0#11zqJl}HVG^_b5T-Sj9a9=Snn@U8Jm@;vjou!lJ zU!Ty`k}#s30|()futxNzu`sCBM`S1G-2*rD;_!Rf$!@%5`|^;1ewBnRt*}|o&1mN# zF3$R2?eEzAbQtA$-)U*ml1t)-U^_=_D82)$1ctX@Xsb=+c0V4sv3K$L8de zEP>X}-DrGcgYsH*B8YKg3-IZ;n6sr@G=y7+)Kq8D>koxLlMV}pYe`%Aep zaE6@;|O~L=FdF{MFxlI@Cx6KkYuUQFWqzaWG#iw5Ce#-ruf!gKdnVceN+LBQG z>ETQ2eRtX|02jG73p1=ZytH>ulD6I*h_=qZS)2NyrQW(F{LCW zNdr4L*mwzec-d5$-uLwO(^YdkNSc@WY9q+#b+y0E_^;^=dT1nTsQr`rj76`cDz7(5 zfc=!jzqoX&7``z6VX_3bHK#Wr0*Y4S1jBYYFt`sLN~YQDrf5VThZw&X30J zPTX*^)zySL3Ies69+^oP6@w49nzXhxve~%E)e8dCnUduEMy$@%OI|LXT_%<^H4BOM ze-><1`oVGQd!hNaGp!?KN_%g+sAgW&+DX{X?hGCjM!VKT5jEi3w%lREX~(bm)Tly8 zM*W|#&xa@|tqB(koh3<5P@-s_+F%|IcO->tZNMJaCBc>sQ7TPxuj|E!@#QUh0{0i= zxrueoL*F#lsWXe?=F)MB27?5fLcW{b1=q$%JRS&9L!<_(km|_@ z1Q8P3@faPLMCz!1U;GTsJc<~t>pnj6H1)5O)dY{eO>X(olA!DCqM5kn; zxI33GDt{BkbX4}UGiLbWYr_2iMaX&&%E~ZoW`}17p3O6~&&|uJ@ZO5kH06=A>5GrJ zM-DGvq6KOPht1jHNKpBpi)+VR$>49lu z0T%+kgvx!la)1kP+Rh8XOzuYtKnm=}btzizgxHT(}a%lXlClpd|YAM9p6&fG9p5%)KE^KY`Gc+2466MGPZy z+!B@4c;(lhD7n}cB5m6hGcLW}|J<)f8gop+HA}Ebo@CKm5$bw|_D*6729h;kYh zW{hNbgEbD3+my)hG;-WjMGyj$(xY3e0nJovbvx^FZuEnBZ8=9GLv^fL662-DH~89o zB`YfNjCg6)xN4xzR;+sU#6{JCsa>|_gU{3XwHXqGbLw3q@;aR6bRn?@oH3APb<>Ly z*UV34Mr&IdXPVt@IVJ}(QQ;aD~I;9i-<3Q;tJeI0ZPB z@3fikg~oRUaX0zo^qBZ}5pG)8(y_LLYOaH8vr;o8ff%U%hlD}JI4TROCr1SO&!({D^0qgJ4p;b1POW41qbf8O_{OXZfQaGaC2 zyJK&^0=uh@>q;dHdUjqy@8mBUX60OFP@~F#d2j5r+f2BcSxc;{qN6)6MG!XeYZC+w^CFOUKaej=&@u#~chsk^nGjA%lWq7i3r7Vt}_!o{15o#mP=q@?V`z%Pv zP%P{(Gi4#;(>;`nW=K|2U$l>Ky-&JW%5gGSLFj?5yO3*WW(6OCK?Pmp$4P0sPjpU4 zle2OE8F{bP>JjZPj<~GZ->9GJxw~Rb=}D!TS#73o1AMnUAt+f z<)1uOUbT`(Ci0PV3~{2{+s%gs?>_|j2EFNo)Sv>>L7X8$YwPuoJ$iby9dwcSg4b>; z(3TT`_Iyc?wA01zfJm+oL`Qy{ksY6+k-jYW6A$XPB+9Tdh#t8H%EX=@2sRKUOH~vV zqIFdzZNwR;0ZMSCCfOb+u?v+~z(QM}j>td7(G}i;JG(P(=onpWlCV}ft{AUJL{I+u zQ*hU%pv<|s39o6$b|`E@a&?8#SNkojI_ef2mZEqV5ZZ~UKg6TtE`~`)M}1fD;t(3@ zO0c{8xHl0^phj%bT^S z3ACPHzJ`%->$)>NYK*FIR{uSgrNRjjH}RsQQ^X;k?ZXpFZr_yKgm}pnGpg6};C+5+ zG-#RQ?h?{k_@i%Zs_?s~se2FyQJaRY29KNrZ)8ZmUgDM27oo$vBwbW>C8$K>zf%H2 z`N$JySi>>k-AbRe=6uvs+fMQ8kJZM_fL%^tr8nkkZe=Zg(cW|Az-nKtG`3`re&USv zykPH&FS!Sq-p8#-8g_vxg%G(`ck#m^A`#Z?A!I$B%wv#kD`ZT+>7ed-MW}0rJ6b{y*E*F+L~j>Y z7ja}wjG)D!;+m?tMSkCtzw`H>;xQv!Zfv`NoEB9^ZfMSTClEOs*|Q!O2t|k-X~e9z z)xXjTcrgZi>j=#WTkvQU+{2xm+hKLldA+uF!oPm*?BP`yQI*tni+d|~am9wyT-5V@ z@XrY~{QiL+6zh&zNRv^W1{q}c_=S?QNZl3Z+_;WieFIVGV?!eVi3;Fo452>`wx1#2 zsDj2RzFU^YUVW#NPTS|6(uBSdjBA*1?IgH-W~mTQ?j`a}5U+B8tMtNWZG>#cRQQ!Q zSL$2Nf#5C{Q7@>2rPY;lW!EXEn z3n4_DC+4$M>LXjUB!Ey~=R}o`P7+dt21kDIuNPLCS%KyT49_jUtc+A${!mRL*UyP) zmy!Zi3Q-DvmInrK^K=wMEZW@l3DXdy<5yq8p~nZ7pKD&o#82TNaWTuxXVY&6hN#An<4MO_w?ZYPR?RaWbi&$5Cd-wd1B{Hft( z`(m>6I&B^@crC;9x_2KG#o#>j{rd}x!hvIz~H za&{R<{W%qh+|2j(120^&-94mkZf3yCDs=&(XN%ThxAcJRD-93U(3TQk-%cW;?NB-g zZwy#i0)QLo^=9pBVO@q?cKny3oIymlg*%_FOLEOuFO$BWW!Grb(5e6I)aL2xJhBiW z;FdPKFJ&~8pua(fj`k62jQ;_B@z|a^+n4mXif~D>7@7MkpvStym^tgJqojf`-j42+ z1W?FE3S-EGDX-)yarI9{3|Qa^gYHfJ%o6d^dNJXKw17 zBk|T*4r0q4OLu=fto{O;9jd=1_s}1$2(fA-kr(vq{pbpi9)0I1u5%na6m%f)#YLHgkq|~72(X=PCjp&(eN2Mb} zmma2jLnGhRtH(QVF$}yw#l+-4b*1akqVV+vpq461mAJp%@q~PDS3f*@(KEzM&E6bn z+#DBQ&nefElw^2DTMJx3yioUa?2!}9-A~U$F%kEx@7V#Q3jHThL}pZ?&7qM+`mT=G z?0O~2kqH#x69!byzXi9uC|&H2n_Wcae+-(dfJL+`f30l-dEm__v9X=qN(Al{^BJ;+ zf}$uUIV6dN;Thi*{l50cJ?d#41(YoRfTk3zD2GJZ=8B1Vh@YWHt|gb>a4d$i#{JhI zy4l6?x_R1#Te)tq7z$N{11M9npGRxYD#tZes&WzW>9R=O4j!dA@ve#HsTq=AwE5X? zpgiKmDoalID8P~0k$-QgWN ztER3vZmY$7 zs08}Q+_05!2CmyL7K4>+=_970M}Igh*l_Dsm}cDE8M=eCM!q*2SG@n9@o7J{eGvre zu|1MWo8ONt8v^JSQ{!ar)t%QkqRwf`2g)F*__;S}WLHxq_;&uh0W5d>)Xg{axQe$^ zSk5-(ie~CMVeGg>C5iIgDb?kR*<2e-@J2nlOZA@*fP;M&>EYgQ@xav=$;UT1_pTb} znkLhtpgrq=O_P)nt{?PeDN~FPhR4A8Q;sV8i#rx43bv>C-?&QWwh`?0DDnc)uBG1- z+naP}-WYi_C*mw9?W(bUhu5^V7}t8yRU^1KzP_kepuIk>Yn$4fb-7ma=Q^^a`5?u% zXg|$2x_wp_cFpx+7ylaMEt3zFfQRg4Fg*IlJqYSqKmQE7cJ?`lJMur@;y*8Vm_K~U z>>WTf4}EGlu<-JtmfC~m&5t)ccdIuN>(Nj3PLyQv#O%WF{#tE{v5j{3r}5ES_1tJE zi&b6(I%y@*zbJZQY-Md`GPB&nD-yfSaDzDb8nUyj^aa;T=GxRMGbym=yO`Gq*QuNB z2iROc+A^BE$+w#A-6;dmjnDt3H{41xuBWrl)zebJupQ-QQX+lIfeQH1FvZ!YQIu%Fn`QgNcCl$p7~X zT+19R25o&r=$=}{Lriv-h^>V8r)Ru|uG^dyl*l8;&#!1XSpo&;1JoV%0IUZ@hz@CS zyY*4E?sP*(z~pq3GYYUM=?Z3>9sfwaycr@mzfc?3u{z7ub?-Vt$z-Yj2ydn;xeH8? zF{?P)3!rx8Z?ZaJ`<@7iRUTp}nxV?PiU`ZAUYXow0Fc$QZS>I6v-p7`?)*gcX?(-{ z!HixcQ@5?Gm6yE9;`^^#&QHg7Rk-cm8m)`=RD;jY#Lo6p{&1Xot`wTX2!Od>i-fi!n3x#)E3B2>8YA7B~9J|`bsDM?nI`v>#Ul+S?qI=z` zv~7z=^b5{piA9!rmV`-?7V`7b#_PwFnvE=%$fbCftlA6->TFNgTDBmuVM7eXE}>er zU4yHl9o;wn2aPh;qV6(|eH70ywSK1zmj!wSR?mwH4E_Z6RN`9B>IEQkgdZ|V8LK2? zd+XzbdXUOJAULbP^=wla-yXWTqPwPiOl@cUYW|XPG)+nl6CN<-oVx>Qu$IK}x+%N+ zF8=T1y%K(yB9Fm;8QgWOM2=9Q0?W+n6Xh;sT5QH21nkG_L9z?pLt@`G%WST2;!1XV(NUy~@O!;A^<#2>Bzc7e5&CqwB>cGZRgd}W#nn&} z$HHkfRRv$gCkhRMMxQWmBipkkJTEnsiBbiq^S*|^y%7x^rA~C~J>Pn^`_cVjzB4R$ z!DRD1y6kY$*nxalq*OUEVsh(a(B&DiuAoZO)yl-9dg1+C%Xtk|EnJc_A`h4Loib`@Dxo$K$$i&=k-=^@tN9tN+KeN>M22N z#eUSHYj^k2nf2$C5iuuO%iUCJ*L?6^q@ZKxc2}3N`UmzenQ|DmY{`HM1$blR6P}Vr zqpOa4tN88@-=8K-3mSQx|A;M>v~)Xz70uCle*vZsPmYx+n64PQCKtIm9H3uAUqdz6 z8e`ngw@-5uAx8E`Kl+2JSFp%9DxKusPd0tsN1|zT>6Fd!ued0imdB5b16OI+Gu+{C-fPmr{O?AunK8ni4$!bv$*?^?{5vg|~szUOZA);}9BMY_l4F z;V1c3@`|`aL{7crl9f0L)vzE!U4+@qeiOubYpEh)8r~lZ3Gxq%*A-hv?>#azGaJ*| z!7W@|Ke)m!ga~EiD`n;FVQlA6yJ$i8fOQe~gRshVGi%E0*76Q#;|YCyADpWv9l-Z{ zu%?%co^X;qIc6*`K;cc~yFVYDT~K|qSMM~KnS$LQES%jWA&YrWu$ZFC2>pB=A7j>q zH?cp`;L*P_N0mUWQF-~&BC|`x%T8LVJg{sJF?-`*hW6CdOa6Is>O(k-!i&i(i=n!T(N!2ueB7 zRStHK>Imi8Q!KJW!z)PRO+fSs*}Dn%w-%G4(=TmhbKNDq7AZobWLO$phF1Dt zn37xgOfwQ%y8dp5)xl3!H_M5v?D8}|@$!$T$oCmO>Wtfn({X1Oh)|Z@#<#;#8od+> z6@4mXq%GrytNh6yDzzatZ9T#4!sWn0nSGrPf;n|pMRirF4-Vg-MxTO~_Oo`}3m4R~ z3XP7)!(){AR<rtqExb<&s zku;rDGB=;^Sae92H5~f&9`WRrYt>B{qO)2qsKCV({?eA%+f~AB`Tg@J*zvPM8D)Df z7kbI_*TRVsMBY@Np4y&64z*wyWeo3Dv4pw;j|$qk78gK?7$MIEwHjNA$?$z^gIUeV`HUcd@ zbfNiqc1(v{oL#GbJ_{+~ydomt4hU*PbX!Hf(Y3)SJyFpDRNqs79b5kM4YfFr)1Gahk zqMvM(ihk!^`|3YM<>KkmLcgSib(x8{epS-BiDZJaUh#yHsc?Js9xtCAV^JW~%jE}G zIBk`O%wM}dpM7Pq4pSJ5Bi{h?(at6zvr*htk{%E&&=t+yHIo>1B#&^dH zr#$+y9q*G5v0PKuo)SPJVe0Jj8E&gTChKL!D)u5d9Qs@K1T~O<6mQrZ!M`EDPs`|+5kn-+*z$Xk$& zC(h+1%xpzebX6!N20)U{)RODkJDNMbVgV>zka~kp7O8`45(+{Zx+fNn$AgNh$q9u| z6C>1s1aQXlB6-`+1YIf5#iu&r4@gpicVeadC-ll|W|ZBKq@FGV+43UOTU{Ay9hx8C zYlFsXd1oB*bLevW`&!AgB(6?D7fPtFVn*q{r7_}&WIpSb`<6M_35i4**_A|55u=Hw za=py5&vR6SE<^k>2zL1DsXJ(c?}8&2RB{O3my)J{@f?T878Mba-7e z`n|v~b!xcUm9gd?gGDq(+wBa;>S}$5O#h3^`S-jGt%n6pvbKw6)>jbsF2V*+d+ECk z(P!hf-INf_^x&iV*?k7985(ieh5DJmW6K4^RE6@*;iCY0NdPqDJ&gSBN{oPD?;Rtix2x?Kt z_3ArZa+hN|V!m z2qMjHF(^&v->NC8e4UmUc)H+;+@GTr((T6Rzk$2))}f$}OP(3U|5^X}D^M0QAlQ0! z+WHkYw(X~f)S$&$6B|6X=uS}|E;NW?MlCN<_Rl@O#bMzP-|NBJ){LNc$neMXu;y9;Af$))qHVM z_4k3Np>;IUoC&om87(Nl>KDe4E6 zh7GxL`O;6>o7FZnpwb;z2D_p#-Y0TFR@zF@3>Ld=w=?{5k)+=9YzMsyU7kKKXXS)n zI~Qq}%ZB1dHj#rY^`q3U65B0LuIR_%o-y_3%uol%aDyA>llrj+x_3uR75qoM-|NU% z6W?wKp)*xPNKb^DR8o^(8<;>a^*@@zwKET|nWUhO0nls>AOkGcI^dud!$3Q(o)vqm z)emvtqh~|K#0!^RPtI$51%=YC6{o)C__nri^Ug9q5WJAQ-Umdw@QJZxt_tIE-KPaE z7e$1xVnU17)lpV4c7tOimzu9!T`vL1Tw^vBJ!$!Z>`$BTDEHD1M-%`ts8XdRLnZlCfZv!o2OjQ78_>fk(J2U z)~bNx(~8&qxn{q67$1b@X%A>2%z1VHtiI$v`~svXpQW(+A&WmHzGwc~WunT-EADDT zxAvr?qFFcn*OD{}mVR(Sp>dDblEjP$$vKNA{k)-Q>X0G3^B^5vLmb<+amWmapzMmn}G9YhK40bJ&%z^h8IrI*12yzb?J90Sa&&gic*bBswu-ywE;kc!e0nO zxtav!5VE$FD3vK;n3fFwUJVvg4m}XAZD$%$)Mr!sU4e@#GT!h=!3s^>vK*ejcIUuZ zXUeeHdo-lv^{Jx#VaaHa%1)Ge>f*_PVG1KYqynqzcloL+f0HZ#Su8fc)6 zync2I#2pAzFLW3+ar>01{dnkJl|#Pqwm&(2~X(woov4WJA!o+#Blp}NJlLdh~i;SZnEj=07YBMK-Pt)cA+W8!Ih`b zw!G>nsI&0l&Yp_`-;<^)dO3&v=_K6LJ&N*^wdk1XPi3G{JlM{5?wc02_AVdkD2cua zN0_yar=m&Kz0d_E)q^)t%t>R%N?boVq+Lxxv2*wSrp|p4LNmKRQ`{iGs3>X9;A=Zd zLJ*-8vpg)r2eS3%G_a@Z=-@Qqtz+}gn|P;6=xIIIkDz@*^yybvB($JBrk0Sq-72Kr zlX_J%FonSb_cnQ^Y;bGz5m)krGF~RmwgV1>rRFJZ4#N;#auxIcq(jvI_rs~LzJoqC zf;YLRO>LMXk%qNq6-y3R9PRV;e40gWm-hW1Ll&SSbTnvZqi9PMf5)EuVXcFj;vvU& z7vZsHc6#}_Y<|iohthy=6JcmftFc3rCZuJhK+TOb=*w)1_Gh|^nKv5t0U`@xNV@6o z)uxf~T2T>GjaV!`VS;+{6mxoXIm}iIUo>t?ELYBOv^*)YeNx@bk0}obGHuNmANIVT zNL5gY#&3^a=;*)1(h;|n1+fxgGW4>Uh2Li>+zc3P{P$!`^D9DjynFi8gP z4gm1j7MGFy#}?$)ohXgqgSo_i#~N@j&<_dfN&5}FDQ5psh<@F4CBmUy`r=}Ew$#nH zrtuYq=P{P)3)9S3jV+=4jDZ~nZ0@Ro*8>zcJb40`?cGq6 zQVt_`8XYwI56=HIPtR<%Wpgk0?-?5#Mf$f&aP`e>cvVONTrwpfjWdc%1!KuN@?(ON ze7x6ayZA1SVXdCk!R@_J_6g9%p@B%&k@Z?6!Br!7*)?p&oRrGd<+CRE#4-xiS=o`0 z3HaRmphW*z=ih)6sK+eg-v^om7P6)^M!pA?!trE(mDDFAVaTNv9)5+5iS~k1BLKZf zmV@zSd5?ku&=nOtHkNCvQ$shG(;A|=o#9{&FYRFUH=`IqkIE~W3F;N$XjwA8l-yQe zv*r*O7Ju_wh1#=+H#4LkV(eiT^?i-ZQ8WsO61?zzL8`!3h@M3QQSBc}+ixn%0)h?| z$f&bbElv!mGmL+rJ9ypd3cl2;GH#Pl2{Y(Q<+8Fm=o02h%{ySdM35Xa-#l1$*i=^z ztSsg(t&zJs|BE7}j(uc95&6?I7M%xsepCiywa7+tQKCj=lU1Ik5mDzj!EKE*oHFNo;?O|%-UGB=n^UO}=x0|dy>Z#8-Hil9 zS$@UP(=@eFy75%+e1W{9-2Is4UROtJm$?(cF&=d^0+S#2DK}tg_54flOGk1`>@Mb7 z)rEjgnW~+di6$D%!qQd2dfRsB9DS~y(V_YXub8-<>a|&_3^)UCM0rP_XUfA^{cL1P zL*|!hdn#Ji%9&pbHyjT4IzB~Qp_wNTNizu zr$G&QF{vX^gWtZiP>$yjF1gJHHtl?iBkoUCjP80HR+==+(a7xjP0 zdh4jR)+cQAR4GzuvEmdjF2S|Mg9Qs(G`JRbXiI?tL4#XxcXtW|EACRHNO1xb_Zv9p zcklhyw^shhT01-0d2Qx-X66|+s^rpthzSNw=sjYlh=B0K{OjmCrY@nh z`mE4UvKL1)YC;4y1$r|QJp+eQ4}59^Td>t!{(D*Ydx1Pu9{7iv$$&`7!&_Bc32G0u z-Bwz7tfZ7p$I?b4t-jRW1gEB|vjlFZlO8M!g$bGy#iR2v5RKehU*V+_ErCKO7fwIP_dEG*eo%GkFz3 zX53oDW8lO7-(-MLRw^IRgi;@Y%UHW+@pz3SwPc*Jg=PDCW#&ndpfuz#ouCI*<5jQUjI*?l zW9aa0D$iGALuH!!LLZebcrPjPZ|LxB*o`@u2^nd#5Gfgo*TP8a!dLowmFC&e_Vpy0 zg9dmp=4e^dRG-SdaH8O97;(PD>>fp(fi%J^^OPbY&zMd|wYJ5{rVYF|qW>27-yG?o zI+A(GaqpW+f?gP##2i{Rf5*j`#WN-p%}v7@UTuc5NDna#Sq_SFPaSw$adWXmwW0A? zS!gbj>IqDofH-DG-;XS-APd@D4EoN##31gM`+q~^*9rkTXYtTQs?YcRUgLPy7nQl0 zV`P;&8mKU!#BgRSj)Uv=Xi)%=+~MzByH!m&0c+|b_NA{8>m#gRDwQ{Yc? zU(gg;1anRl!+wOjpKJG2x9~IKZL+%QQ^pCV1QIEIkxh|j++pmTlhX|K}6ptFAHRRL4hcafYaN+{wCS0O-|( zuAp1FHpSTBY$!d0h9)E4ue@g8>Ys)#;Ym77k|Wzx%5yzg<_yhCdb!-Jc#!PRiPtkN zdo1M5>8w3LeXri;NV!qn=r)KbDJ;+RQq&TMB$|}zJGgiH@s-zS{GGv zb$eDMa91U0L(kbCO$Put4GauGgJDD+6F|3guacVKz$a(@mx~Y$U@au?jY-d5@$t!T zfK5DxS?q+!aX(Lne_si!PKX+ZU?+qO%%i$*S16u2ScsG-FAI_&P@P=T(RvwSE{q*2 z=+m4dDBV(;CL#9@n&xM=vO;W&YP)fD!LxHqDyj>F%Dtr)4AC7`nOpL7hpuWAd$I=R z%hu#(>d0`$^%D8q_4Y0~q$1>_O?cqNP8PKgQT?8gFI~uPt18r6=%P~eWLWz$!cff` zJy4r7S!s%JB48SbRi?N3!@|kPagKAg(^_1d{%KLZ25$GxO&`}s!#p>_zKxc z&NF`8A|m%@shpnBKI4fYn2DQlr2wanEz#aKWz=p$$@UzBwRoXZ@*cL02B`*&*nhSl zEK%c1XIEoyhBgSV3T(jqx5}CggX-HW@sz_L^kAm?f=GUsgQSyLVhz3x#%eT9epL=Z zi~{mBQ|Ak85OPSxjh>c-?9s=ZESp7gn*Q}38#U{dtw%~_2RXkLlo$kf@C-Oe;e7cu zgR4bm>wQ9T_8XBY(NeCaVoq+zQO(4#X;MUDN{GA*Pt8^N72p%S`R}ozsL-CGx!ltI zu5H;a(%vr00mRNQ0+tfqStOqO2F5@Ddf#T}XeG!iqg>=&80=drcrEX@Xy8yc!%DN+%c4lVCwDinrUEYfnYXWJTpk zFtxj=PKJ#s4Z}1~4=-T2OFmfuhm6nnWDLdpY9IMY9UCyKCF)d)=c!fYH6bRb&5_`Z ze`Zs8vHc_~wdOpP>0RM_i%y-YpSSHSN>ztdRHG&pMjQl|R23P`|9Ghq+<&W4FoQyjm3rEIL};+SbIaS2R20iuE5|aTTV>@w#9yE$34Yo6O%lwbPUZ0T79uTFNTgNY>F$Ki ztNV|pgU~ppnlm>0C$}AM+3LA#{%hL-F%N`^Jo=Yvh20FRjHJ)qFjc9g4#G3I*zz)L zdLB+m%c?v)v1;CYy@TfK>Dt>q^f-BV=>QdqZ}x5OJov$JHdz0W=^w#-tvdkBUya4~_&2xE;X2=_AP>;8&=Y$D9{&n8WeDxNG1Te+ zUD2W{LE{P|6Qp*wsX|k`_`@ZPF_i56331V^Fbl}EOw3)N)P9e6d@vOvjw3bseoUE* zXG#smY%9@KS%%znKH=r%wH#umNr(>V0?Tc5&@&%NOn}u@)hBufZZS24Fgbr=BzXUg zOSBTh_F~%dNL8@6A6H5EI%ojgn5SM%9ek<~i?u8Id(>0R@{!oo1h%WFXa?W7KcEgS zG<@2S3jf+p@wTNo^yKDBp=NsZ6g*m2)oo&r)^PjQEN_t&YzA!k_=X&pCTpdhpyW23 zUa4WS|!Uo+7+H$vi%rV8@xIT^^b|OvuPnb`N-TO?l^+qBjPKB z1a|E7Y9uGglw0gmMX9F~SRqXtmbP2DwHf$Dv*MW;(G3e&L*XNJr+ED|iu`)KtjB~< z8&%Cw#o9)4;iy`V1yBdW+8C~4YEnBnec2te(xNM)jxs`2DL4^bTdfa9KYY#YE zeC4_!GQR}Ad0_EqfUq~W);{)TLB#BNGLX^E$k7YV5OlR`w^!NHGPpj(t5%YuRgBUh zxD75S#Ai8u+up2{TkC4UerznqnCGJ(fS^|$0AuYUxjdVQ%9x3(Y9ccjWRA@|fLk9o zX4l_7vbOk}1Z8T>i#v|A7|bbj3(472>~0jww|U2~0MBH7L~YHkpB9P}T+y>2J$d@n z|8-SoKxYa4doH|^$Hre@2Z=ok5=-4Jc2+*4+2zb6<_o7#1(Ilq|#^#8u-1 zzo?;EkDs{ZkiyRRw4 zDez~d+)pr_Lw#)ZuCdOvK{q=kH8?p+@}0n%h8EC)+iER$C|j7ohN)d=!J{YSG5;d{R zRw<)R+nOsZOrY0&E>*{{MPY&X!2Pd{A~LqtB&{cX@rFF;MS~S zNn&*g5-_d(t^W^0Uq)QQ!O9^wm%|zd310NH zg=~3W9%F<$a_|ci*$Tw)4pug!l;MCP{+K(^>gg4yg2Rx$^APzL`J7+YRl6x$%nNm% z)!|=z>?zphMOnG3j=%N7{G$tTrD5Qs~9HFB4FJ%RHvu21!Vch!Ke6RT;m*F z45%P*4ywZtDaxFKB#bStlcn}AwZ|Ni4eeM_rJu*eqQ(%PZ&>n#rZ>zA#Y1XoiNT$@ zkD~~(u6SV)5kwZ2G=o`8CWROq9csMob4LtVwRNg`OY$4XB4+XC?*@9)ZPqA?a5VB| zL0wjr#vJ*F9(P@`C8CeQM6^Krr}8=&yEAHX7HO!!^D&12k3Uu!o2pu5*zB*L6St5+ zk`T^S~SHD?&EFh0mu8{-2RfP@~wldqR)2xYb% ztYc@7Rw=5m@6cWM2O(0Dj5PKaAig%A!;v3! ze%Zrbqsnkx;9k~v$EVn%Qvg{n2+s#M5w$Zohw^q$HY=QS;1uSQE41^eD2GPwI8w`x zo;Hb0lx+4TbO5xqv7Kh(ZWH`vQSdQR;jcXiP$%4ZpiHT!_vAR-C2B{h)1p83W+*~9 zVLzv#F{XO=7qnE&*rhl%`lp6xH8Qu29QO+Fai)dmxOmajMW?N8u|mofxnz`CMHrD6 zIkt{1czLZgcI4m4 zq*x$FLWod;l)kTMs|gM|r-NjXj~E`ZH4Y@6+308MNJI)u!)0o`Y!DId|FMQKo*bd2 zLrEvnCu3ySP(s2}5??nPh9=pcMW@T7*CidihMrY}Xee(BfS{ z`KS1XK{_T(r}8+ZN>{fyoA?cr=V~B2A2*7z$i4Qw00enqWeIKKHU6m$r{H{UfTX`b z;%+H9FXgVXaP<|Rgt4FBlUrI;v-7M9b;XZr@^`C>OfB1YLgWK&Iy8X3j0pRQxs2gL zD{cWG+m5;M{%bV=VBT)u+~SJ7sfl#nj|PU=OA_27 zr7*Iv_&T@3Vxu%EH7Q?S7}UN@B}l>~t2C5R?i=~#R+Nd!im}ixySV&S9#4GcIP(BLSZCqDpCX`OFPh3@;Or_#bhYw=#_H(CQ&+^Ig3EDySALU2`Nsiw% zob+GvH)ovMk=B>ow1wrlOuDWEQh?nSZ%IAhe_+i1nYThLr4cYArLHWqJ;l>k18su` zQ-E$ks~49TeZ9&pkE2oDt_=Tl3F(B+pZC8>XsVL53rYIc70xUIGc@Dng?#=SC4%a~ z@WTCsEeRNCgYsehD@acCXR2ovuUykc)YnEH7x$$p8SUU=;w&EiUgn*AHmmh`Phnpy zy`}KIfoI3c5ABhji7A#ur92Jbu7O4@Vq`aWK^KZuV@)+`Q4zI?s)Rmz_6ujp!I=YC zIV+WJ9G-*5jL&bQ!~CgFAkHXS!uO2E?F>0K3yx6K-Cj91@5yxOXSYbrvCs7XtfE+)g$6_q zzBe=HtamF^hgW7Q{RZxp1vd6{7U;&+dC?l9{T)+GsV-KjJx4v?``t#VR7!&K{~%DCCmhK|ApyeOSkb6cfqQ# zZ^yq_$VAMYZPMBgd8GMHwY4be#_`{_RL5f1_}Bz={b403!gTNg6l{}Z`FW?c9=gQU zY4*uE86K&t@>TTA|KyTD?ePdKWu2IUFgg~>hE7>O5k`F%+ez{X&}4@$(r#dUPCq~_ zC+T(}h?`I#qDM~WCI{7&V)+*47nlPTo|_QQoQ+i6X_pZMcOCJQ-PU$wNUY1Cu6mx|9J^o!qIQv2 z{N{dX$8zu6vWno26f7U=)ZrA+{T>znjLZjp#48DthXx0anl)B8Hft60+A1PoHLoDSP=FyXX>e$8%faXT z6zt%&gVq#K$Jnyw-aKmKHh9x%d$(`-0Z4S3uT+ ztisZe>SOh2fPCN2p&vP6`{T^cz;zQYCVMrNs4~_9quQny_!BCV6OvLcPr3*QOiXi( z03JYAmbYDS=xmI*E11!@DXF+yN$!Ti2@sn>tarz2@5*!0V5w!Z-8vK~hgO;*nADwD z@bl0}p(xAAD&?}$#^&xv!@Wy>*h5QoNSY&_ne4On~7~y32bz)uQCDstQxS-bLwpVjd zg#k7Y5#S!&<(iN2L+XpNR}Ux7D(*2hsN>j`V#AOFFM;1S;26r{UiX$fJN1nKctZ)fn5VV&$0t%4qBwU%A#!VOV%&0DBW+D}A?bU2Gn zh&s!HPQ_+5?TY}BGM)!V)=IavpeH%A%Txla@g`*?ot9neigW^W>0sSqO6LEb?Hxk% z)ax6VxYEZPm2j= z&&zB8!!IyD*419*yZi5QXrQIVIE)3#Ue}7RT-fG4o?FUB>pJ>%_vp?6pDixHexWQ~3sv9vT_r4G1TTN~B*O*mUGa$V zJ^11V;^LXF3=&a~%1o>OeYGO2jr^6^!d}AuMIqOD!*)6${;;##%QoLjqKA9?si{=H zmnop;Bmm(zG5gPX^6lu2Xx;5^`;k*2kq<+C!%HMjJT7aN=42i${~7K5=XWzDGF#WW z`f!Qhm-DrLYc*x7$uEMb7{2tszVxVU?h>P`u3c@|%S+MUIo#C=Fj_|DGJN4^HVO3I zowZu+t1vH0^J9Mj_f%}Gyk`$rFlA-&SD2g5BZ*{8Y?=viv$C>K^^F(--4@hYE8i!k zq||>oUpjb}3zKfQ*4k6k2BtMpR8KtR!QN|mQD*J#+U7*HOV%Qo&mQqwM@=Q5QLW!9 zVes-VF+30f;~_XANyX;15x zs*<<=1R=)TS%i(C6!`Tr5+^)WHgcI{k*9e&RH8h=@!LNyw| zPy}6RG^-p}Ew`pp#xct^Wc)*Lp;esQSW9R|vH^~-b3!1)Ny0X&bYi^MQfv-GJu}eN)zB&u0{&w8b zSL?NaW-b{$UqasT*`rjmo~?emw&rNV%4hzZ0V`>Wag=RlM$Is8xMtBidhK1J9X^2> zc)KZYB!21d)IwTRxH8Oxn{ALX2=RqsC&o)e=X15Yyru4ZdJWSXdoyyqoqa7WqP(&u z?D%%+aX^-1t&vy5GxyK&dH;(kJ{?4tYecZq0<>+@S`)j z`#pQei1I+ZP4C&L$>DdCIo#2kS~S>Y$!jsrs$-Q7UMZ3?Jw|7jeZ9RM`=GAXlh?_S z*aibMF#l|g z;0XqGL1#^9+GB=(+};^iYq%_NufCWXZ94;0jaNa36=Cs7#c-jzu;o9`wvPZ6q@A{t z%wLyF;d3X7c3%S)pe(kksafJ_5z%Ri(i?o*^9>R*P6TX0f*Jt`J?t}v1JVInE8CY~ ze2E2v8e~DYa1!B$B?~hmQC;Z{=EBsh&q9bsY>TE49s>dBelkS~=3OOh0SR!e9f$`_ zcm_E*CggK9sIbI@ZW1-hZU&Tx-}Ud@(2|z8a}`>WC1#YqJx@H7df4#7{~NEYOmRIq z2z4-&(~yHW7|LVlba6l@6dbPbV;j`|ryB1Kxs193OBAPr4j&lo10CsRO2ctC=wzT8 zHNMPtH2ph0Cdvs~T4T{`5n0RKUSK2tBF;3Ihtjdgu{ZwSag0@L#*AFS_6&SOOa{-f zuYTD!8s5H(AkWYAFb-}%lxh^x?bR?EUZcv&^#3{LxqbP36S=?mtWaLsr9Pc zo7%nzWENa2VK0ln>{}(0JTUO8zy@w&c7#1h@WDnygqC72VwsQM!E8$Hmr4-mnKFtX zjU9}M|FgoqHd@XPlF)uMguu9@C{tTLH0H{4^x9{bb3FNMbwUf%n1BDlms0@cBPb|g z%*AWXESfu-CEgysu51xy?JXSsSe_ZM3#Ir~t6wp_K;SZfh zz0LnvnUMPfz7j=$7e*6hG^P}yTN}eTnw~rz2OM|^)6&tueoY)iL-$_Vm6y1H*nM6p zvnJSX1ywvDCGZBf6X2gD9CHFvUKkMvTjQiUoh6Xi(04^k8|@JJtBudwS>#q01iqL1 zCp0f*XwWt=$+N)HCbO^=zpn2Kpdqlf&vZ^mFyCr3*VZBqnWphIO`R$5OslO<#z2N| zGIkPw0-N*f`mUVUBYAAh`}&sT(v@OdHATVd;??Rew=FBCAF1O*z0nxKvszde>R9#_ z^`c6OYRo)gw%m&L0MQw#z@qO-8LWi+Vvzi%q+`Q0LfoJrAz4s=wxctAPzZw0-$Jxg zCol(pJG(}eV;nf^HEu#&Or&?Aj?KPKn_)SYoA8SojF~39Cr`or+L-UhtnW;#h zYJ#CnMU0%*JWg5Tmo!*HsBQxZ;GB|C4y(e7NW|JJQ?!66(v(?7Bcn8$k&ZfqXGBQ5 zAN#^;Ef2^2i>P~>?TUgR$qU@vRa+%mJoKm}AS7Z7*uLkAONl3w(*AkWs?*pNZ$Pfc zipydWk>9KAHaYyXxomkHnY&z`+3}s+&zDVr)k$F=rAmIznq0J+O$uP#(=q!qDw=u{ zODkkEm(WV9E0PsqP~On0FDdP02Dv%{Ie-uOG_`i+4O5v4uKU$Wrf*E z#V5bepV!U(fC%kmK^PX>^pq2iqkwn2?)g*+7r!(Mmrf6?0i! z_#{nS?KGpj3v98WYyA`};2GT-eoT~_mYk~@iJjN`B3f*miC4$l8C>lNiqoTQ0R5~v zqv>wiQ@gfx*93v|cG#Voc- zpqvr=6XxU|s)};W00b}BwN(cRT3WO=FT6F=Yn|dOg8m>$FHbxZSVkK@Fut^u9w5m> zj|v0I?$`+)xXWV(o2ikG@7MKlZlfHU>KxXNRlbwot!{%htK)BJO>KQvxYtcmF8VkTQc+%N%W%3IBRl(H*vv60~wqoP!XU7QAAdm)t> zh4+bh+Ir zbNu9%I(E$hb>+*+LYwzE4M!^z{bb)jnKu|X8udYchwIG1Z*BPq$EH+4EpD&d;;)LR zV|>M}&R2aOPA{H5#r6?E+VwfWn)xRCY2oIqkAlQupO&yct8CW~-d_=?`R{&qXPQx* za070ypIwzLIv%euxKi3HuY9t$ekTZ!-_r5x?3B5xp5RkmY#HqRg!X{|SE4F|WX}Uj z^xDlQUeSJ8~W9u16zt!CSj&29d3+tF?m1k|d95q1!GcR+nMCLNbRy&Oy)!Gif zELH-RITT!+Y;}$HM$5>W&tttJT;Kg1L}Z4^Ozhu$d#UD#KDpp@%oA_u8b6AXW>RzE zRMN(lxc5ieKHOuX*?=I#D;{f0b#*8&8z&B(0c~*6ErEWXiGkRLP`Zl~c8ZHLBq#9Y6u*>3^Vp?rmA~I}StZc!> zBtTd9>D$|E5Ik$>>#S9em79@EefjK!!{s;L?F;Y9vOX!f52Sm5@wKaBTC;^*C+Fyp z6{zy`WYq@YJ&1V#qGw(K2=+4})-SJfOJ2LzcDQ_~-tqo(a0IHmp=I%9giU?`FZoQ# zFb%hy4u8sfGcMo*ANrZ@O1Z`3@9gRZBj@MgReA6Yu^xQGC12TQe)!8^gMKmGDJ9Ur z-{g*d$&`iLy%C1o3pC^zrQ@Zq#G}(QEaU@>il_Pi5NFvoB|0o#(Z%Ox4sYPwzIIrD zj0^4qW#aL0aM9BGT2md$H~Q&2ex6|Rxttle^G(1kNzD)IR9|H}VajaH?w<8|2z%ax zvq=;b7ZG0(Q$xR&5uZvt@>yL_dAP_H{Xc|EfIIxWuFCIjs&>iIbIEU={{al`C;xZ- zj*05fnvCHADcn4G04UU+DZa9FM7kg+u`l6%om$Il>~0WB5}%h};RzQw-5=?>2$=qe z6-I-VDg)0@hkLJA*$UO{Um#1C+iX35iQ94~cTA7hSzD7A@=%Fwv5_unim~mwE3C}A z-VdU93e|t(VH$vF+oPpr@_eWM2+2?Di<>?aSUU_r#ZUs5++4yw$xf8It!v$!98{Qp zT{-lOSdPp`6DGLsuoX#jUI$RAw3I&1LH!NXS9+sAObjkAJ2Pz>HZZRi?n!yfL5Km? zq1&(P_-$`{7ejG7^pu^|yU_ZZIsQ%c%Me!|HKu?PR(umvL%^D{$edK%xQq9-y`S&U z^Ny-A_();G-N;}i8;iz~L(SoFg&D!yum*0{p>bvX zZ-9!B_MT*Q_ZCmtYVF_j7vuTc3F%BrZiRvuiC(YoADUn4;nf@|I^U$%p^D0h?C^|_h2e&!ACIW_o$reh6ZA-f#;c7nct_vLxtWvgoIWSnNmF| zfFv^cO>4k-xg&=&V2fAo+`fD2d)E0BF}Ull!`aZMcomVz#7Ph6hwTj<3ucWS+PQMH z9U|dtoH)0sP0O-ws|w>s@Gsj0k}3Wfc(?6XQSkO9gPt5~!lX!|qvgk>oYv-7GOBbw5q$Xv z?x^Ig1T~>VJ$P>KMo*&lhn>IHgoN~4JEh&0ToBo^91riL^=|sVsEi6Gbt>>e9_(_^ z4`SsU{pUpgnhK?x&GoW8=)!Y<=(o1a=>Zy=W{+NuM-Wjaj)-S=Zqhe7rPLw`Ra?SWORMIpcpCEceB|wS z_(OMm&Y@;3?W%=W=9~F_qUc5N3+O`-_1phTvJjK!+(AReYkTMsuU{vBpC$OQaftiI zx?>r~xN7$M=xLbfn{~FI_5qRv&|+eL8Z9mTL{6Y>J2QYiX&<1z1P0eBh;X094dzl?HHn3Ic;~?l%Vuc z<3{|>qy6K>9L{>+4OL?DaqYmjP4SbOcSGawyURcf6Cx8D))p7rs3oGK}DE@40aO z@feE2lsPi31xEgl6uU}j&q2h4Sum)ruL(JE#qUD3>{@chbC`@BfipXw!$i#jF; z5vNelGVlcaT^6Be7Rb)wK#N}ppN*D38@)3vZV%{MN8~UCH$_;o@U9LNWZ7SRk3yO? z3#4L|v8cw!2k=xR-QLs{N7Na*G?feLWxLw^HMEaq$qF^J6r*7ln)oBYsjK=9IcsW? z?~m2yUp>Whs=tu)bFcGbTiVs$QOs}Ckk)TTlFN&%HFMmSQOo&qP7vyi=7>-J=FyCI}2J7@TN;FL5>8j zUVEYpr^+YrrjWRg~poux1k24E8`e^O)LY3It7q5ix4({AfkxL%8 z$TDHCJ58i5yIORz{A{m}^mD5h?%*?J=I0QS)S$bdWkG`KVo$g6g&uB#E!dFBq#~!+ z9mUH|Cuj+qnqGo`gEw@t=_uPvI6+(w0*jU>Zazw?6=%QAWP2X3SXkQ&_T|!I*=#m!Dl;B^}TajFeZu_s0lE z2OkHCXLgAVY-bTihZXJ=>FqdrUTTwYC2uC_=9FgsQ`DE~62VIDH}vxp9pSHwpXu!} z3Rd7ZdhvkC82xPWPq^K?y_UwWKVRBIs!EPZ#S(6os21xiyKf2*dC_L};hF zUo$4yV0-(DVOOC-)bEUUeJdYR7(?*HH(t1Cw)}&NAvN9|0Azb9ARC=`#+5v1RU!cc z>r!S@J-ysI9KY00MnL*kxJB%u9CJESmHh#O$hUn7U3+_etH1XmxXl}Ywt5f`%U2PK z`yEz}{1yBY#c7N&VY{5d$}&HS?uLg9dvlLA{Qx>eK~ys3;c2NG+ynvLFB?Pi$^3qd z-7=pd+123iFD-^Klc;oapWBfcnKv2+1UJ9j-hobEz1uZ2^zaWMpr-?#RIEpKZagZ>Uc%m7pfB-c zf;%oU4JOY~leX*+w`8qY#c<_t->1?G^LWbT)N5^*+gwQ!@gV@=1wDnM4oYsj{Tl`+ z@`miEH}#KQj*-pTDq!3iV)Z@#BVD3j9{sBuX9fMk-8S!XASVLMP75X`e_%=4vUW>? zPI!AW1H9hPQjbe^9h#WP>zH9Kf3^{1D~A*|8x|36PKq=$bi~WPO(=B7HyF zZ&10|`Eji;K+<@WZ$ii6AI$VQzZjALgAeCbSF!Pm&mR-7{aK5oIDU;P<1%rk=7X%% zpCqCV4)4~cf|vfB?^nn0G|tj0t9^cKBCtdx_MX1vjXomX((&${TcnxFMe7|num*SR zhMSrpDJmQ`URT}l5KUlZx#HYb8kwC^RMom6X586l3kt9DQJR^SI!SUs*PRSGR_!Q9 zui!zUv&0k&Iz`1fu2xCya4R*7J}g+oZnuN@y!N+Qlhj#gHaJa*$H_yQ%=5bzO;T$8GSLdf9oyIk9Q)R_c2(Ovy zV$+X~1)8aS(TplKiRApvkLldM%Ad&>?7(wcsNcZKqE8zHbgVHxB`OVy-iJQFi=}*W zQ)49xY^~dFAEkz%h@m+)L0aE_QA*q{v3`fuwn)kj7@AUjdvKwt@ zFy^*MNOEaG&km3DwEvA~X9h{?=6@xkzeg@g;+fwNcWkgOC98#Zrf`NqF zJOX@gy`G_9CMMMbq!srb0?M*nvJl|rME@JI&6F^9CmaTu|HXd*KYno3{^j>mI}1v7p|3e2faflH;;>>>H%2TN5$OC48{;$sC#aP_;VW`tUJ>(EslBtBK6- z(B@As!1yye%^uf|i=Auk_u#sC`=Gq-`lq>)raLO28XO)>FG&9ZkC;>{`;r)zPL4-RE@NZ!c(lSnvPbF_DS;OoD%Ze|nKnsr z8Qq*LL1Ab_=W_;I+MGD5mzzSGr*E9v@JIpcZE2%f(tufX@iq_Gqsn??bPLR16Y*is z-VsvkQK40=1$CWgtbvN$fq30C7!QMntvh3;yL-1EPonB0#BCL;w=qXZi=_vay_Bcx z1UYqK6$!RlSiW+Nb+f)F=G{8XKvxnD9q46iO)}XY=r_-|eF5(>&zg~9Uy@LZj~}yJ zi(h%EKD)1$`0HMtL{2L}h7TpL5S{qWUKM-00N4JQklvIR9+Rmgz2CAr+jQ4eb>_F+ z7v#6PRd$ygypE;N{jrha)*x4=C-K)V15ZuN=`4+4krRjIu$qWO{~Wbn6f+i{poQ8Frf02tg!ZgK4x0CaT4JhOVwCO0$fV_`{b|cl>q}o z%ObRh(XY%cF}W9fEQ13hzx4bS1560Mfxp+xROG(oJoyytSO>Cp8vNPD$-~|M*OO8S zmb%tqHkX(CPEO^6knru_-KzUo34$`$0efNOcdxCB*lFgiI_6l%BBC;0H<}|k#Q1<3NuZ(`x+(j=zYQ_!W}&mh2vRJI z4Gx`;{LyL$o+1fYUEFL#<60V@0R@-*v`K@$+f#SqZiyH_%~A@qV@~Wx7N%sZA9h?c=R_v;Lbn zP)F@O2ETpxu!m8nwX}2>EJlZAXEBGS~rq8)fNo) zx0{`*aaHzB4M8-{C;)9uvLV~NR>N=Gj1m%Wo}dhkv8_vNT$1<4DSW0tw}d2pV;iTS zi!Or8eG13@g}e2G(MNczPtG6L9NV>JH?V|V$I%hiPUW*Jw8u?%A8bG7VWLfnJ~VR! zI5{J>7ioBr6r6s3L50OOV_YPO!k+!@I|dD2<^kP*1(`fuiHVWaB27tYgOrJsWu5z| z90`XzLz28nsdDeYixx{R1zv?xGOHl-tsVPr>vx&J0E8ndauWEZM@Ze%hc*#o%jXoT z1J@r^k5vQ8kMB=2l@%71)Y{jpT31AG4rHdAhAg%|Z!T4x zd*ep5S4#DpBVaM>2+sGwrnUWV^tbh-A>YG8sHxZpVGOby%t32w|2+4PB05PbBB0$#h<7fZFcOvynK-u_mSyRBT*|QouBn{ zXJJqrtvx2*Fmg;!Q~pOzV}Ky42i189y|zaq2n1p6A{eZO+5+mhfhwLPIh|+PV)L0y zG~`873*4cL{&&XBN;nFqh9V-rhAo*YjpSJ~J&0 z{!ZfxqgpKouws?#r+Di4-%qkEq2&6!?aA z`fE4Sv$qx!uOo*ebLg`j{;2R&%KG`yh)Pf>%6rm{MyU_}$g*V;7KPRlt}h`YlkvBc zE)#=os!QvqY?27Ew=9`D_g;j#T`RbZ7|Kx<*?liP)E}E~Puua!ca zDWdqf_}{3sBBf_tcq*Le38{?dYBxlyll5I%SmFPCd5=nOLf`0^m%6BKvaAn5rJ#Ui zwIOJALGeVob0)V)fX0-JEa)#xe@yD^8pG$Nlbf3dmP+`;rZ2IjkB5f%h1(2ZmvUNHwRL@luEy_(?zD!HnLlgem0~=;wbC~prucIjDNbcF|9R8efRW>SknB_B<@&^9h)dIDo5>GyH4#$bydJ!a!9`tbN#{PHcO14B3 z$(tyUIRr~%9Tx6bJ_d%HTz~mz{V7kUC3UGGy~?NGGpEm)r7lwj-svUp!G8!7 z7PQ~?4K)fh(wOJ%~qHs+V{K1_R7>l!>C!mNUB1x8Sy zR*bT%lN9T$?$vRidC1G*w_cZ3kaiOwO5B~S1#cmnNX)?Y-iJd_2K~=k<>$Yn&dLn_ z9!|4pLNmKcH5)JOXhp~t0jsaK$b=0%9RrjnvAz*h8PwhoH_mS=;LM86k-2g{1C5Gu z_l#U-5aI#`MY-hc#s&H1yzW?Nirg&n*}DrAYq{R{{2;Qu!DK<&sU{#1aUUhdci8|= ztInqpV>}}uDI6YAfKbgvUjCRIpC`wyNMZvFC=Q_IjbpqF^| ze*l4o7{Gfx$G->}(p5jMg2Q8Sh_ zK~DuF1-+q!6KzL(ijL@gLt%1KX;}PxE*r_OAPbAVjLO`&%tG&Zdgh_`qFpa z>9~)#liBN{y2C{aQOVwd6Boiom+i6kygcd&tNpN zcBTTv+cU%7`bzwtOs7Y<1r-(3D4o*7hx)X)`|oKr)L8l{Ki~lru0UmV*Qv{51p#Vq z6g1U+T*u3gjF6evgLE9>605U&aHm>o!rQCe(}P;IYEJLGGN->+d9e+Eo&sCK7Uu1| zGB}x2ZKYfD((IXFv;NA`uYLC=wX1wnQQ>FR1A8NSn&-gx!iQT`>bAG@8-vLH%trgf z@KdH{UeeYv{l+V_cLT~Ft|@)kAIK7sd)!WUkJ}p)7em7TXsEM{j*fbssS%8+znMtj zw>4AaaR{5c(}1>?uFP_{sfeNn6OI?W%`EiFFwCOY5|COd)m%}3rVL)K=E#lnEe~XX zptIYRbU5?<>O8R z={kxVD2cZOS?#rtpJfc?)u|Z3Rf;IAY;oXf_B}vZb%O3sFJ8I?fTvYArn|`k{f*Ck z$>y|VWz2|)wZDMGFf;xsE)2coy=i9HIFFf4gtF(w;KMbo^A_MhIZqO7+sC922oFIS z^>Ac#{XguzRa6_?_AmOi{aV^mpryDLFII{>Deg{iEAH+RTHJ#amlTHpp}0eFcXzko z5?oH`xA*z)ea5(B+;Jc7)8QcxA+j>pT2p@WH|Gp$pN={u+s}5$Zzgd8HHRIWOWYQ} z#YF$OGK@D%a(yLPdB8bztfjJzjFY(B?mDk3|H4Ig$)oehTdY5wXgkFg<8Me?d>EUO zAADysw^ibNecKEqzCGik0a@x5@9r-(r2p~vB>wGjfcoxTT$PWhRDQDsrD7Bz)fY0_ zB>Gphi98yQuWkbVD`xa5L2ifw^w`&;VbwOGl$U?IIqKz4lb`k(N16+-pTGm1zf{HP(Tr5>&E7i3`n55{ZzkEuDt#YAj;YVG@)stXr- z;Jx+e?>WKW8a#IPeov+tA9pi1t^fF2S26zW z7#MKf7Fb_<1lx;XIkf@4EZi_7Uc&gAm>=TjpB39PB7%UBM6R_+dbdFiri_ zI0c0t-v_dv!ndgVOZC~XhZ{c28*03Z%%*#hZl$oJ7`CXztX|B;+S}9f(!f3klOdm) zo;PJ&1%MNaT|OXgVM8k#$Bv~o8I65rpn72?MV(Xgy+53&>{Q8~%j?oXO5(WSH2w9@ z$DO=vi+Q|9myO7JUvEYGki>=^EG+EUl(_G0G5G=Q>S3|^E&|U*Mc4Ca-b13gi?_LK zEWRGB`mR>L#YFU`WBbjBiir|x2x7lT<9ddW;k%WebX6^2?D>ra{VUl~3tv;?XW2)> zuq(&!pZWv&xnql3S-eQ-U&KO?q|$gugRx6RnoP<2a+d})tpU0l6jm+PczUnh6-$|seG{Yg zC31fie4iYAavg+XPKO$WXGzvr7oDCiP^Wp5h_|2nVL}c$xNiIMPqfG(lu2@iDJ%F` z(~ku7!;wv)5N{Ule$VgmWjPuez0jHUH0rfBG&4?zw=xv@P*4)|%PEEO;A_t2lFtP` z2F#|hD>;nuF0RN@=N9AY9bn%qJCadrpCqgKr6O@K{lYe=y<(GpvlCjHQdGktWtQkY z*uRdoz+X9yRy!VHJGSJRf|Wv2?NowKStbkzOzF65)8yRZcmYBI8I4a6BlO6l# z=+Nt24R?gkv<69LX=y5!58AUirfnOWY~$-EZO^J-QO|wesAOp<`{E6%n&clh>i=0$ z4}sm=^W1cqA3)nI%T~_RhB>N-I!C}Vauu-&$`bAuIBji><1TWnjirJ*=5#nIuN?QO z#Zi>qWL;9tCsf$gmf1C#XO$)B3o?FvBn-;JlnV*F)dmYH$+0Bp_+(NhnxNDEu?5Ak95=tRZm#XB6(yGX%@dZ2CK8##SJ@-ecK96Yg5e|CXBIz237zRQKm^njsNuA`!cyDD9fW4pyYKqW9r*OfS3CoL}g z1lGV2sD_(Q-`#1@pPT6zdo{pq}6wl}C7?TJqw@Fjr|8yaiP(h@fZizjb$?kCi&1}j!vxCP3apJ%a0 z_~yQ<3(`8O=`+`vH>|0D(tNu22j{$`cw`y;Qq|Q!0u-)MT}M0CD)A4A#!<+&Pf2BP3A78xs#fgxL>b2@C7CNHj7qPv~e< zvns-f{wkGMN-g(=fy15 zeDdafTom-uDuq#ri(R*Oyll8o<}kW!?q8cO%&v#Q$!xeynYu3$s`C4*^grh)V7(48 zr{&lysC={F(`)6*KiRp29uh~fC7j8s7$DMEU$C&ywHgLwi6O#c*rFL_=5{Q=(>65l z2#nw4K(=#BT3E;_?GL)@XMoL~az0XI^DK*y6j{i4t3w%!a;esk&)^@I>n`?RGIe9A zFCf9Q?P!1hF6A3dUTFNJ$;nBWS;N8?-Oz~b{J$AG7G$c{4J4#Ku<+b#|GG(*3lj0` zz)H3r5A0cLKe{IIyW7W_tQh91YMbwTi!W(2-@@n6mtqc2Gqp1I%RS-Kp8QZCIpR+&t7(r>{70;a`hW2v*s-fSWYm}Ew zCe%|TebzUpDIvr5h(s7T)x;s|-2G;R9j@N&f+6OygGdzX^x|Gu;*B#W&=9kDq5r-@ z*d}IiVchEatbDoOI>*N*?i$Wl#6eFT8#J4<)sMh6yplOm{>p(Io(wxCQ7WeC`|ed1 z9{5KafBv^NCJB@N9i=Muoij4n4Ygpy`pk7IHa$t+QjI^hj@Y#&BFYSToQy^t zFG<5E)FsQN?Os@JFCnAAXb)QzP8lZi%B=o{hkzjY^ZbFK&eeR=vu*tM#Bq4m7D;bV zdVt8TKj4*W9tqmLulnv`p+rE*GsV%yj&21)d;#{a5fPL@kg^`(bGNabzHfw(-0MvkxCs0Sjtxr=|wE3+j};4zVy9M|#Vf z`s~E0yiV1?Wqb9{1gAUmo^3{+gUHe*L#)_DE!8Sf_g!be#*`TRS4 z$;wp0M)tIt=88!LA_h$CgHE2 z>yg>D&NWk}#1vbaL?yY0gC`N99szQwQs)d7C>PV-72-$~!=xP5^=HI!SIM;dnXe}b zpv?W3oM@Rms?}hTRNa)G-GhGG^(-A-9VgzOdR~+fN^JQ2MmXQS9v|rQ_b#J0oc=uH zD{d4pq|E)|-R_O&n{)P6=1qSg1G0m5B{32kbFvYulaXHtwYt7RA9OZVT-c}pvdp>c z;s_1-3z@l9#D8zKS}8p_8gH^l!q5}gSdc!eiZ`&wRbu6VqKvU(OCe32&@Jy={FE;$Rz#&@%J~lQB34E4NCI&yU#QazGn6ASCO9l)tS%4Aj^$GlVmVHJ zzG4xl*}V{-8afB@ox=USf4p+GZHO}9LL+DUR|!+FS^#CeZa_udQ@3#rpT82iasa4d zXyp|6c>ruMAb2h|d;$t}!zqFp?a6VPREinoOXqYH3=;m{a5gOEvUh9Xvbx?~Imk9i zz(|+^0}F|u9CP-RD94v9N0-msV!YM+Ibw=TV)oFBbOAO#EUJ0$!^VQfc3Lw#6_Y3M zgy=(XXk2XHf~T?oK84uz^v_*GN#z}0BTLqTl#2_tf5Yt!%L_#h(zs&y)r;Yc6>A^W z^^FVHIDJ!}XAK05WdR5gL_~5aRks~i-a3@H^SRa*p_y1Ho#A42;^O(Ay~WsWQ_Y_;a*G%+jd1^PvYf%S+t;xaWJLc`>F?Da}t> zDYtSw>unK(!=JwcV9bC;U$1jYYN|<9%IDYTLvbwL*K>grW`?W1J#_9gucsyMyskN% zb@pdx5kl`b^M~EMwB1G%m8bZcU_dP!A%Jc(OftZsQee%V7vZuyrM87pDOf)^v*l=! zVgX)|-06Nt*aqy{6-aLYvA`4ngOM}Yvw4FLJ0hI0GfYiW@OJ({yHRPBE~}859_dWW zP^I9bFXV$vE+R9GNJIf3jwI3swJTRlseI;Zeh|H4qm+94hb?(I`Huj^ByLr2U62Ec zAEn}j`bTe4Qc6kuNrhgjKGIJxB_w|QQw@7u{3n`0+Wvo1sjFK5ucFHD{>TF8$7ty7 z65anpT#HN)|5-rc|6RcUmB9ZO3H0fo>Q_t;-Ju|skYwwBPBYr$HF$%GIaI0l&l7}? zpNvmQnQqzqXuA9_IUX+oi-ZK<6zK8zy*##l^lOcyqTFD2e-7;G+y^9X(uYJ+v~T_( zG40il)d>lLLaVjssE_Xnw)J}ij{N-F9ryoao;eNPKn$Nl)bSLe>P$e5cIXsM|Zq0iedMcQf&v5`xBq>%s566q*SOtxa;VlOm$ z?y(;K>+G`}W#-6L%B?;7;PogRBxpoK)^q9F(Mj_tw!*q^QFw%q{O27$&K6cV{|MAY zw2SUoQ=RW7P2~|lOsM(xkLEzW7l}2!{ZsD#NAhxynnfD4m11aw&|9^0+m&a+3D(SKM{?8Jdl#zRWiHUspvtZXpl?4$%X*ayLbukY4}ecdjfnav>k!nJA)FMMH6C{_)JhiCdl4zxwJv`2 zQ#NoPy|HS&Mo|3hRwvC|Du_+F%TQibnun}ym#HqGDZLK2vG|%l zbylr0_W%)Fm1^VY=DB@%#GH4yHqH!hpc$g|>fgBo@LwFW3muNcS;F1L?Wk_&g}eMA zh~q0c-l=$>))~iFWKI1DLhWYv-T8;E03`e8vEYHp{t4M}XR#SvBs)i)B<^&4G(B&c>J5Bq`8k zReYBxTn*Z*Whxd5UIHVpUAyZe)~L7oRA{wWYeZ9mA<=6vrR^O9VE%)ELN9y`+yJr% zheV3O2?+8TdfRNmyOs-03=Yx5_BXirl76U8D(WpsEOnv^+?EZg%f7E z*J*AO^1&W7<85h>ve-?@FSgCjg?*pBegP+dcRO|3-35Z-wZtTi>bdL`5oe*Fu3rS= z;Spu~*ag=P2&Xp#e$vwiY!`BtPB0$b_MkV`+897_FOSZ#4UH$|ee-ctO9)u_NH(7|7O_WdxcZgEg?)#?ZwbF7MVe$PHn02_W z?pJUDzqGV*_Hkvcc)|X-m*i`q8g2**Pe%k^iJ0A8Zqodg}xPEwyS@oWI1Hn?LCj8D?bvW-VLZgoK}uSzhI z@|%nK0hNupxykcbgzrLJ%IJCV@$hneju@Pmo;d-H9oAI;RG*rc@2OoXj6M7QolHd1G26?}TJjh}F&c^5=XTy|$UdOzi}uFv`ICv%uz}z^8`!(#7|#HNLk=OjSa`CBn$NwaWX*jbpNZM^@?_ zkA!(;iW;`=z5>{vfw{F0vdXK&;;)~+ChVGNDDN8I_nNn1nqjA~B57Rhxc}G@F~;ZN z4!L)tDA2jMyh@-tv32Vyfl&hRer6k{@-i*i{bCiB{hZ_TpzS_C{_}=pM#fzZr-JNW58i|Iy zZ!MKT6CMI{D~PeDDHsJs-u-m<-5qio3A6_G~U7ssXk_v3;!=C8vzeOp*txeOAJU#PXyz}T*mt~~dv1Z_}mv;OTA*iw< zhf!5}ZUwc)Fxw}=Ki>IeouQ$R0n=O1 zgsBKieAZj+s3LF4NE*ERCtF`y7YoZUl(6ttc6S~;A-oHiUIlhLDa|ejA1bg{k)APw zEo8EAUQgf+tbNM|*YaKDsJ=XYq?7)KB@#<2RChc7X3F%?&m``*{x@B>l;qm^IR(h$ z?i-?#-J`e6j%?bYQjJxA^)9?3SvkY&5p zXx{=Py_`=$-u#z8ESi=&&lK4^^;MFwgGo$j9eG0lu%GC@KQ<`q?-Hu7eHQv|9x*+% z#(_DFG!3`EN}M?>)knMOi+*NjrG*1O*Hv#BZRstRuG+u)o-98Bv1oSC=Th_)$B|SWRM|N>v9oNwgM(ZX<~FIdj0^|O>j|8; z?sv!7r`2O0iD%XZ%FRbhMBZtYw-4FsjwM*Pr_cA?LDG-c^%FW~1RbnPwK>;E8(km+ zE12`xjYJKzMx~~KGih75CkfT_DQPBk-suAvfD?UhIUf=VogXiBC@I|}`V`k*wHdx? z6EdWimg+gtti?9`z+E4{TILX1Ib~r6ncm#q*E*0v;s!ZY1*HktSUDaN`vS}RUDZT# z6R~5Z?dR|}!qOOSb`Jt`uBwSC+6IOf!4dc5jFk6wj6q3LfRp=@-Su0rI&2ZieBscD zuNy-#AqmE+o%f`{osNPVv2@-C`o=Dl0{wr*t5t4Bu1gq`am=mWJqCehV* z>3?fX4%~zL&P>?L&(?7lAKW2>6;FFlUZ{IJcApqA6$TB>;ML3iPW12566qR#DotO= zP(o+fg_EGBuAP`wP0r4iW&XEfJXWt|GVRNnBUQBWt5sUoN_?zwr!gP_C7seziNiiF z=<4Xbd;$u74RS8`#@A#`-0A6Q1NSQ#2^ocIh9H3Z{-HzN z(yF>4c|hYvN1&E;Cn@XO=;H zOFrG5X^b2&R&gHIb7fyjJFC)|z^Hk`;)xh`y=ijpD^S{>;p*CJgy-5vQn z_)ri(HJngZLxK;cRhNx*OjIDt2bb3TKcZtrQY;$-#&j0;QNs)^#>06vYVHMf^nH=p$BEjgH0 zri@mQ9SAJsHZwy;_Mhb@I|Mg7#A=n|?4_&RerLOVf?&mq2?S7~HUpj|P$?cp5*m{= zx`YQYUEo>vQ&k&86(`6i!EE%6F1~G*xD;FvR%m=3OTJE=xruWH2&`_eyt^Q2-rPB* zh~G5D$JaAfMGXnEdb4gAp{CB4ytXMP`1GrZzixGnz5-0LD^Z)7R2geS0#+KO4(C zbKM8#U&-hl~(QEx8Ycb9;#f89w2NO+s0RL1N3 zGWwVj(pDrZ^+<9BG-dvP!9gkE2qCA?`zOR|=xr?uNGGWIF-i|UO#N4&FLJTZO-;aJrVHxqYWqs0 z);Mm%zcEnmIWH&qo21Cl*fwGDHDHQ7^B0!OuLf>mYcYbjXP&p0b}`}If87Q7Y!3Nc zai$-huPVmn5LO4v59WC9f1-b8J+2n+XzLo?du9aoS6PG;r%M;LOSi%@!$+?!l zbQ`Dla2wdT;Lekr;GQ2KLIKcjZo!yp7)Sr);8Xh^Jn_4-P$PWNr!`2=$GEAtb)azS zaz*UTyV8*9ThVZ9fIgHeD4U+Mc7@i&Y~x!s(t)mH{&G9ul?%F!hLD^aTtTX9@CkqV z9HaA7slpb+yY!|z(nx()n0)Tz_K(Hpb0w4rx45s5)j)R}{HzKvkx8*K1l z?i*`PSeoga(j~%bhJ?E*dMjJls7iH5kRHxQ)|!HJ(C?Kr zU8#oJa9iTfi>cy!aawqeni?K8Z3>c~B1I@(Nq(i4d4;xjdmVV==RVKko}bRMKGA}1 zef7y^aoE&%!Tl;cX_hS}bM>eib`0Mlov}D^q5$?BwAu9@fF`W%LwQG zBaW<_q3Qj>mc-P)>GLOJvRCbTA;0sf2iz;<)KpnYyZSWehYwCCZ{))Wkf<;o@6#+JpW4qNoDm;Ril@RbYf^k9Q* z4Q)re8NX*D*o<68;|+{o-}_61q{_P6~Le(3Qt#VExWJaTE~PFd$sky z;Tf^{;FZ~llpm2qM-H|`Taa-7M1GBAc>>F3( zhyxZ4O_7H|9_M?mVoL*Undg=zkYD3T;;H;;=Q)hIp7hKQZ$%xR~iTH^%vNer)k1SQ8MWUapt^38wGp57H=*>#Z*o7XyJmeX=e?}_cwSLzH zZn!y$-jY8z?+vBtNoYH|_7)>J2^kSGpr;oH9Ivb~&4M7;aTlbECqGLhv{02$E!AQr zXswKIX0$-}N31uf`WcXo`?dJ@k*mkv69XndmoEe0OU{5xT1xCkv31waOaI@I8`D5gu9=+g`NEw_IEe zJwK)Pc`ZAeIg6l~pgOO6t!1(QJAb$+tM2G7|MbC*Q4=+}YiRp&v29ljKEy|xm42M| zJb5f8aM$z_zknToqA}o*^_FkKGUGJW z9fAan|N1X;)SmLrLtpW`;Gvk?wRFh6s~e8=opf){kfmlY-zy6`w|rPeS8S5MpEwt# z#gor$iZWb@{=OP+fc?~rQ;2`z``M+g6)}tq&1r5#9f@umnVM`=3jqBDM^Y5sw^QK^F2rBO7igm!Yyo0%@*8|N7vdY2`a-vmJ<6FpkVPphUeHIDf%~f9b6;-E)zTl zOf0m>7pBjc1FbdED*5>LDTUtRz;$Y_=?SiGsX{2%4rv~Js?e7L;imA zn;`lWP5p_7=w%ef?4ZJS&Kj8WDR64+SvmB81jUMxQp{Y(6Jb#TBGsJW@B+X|v0%M_ zbFX5^{Lk{p$c|GSJg!g}m;LE&=_msWV<6lIkoVBs0Q#CPV8_zS5K}M)Pzmvw&{;c< zPs8z~;fPD_E)Sj#?bJ#)SH2|Ln$1?Dc3!b?*ybiudjWi|{9FWE7ii4hP_np>aGI<5 zQW)`MVkfS<q*RlOQvnX%~Y4PZncThGN<{PU{;z2RxTHk?J|Y=>#B^Fv8TgA zVsvs!B|}ALs~6$+RFvK5N|xsP*<})_c#FQh`LXc$-yY{731*vKyF7RRRV_(qfxhkQ z`emMgeZPIpE8vveAT9w09!X!W_wg&8HO@#`yKF_xB|$B5&i%B7ib~hf$;E;FRW_S^ zd=23zn{Ezih8YT3&%+f&W$%iqBWj^Tnb5;5lbi5$lkitQsQOYJ$yt4lxyfzI1$TCVNxgn3Yl$=>qLV{nb9d zYLWfQRTD=bFE02ajq$VhXIQ4uKZTYj{w{;|mFm877Hv#IMkqaBeE28vfN2dq6J|8V z#rrBaIhceQYS=)v(Ubt;d19NKG67UQ#2XZfI5(xj{Er_q>ZBXNIu+HrRM7oC^;R;K@r#Z7 zduQjYB7wRtFCV4|XIYgEN=F^pcFc6F4K6nSR+;?9l^puBsC*%{ZI3SNh|S(&N*VLG zGYn_tw6uj3hl z>rE|KOYYO6@)uEn&b;X##5^%FB|dKrH?c{muJ0Uw%W%|Tj!M-M0q*0~mn=EhmZn?> zQWw8=uXm0r?h==AomAG23SqvcRwHM?VsjqTjRiB4`+gKB)5&7YrlPjLlj4a*DZlgy zUWXT(#gwHaX)UhZrx{-dy~tDsR8 zeq!C?q2YxIX=Q6B);Z;hNnmXH9_7h3BWB|amgkfn{h>{ZG>Vj4&ivqevcUmNY zZLNA`Lf@IO*2k|yq(pqfRwLbcq|)XaVnn3O0ft!%M(V>M9*28{ec$!GrZ-|J_5tfz!Tji8pa4sPl$q)cDF^=2n91yMBaBmOQ% z<}RYYQAPREvZQM@$#LZMhA3Kxgm&lx+6L9>sdAhv&gGdo_(VLFpB3{HtHj4EYio)P zUBA|u;V|e6oY|LXOV$;g7^Y^LeDTqadJT1QWI|cWz${I2!iN2TSwKN*YndySl@-Fy zGA%0@x-!m+)R6aI{=?EHyu}3muEjB@$SU$nn!t`%Q{90LbYPV*-RbvO8@sp!2B-O+Spii&>Kl=bS%5-3J1YTva;?GF>l zCOvohG{C|?-`Bo?!smXKief3OVtf_c;1ag0Hfp9tnm4&iB~|zW8fB8>Vi%HIM8uOo zvttV-r>GCi4I~d&v$bcOlvZ@)?|4F^sAl7EmkhohQN&3&<8a00t-xnplTC7B=vTIp zZhu!~dc90Gl+ORvHY3Q&HmV2?f;(86r6e1GvR?${_-1UVrm7j#dQiNw^uVv43oF$Q z*_;KwZ^=ZCCn_qfDC<1hH;{Qnx3@@1UYmB;Xu`M-|H?$f<)g(VGILt5p{_eISX)un za(&KE(&W*5K1vssVM%L9%x;vOv%*BGZ|I)b8_H7Vc-k|_NXeTQwb!5>O1F!*#Ag8I zCM+4~FSd*pnLaVwKg?uU5caRi4)N%u4$bAn8(?ve1qx8Cl>))csynN*m2Q08h&ROt zpC>fLVME<$)*)a*qjT^`@>lX)Cx70xXEHF@FZ;_-h#qk%7oV)HGVbmW$*D6 z3nV=YkvoHB(fw@KKi*W*)e_GIq>aN#HmhjzF}Q-|`oHcCGVCXDXa7BV^qg2kH>~A{ zeM(62E2y{m7WL^cknZBUHCR}0P(Sl5|a8$>h)$QziTcd7ojIv$5QnwABflcna zDU5g8(%nCeZNeinRaPI?b4;8<7dy3Cl$0fp6FxVUOACKM_p41_Ss+s?5qpchm6Pol znzKPmfZEXBRg;f5v$AaVeR7`9i-cG4z$Ws(L1YsGvuAG&&Vzz;CUE8-#)PCm^mlE< zKQ^-0#Lp?m0S2#UOq%{9-Uq>I$E1Gfwi%|?ck2zaf+J|p9 z7l*??pikBE>pbaSxoV(zGh(~RmTFcn5w_qQ^j8{$jL>A(V&a3#&5@DUL3yJm*b|IC zqYlr>+TpOSq^fz3Fy>^rp*9=%^-h^(&_<8;e*85KsrUMbHcC%A5%M75r|e`yp(z;| zf&{M{C_6j9cITTSXP)o#x>i&z&deHmx`KJ@dH41X%9=h4%ErSj2$HWc=HLio6-n4=!x!CTNBHQ%fh?PHg zzjce?sfWKPn5+nES+>|3>@u~IsfbC=Z<-cy7*PGP1b<=+@)}$d2hRY!TEkpPYo<~L zA_xVpBk%jQiz7Z-6Y0IF(&raOW&PoSfI&4~N0H~l>P?VP=JjYcax_DiZbU`YBv=2L z6Y(G^%#n)OZ?nUmN6HT`#&X8(GL@5w)WPX2(XTD<_VR$DFXD*|{z890r{TlHxIf3M zOKA^e_d4=1oE8kVfgceztN?{jeqFuHmB7N-tmgjcJ3xse`)F`I6cRUq({L;Z7rStK zxE4<*7Ff4?c*nHZuy$`pl{<|LGiU?u#p~Iq3vQHR>$jy%wd*Y?6BjyXM+7dwRrpp) z?|Zku>l_LZtBvFlJ4b3L7u*PEDXBcC~5Fv`Fxil3+J^NIo2J1AC=6@Bk!W^UqqM$q{z28`$eo5aFNM>RJ zx7Taz1PZ@kL^X86&NGm(G_iCHm1-u;YC(n~qL#ukMwF80Jk+k9lByYpQcu6fkaQ0E zx9`m1Q+DK+Mpf6W9IPHqi8_E3;zXXMTkum-)8veNW@$6Cq^%NpFBu|+`5uk3v)xXZ z_##hx^PWYx1=1SZpC5(SHDSp-A0A4>(IeuO8J)O|=dDCiEDhgb3Wd9i7&4G<9DHG> zc8$s{#kRO*zBUr-()mnLYe8#zy(paia2dE&qIV%)v>x=R~9eWV)Z$`?esg`Y!7$qkWH^kT8)tXoOtLHs&?*4dp)>mL5G znTs}3G0(8hWXFq;iOhHbrxa;Ae zlcJ*{`z34Wt;a;7km%Ci%Eiyy^}`(smgu=(&-16T`_k$wTSYV(_^<`qV)(W@Oju zdo3P;!eoli+mRi;40f+gg;v{?yToQC3L*N&IVs_nDU`VrpPhZuzGtdn!m?R^T?E(W z8WrlWGH>=ND2blgM1c$ z_F(oDtMfV=y4Kc@M&9_$_7p=*+)Mr56p~DjYHHE4xCb{lgb|+4?cF)Y`I5r6hcvVl zbY&MaO$5;xaeNx|z0ArW@^r@0A_=m`mm65zYKFn(DCT$?nX@H94VEGJZ0u}NajVO{ zm1frcI|KRZHlmbKBlchjNQ3M_>}mDt-la4T{vp$couDIJ1#irx6uNxkrp<)r`+x~C z4CZ&pA6|=z4Q}-K5#oS5RYJAeW1iu-%~24-S?jUJGi594u$CMLPh#gO*U@wx^CZR> z5$QC5CK=d%0Gm0!W?vYqz}1v^^J92gK|F9j@Eqg)JAB4BPCpEosU7Ia1GV1S&xeMS zlhXzModSs;!G=E@p^1H&29Kw2cSVj;{NFSYB<0UmRy(UH_`#0R7YN@fK53+c2e>)|5n643{`)fZ|ox9tT_Ia{0j!re-(_L7MzO7gu*dd!$7p>QTabl`n0QrPTpmo${oM=GN)` z;7vGUx1AuyoMbke76>e`!8~O8YPU-Z;9tt7%liiZ&K^jpA`!kRZ$TTrYrpQaxV2D^ zaeE6#yO`Qa)Us+h7G{_-@Ed;vJ6&xP2YFn4k6R?~f90_qNlUWU;Z(_y1)tfvtImfT zw-@8F%vQVKosxeqq$3i=w3W|sH;SuM!Ok@ZK1moJ)s~H9#{G8DVucnPM@GjG+-gM*h!u|?7ij-kxE1jKRkW>=4Yo1)R^04vs`pB)Fa;5Bp zRsQMSPXR(snB@~~%OKSx{=1@y)4IX96wVqCDqm8Y?XTJo4E~dG1#u&-`@R?aQ^Fcpi}%j)4&8OIBAR%(kK9%URQOoo&an z9uBhmxc^9pfi937cg~MU%)8(m&iWhv@G_&d#zXe7^VZx9cUA8(1O6}0Epl?*WtMWr zVW(uZO5;=ay1INO!c1*7L1wm==(kJH{|CNAQuU9;k&wKW2<5cB+g&2&nPeDDhcz1W zjec<07_vP!rwtL)7J0ktf6xt&b%NSsOI;4)($>M@Vd@3+o%{#vgn{;m zHEVPS8{9R8t=9{&93Z7e7k*#$a#X#~!OT*m82MF6e(u@o10t#E%bRtYtF1ym*>Kk| z-XZJjKbpgTHa3QxM}9(Ln&y^=nQU#M+U*a`jnxM>>$3!$OG7N>o4IH)3>qdH46J?q zkAE()84LRLNxZU>2fWQ!CPPKaIc3H(vT_c#tEqr=szMbvsf9w4eeZJ@#o=)=ae2~( z#;3=%r2KbI2p5Iq6uE4rTWU;jbyO-P&C1u=>CTw3;V)u8F46M?{8U;?O@YIFe3EL8 zs5*DvXJ`Foj;28~A@&}gFShq~^Rn1Z=hmpAZ_}b;K1NHxxRfxdV*2bvsT8yS4t2q@ zcrITmBX1ULHnbe;H~eyb(PB2J3y&CLzuGjKvo znG~iqbJOPelNdMhF1-(2N!KuR=xb$Wb6+f#?!7r+Zv{N-J_e6K+5v=Stus**K6@)b zaqLbkBU2gko`T%b;s*S|n`<*)rp{I-<~a71nkr+KR^c1=s?qs*DMM*qen-xv{g3U$ zioeem3554`*s3aq$46b_H$j~^lZhnO?buc#q|tIWUr2%OJ$Rx(WqXp+jiPx1GFmAw zCa>oaBJYT@;)+65XFWB$`$}?3Dwhm! zrTC$JLL{m&xL{v{Al51|OF5q~CgXsUgjF&Yg-Culoe6~fiS5m@K{i|E1JYlcO9Y@W^?r_48L!2fF zZzs<pCX`(|BI`y z{%h;qmOkGKEyZ1n26uNT5ZsEpySrP9hXjWf3+`Inp-9jmK?}v*DPH`|x##`i-1`?K zpS_>Go;9;(W?5rWE?YV}h99)KGpB6*(c-w=Tx9pW1j8pdkgKU>0vd5r*upa>)R$tX z<%i1)Z5_V0MUpKC`oYJ?*$4^0WqhpYXWs>ukRd}Wc(k)~}^ULjSUy+7?6kgvWN z2$32W#!0?_~-}F1t|?jRTOPaz$wV>VjLziBXh7k25jpZFEVT+4HFulx%$d5#saK zO4HFuUI02UROI4mVV2CW?I;F;v|$pR(o**vMNU=D{U|4DZ=mOAWo_? zTAvj|BynVR_#id4>eg}n8FRhU)dWi(Dd+r{+tt2`HT?jEpe3qJGTMTArUAdb_T7z zpCnOJT521*8h2?M^ecM_QB1Hq2+nHL~x1q4Amj(BbK689V9faH_3UhtiNX z8V*++n)_A#W1EnrElRK7_|@mpa&J~6%>D&K!hA#CTk%?4&IjYH|QEjWCOP+a7nY3x29+Uhu$5Z zoz*u4{xnk{W1*a9#GJ4;bN$|X&zfDA6cI7Fp<0{o8IpWjLdfhnAmqn*l55jC0-ht6 zR$UM^d@A0TIjm&LgiMfi{{0KNMzD`gGauyU<}veuQ{k){JYA{YY}~7r=}BS$YzMw^~h@jNGR_x>Ku5@*x)47shr*zsy_?=~37M!>WIy`bv@CZiCN*z8vc4p!33-Pd}QBBBd{iTQAi<;^a&oiwH7NA3IY51}_*8%yq zh>D?V_K4{5zcLH6Fl6SJ!_D9eXEj+XY8X)QDhe-{kU13(9Nmh(6%rNReb%B)+GPw2 zi%k~~fjeo^W2(K%cuT-~CTi7H3u%qvJ+v()c7PAj01zhQ(;K33m}K|Z3~@94+e>1C zDP5^p&UG!TQ6j^NK53aK2b{K3f_(jUntT~GZ|+tre8FmwigJS!aR>{>@uZx)GT=KrbbPzfvNp92 zaOikvZ_m!KxYfIJZWhOAeK2mB^O61YsUnrI#_`Z6yHxOTrU^=ijVc40&Q|Ame4i=Z41fW}kf9F^cqiNR zhM)#LP#obNNqn8vHvz0@h1smRJ0EwD7NqJPz!iSKXdgv-`Qv@kxq?N5d;>-t4J&S@apo^SR;aj5!6+DpUp}l~){wR$XKD4aCbb?xbx#8d zO$0=}`OSDtQqsajnWexRPlTho_Vkx2>rOYp|KjlN?J4VL3keYhO?eArIfgVDro(LD z`DYTNpM6;b4x5&!n$sNpsF-u+jr53izk!Ziq2m4N?(^>M$PQoWgj_CM;F|qESC2rH} z3K-G3+-E1MKOcRd73Rxr{z@Y3p*ifFZgaahiTtTBBz1VcIp>(ueFuLS(kvpi0;qey z{<|&w!ysRfRlt8}#vF`}=&RAd;s-^C-@)oBc06XOb!p;}h-f?UFY4X^|){K8B>9f%2^;5`n zXnl(I+}M#xwj?RC=BW|i?TB2+_E@n=zIle>=w@_G%yIomj zQW@5qq^g0w86s=JDYIEYZc#>!)zX%DULC?+pd1Te*B;25IeHIv*WhaHmG{Ra(e6T5 zp562ynwd9{GqFJL?e!u3Horf9ZN?peVn_s5^i5}yhLZF4`OCjYJO;}0dxxpZV8@d0q&0@sU+^*;>3kV30?3?i4jUrR< z2IASoescXFS1N$*RsE%D@+_ShOa~_hi8W=X6~1#qPsPK_kbN4!MU&4r{6x-3B0T5MseYoiVuuR#6N5oE@L038chUVPSbShvsFEIN+l)I;~4Y8HXYI} z>e+F^5x`c4?>9RSL4U6xbI;78>Pg$auE=9Yjb}XqBnuvzCV8JQk#~8IPa=ua+Q7U| zd`ctZs`Cb67u%~ZBo*3~o}%}2TL+6o-6r||_V42zk$BMk@IwNn|MmVq;dK61I@erO z6JIGyI^(+RvqYMgyd zyS8RZu{vM=qDh24#@*(MU!Eh-natJe-Qu<#{?~2LLj@`r@t0DiWx>ihKZc>*xSo1E zoYJUdi~u9{8IL<)h!mnuzq?eVF?(MsF2Zox%c*no0PHK;)gbAsUr(b~kg7?+_UGEV1Qfl;(SXg(h=*wim&= zq9NT%h9zl)h4*-p1*)$g@|2)FbT%4WVA2!J6 z-1*Ua+1p*jHJbe|w%;07I>KFVlDx(h9TdonyP5=RGLW%B)|cxflP2PO=ZZwldVC*S zoOXqj_}ur?9I6}|Ip`5eL&N0Wi#l{Nyn@{^`PHaPp3^a(Ne3S!j?0tnVwLi&gTSX! ze96RBU@F$?Ohm7X;*68xMjnU4rp&&Sru|{I+19hzslhscp` zHBEVEpKU%+BwgHZ;!+oBL^A`Qj@ zB3Zj%h1z318Ba-Vyz)^rZw_`HBqPgJD6KFeI}aKvJt=-{R3gjX{;lX`iT26e`+q6)(sV7vu!}=S2Qk|NA4m*Vtm``7lxlR%e-Q^jze2@M<8-k} z9RRG%prs57+%Vc7#rWzgG}9h)Tm*U-2KMZefYof7Js=qfhs(hb&pj?cEXwYk_3Pi{ z6cU@yaRdfnO+?3svhs4O6}D-Wt#V@066$_QKY40PtkXa1`_#T?YnFAix^1}|H(Jb@ zHhP)qTlWa+=pi}sj}qH|_G8|Or}hY-Oq6aZ0zz&7S22&KQ$I2!E`oPlj^xLDVJZMT z6CRb15hPs|1DFvUG9UQLH5Lf^is5AVQoBlpT7YxlmDZxD&~wIZg%NWY$)+P`?fb-L zEK`=)^f$5hk$`VFWUSLHPj8g6qfI(*LFO?_I-6E6vFZ2oB1vdHK6pz;^49)>OxK>Q zExUI$O7BasWNmIht-&!ipO_HumGw3;J2ZvM>j9|k`U0Z9@PU9rrn{6hg&H4OgtMhrXYf?^7m=z z>hYI6Ak^{yJg9StQ7qtCx2#g`0%#{0oS6O_I28dx@aSHZ05fOp zmSiyYUQUf*j>+tbR+sUV!mMQ z$LeAh$J{%O@4Bq@Pn?^@<%be2{{eLT=M^02&dD!EsT%;O7-$UHz6q` z*EF2io{M&R@Rku46{K$A{;~8{Nu--!O#_%1>`9(>J>ESTyj9Rha_$`Hfw3g2kEd?0 z&6{SGryEOir%=f6s`((E14%ja>#keqemB~wR=l5*UV0cs z*UfV%2=dQ8Y`QniqA9Z7eY_7oOFdD2VT(EI_@%=pT&%n2!@Ng5xT*^r^<`)7-jWAB zI@10(zEM;v(D56HrokzNdCa~uX$q?dRmas13c}bU!1;{UkS+cR{LWVWr|eDVWhcUE9STA2 z>yaI#Cvjmz>O*znNuVpA^cC?3XFrf$igt71$bf;pIh-|-h6;alrk4>a&gz)Wj7^^s z8AtKbreN0(mVijmS(2c@S~In}Ubgit|6DSDX-)zod~3L>ps*=^yVb5Kxx&L4#VcRO z!_YzgeF9yJKO_l(DvQ!lR$WZK!MS+yBc8Ew+y!Q&z0YN#sQHuO2TN zveOQujZql}^av7l=%;LOhNW(*W#-)v@D0SM+DZ{Q(6Ek57PLUnD<#upbGM^pi$Bk6 zDCl&)?Ye*p;8YOZ$}GQg$C`X5OL>g^Z&cz|OsAeEq~bRqePrLr6g$ut5KzicHhzt5 zJ zqH3oHsI!MPHs5j!iH~d#3J1qEY4OL^iLa=bc++0LEw{Qgv2A9iDCB|WXJBMrejL4y zJxkRv=HpJgC^12K=&(CGDJ^G=+|FhW7~0K%u5FxisI@h54s8c9WUQ(Z5`It5&9(LN zOUyhbcS`CWE}@OiIk*3&Z3x{@Bl2Rl~Kc zAsY}vKtK@8>cqw~zov3Bj3RK)0^-kVBP0#)H5t25B${~7w@K>cm1vAWuII$5iyf#O zC<1xrSi6`fwMAOn5DF{YGfB0r2?rBzH1m#j(A&!sy|4p$)rSMf53~!9#exTV=Ls*- z(BRC!eK+qFsu)6y5|jUam-#>R@K<_t8`c~t2a(^y9uat?4*5Skzs3d1Et?(+ zp1>|1nYp3A`&%jIS&`O<8szw5Qm}5C6bqOjM^7fimyKCea0z}F{E@G<&@zZA-r#;G z_bZNZYF73<7ojZ@HnP(9{7CQ1WG~VAwqK6BK!$|3ubyt#>ONb@?ujs{lu2VC^o+^@ zbb>MOFVzH|zWoFp#r8ql7R|8juvcrx2@%L%0G+*Iy7*XRAIpt+KZNMvRRwbpea>_l&a3p5P_a8Xt4TqGl;} z6+23-E$5)khxA@x@z=73UQhSX$~&w!U*FvD!cy{DjKo~yiJ#Y5=ySXpMtZ=73+e}! z>mq*kOSj-Jj|Ea18e$PF>LPgg)R-QQS@z`|y<6=0fj+72SAKAUlum;xn3;TmuWLL! zGy^rRF-2eErKNY+XFB%o480+2;Ab+jETfZYTq04D+%Lzxt*dP9oQ!V@q%O4i8Yim?OdIU>x*JKkvY+qnfjtZ+-qn-2QA>NDv)+{yb2wnJ*{9^&D_lQsB#{+ zaUwo^rhMvldGZVu2y#O!)Jm2JS5AG8=5ouj%Ejr&FXLD`jp6E~AEN}~%anZ~Dkqmj zMQ}+?Iyoo{{q)OKMAU#LpMT2TgeWVHc?1d_x7Qio7+W#xDJ7@gu|~kp68rl6P%{_}@;v-3n*r6oD}*T97o2ZbE#{JqeP z9QZw7nYz3+s~0A><8OOcCI)I6TDHVgMieJmSBH|-3k#`|1z*?L z>utlTfdPN{(W~T4lga%)d@+o)?Ur#*$L6$0bO9~`v}LFZ4IAzEuxXu=T33XwiQE~G zDDuEWgQrsqOJ&AT7sAsKd!xuvr%vxRZ{yn{eh4===S8oIN=lCiV?k*?|9D*>b5s_nZx+ z&NFECI8yY}T)`HFqUpr%L2jB;;;@PH*A(O*>t>B(4ehaAe`@oMPV`bo%iRk3aY`Bd zppZ^YNzNx*mJr`vMX1OwDgHnKTYLm*VT^k|{EaCrl&kV3z_b6r!23(~Vg8>&Is!Pw zX66pET~fevX$xgC80Oz z*TCRLokvczTnljx#~@)U(0GmJcI_Gddm+K!%`zPzP5Sy)qFxUty2IgHSN{>O6|y?# zD((!kf@zvKXrN0;6qy$@G3cnYg59a0tbY7VOT=5<`qLC3SPgfkMrMQEt{}81`dIIE zelO}QI%GyfbSRF@w>9)CqRFQgcVqehxrDF6Y9mRwB+zh-*RT3l1M|V@37r5}d}5*& zDg8HM2SwT?Ct&W{c&{Qdx%jnk5@Fc_9{Coa$1yXm&VXFjbXMam%hra~%HxdwbsIY* zAN5MiZ_+@Y#1o6s?PdR;mga>rMO232>`x(q94ps%1CbH=XsY?<9vLfJw3t{4diIlp z02)ZX4GnFjUXWkzyP;d5UrSc*USU~CVs&?~MRX~*m{}}$2}E!|HXXwcnw7zmJa}3b z+3&}xV&H{KY3y)bTJjCVdaYtp7dRx5oJi^g*Ak}TTmog1sOUz?2;&$^BhMoV1_KO9 z$f3420WmrG`h_c5sOtQ#8C;1yI1 zZV!*y)c3h>i185MmQeT6VB$n%|a(Yr}->l zuYd&&?QKsE(Kki%=uylzl+H8R_6+7GqMTI>w#G+u9IkX2pNwvu zhi%xhAep;6yC~b`a&CDq^rSf0;oA}b4S{fP{UEY`Vpl{3lXR+rUY!!yWY)X!v;L6< z0owOhO#yqE@&ZlRcqyt1+5#)V+P?~%1_tq``Gn+E-2eIJhg>|d5pj4;Jhq1~8GQ37 zG`ZTjdA`9dmbT-Cq53%!y9UUEcO+tu6nofU!mv%?Q(a6p^Q-kn_AoO@ft6p@hy%m! zUoU3iQagDJIZDE~h94=#$VMyRDV3o%=koY^GU)LNB*3wDzPUqY(&-1=B0{qQQF^`F z0bVS8`mg&&vXccQ7>x!_9FUO5SGkuWJeAn(ucf>@X)#S_#FS$|E;%ZtIRhw+#>>o zDp1Uz-$@mKIcb0s>yGUS-J1Z1j68~+F>U@%dob(bNBV%b-~L*UifeL4%o2h4^G(L2 zg{VZxdVlGpXy^|~C2tZoo*Bq2k>)(FvfKgH7@64i0J1RqMt5&BdKJWgO;je)i8 z1;*MFfjB2u+I|E{>r-Y7DoSMN+rPOEQb^ifGInC^`cg-;aRy3fd7A1Jq)mk9Xf+jM z%UH^j@48BZ?vZg5qyA5Q96iq*?_Re7=h^=RwNNIMQB@XI#D+<@7wKYhi>*X2IMefX zLpFB)iN&+vy3^2lA;|7q-};ydr8yD!5GX|_JywVhva75;2{+K9OY5HdXcBTi{QLHH zf8-`lb6N!^T<|L~$<2|usmrlyGJaZuduZE?$a{rW`I>k0B-^T{Fs7gvdF?E5lF%wp zw)O+_Nx~<>c#6X&4sfQubUZ3D?Oe)!($HkIb7m7DL0rICbV3gk63M3sP_~p;>hGP( zb0JXeXOa7HaBE}zoK$I{DtuOpvyHZAKUHiBaG6O z)wRjSShk#&A2MKw_ub0n2(#G53_ncqi7RK|BTgB;fhKJ~~1A)dl)bEBDBk4a~Z`Qq%X1 z+P~Y7l)8mT6Rj5*GWh382|uq%@H1NX*=gbLAXSuPTl<(!Nqg&mVq0f`AUbrIY6PE{^sGN zkFQs;5fQ^as|;ZQN99`w9A+J?{o1&h#dh{~zPjN}p5y9Mj+Phb>QzpIa!Ly_y?%h} z>N7bWQH^QJK6r63^_mNUneFWzsp$r*fDF=j4*KmKK$Re}N`VEv5VvrRhK#@anm*>=Y<nL7 z<4pvqb2n2O+7RP%F9-TI?=;)mwR$Z|unC8OO<5Op|4F%)mkJ`?rY}u*a!C5-jR6g{uxh3EA;7FclG7s<@|Cem_JJ?P0Pmn`Gij9+;L95r_tzQW&f(g^CdwE zfIFfsiM(1oNS-5vKr|~_{(q;A(rBn@c2vL`OnS*ol-brbJ%qYdX%V9#%@ii392`(P zLpqhTkzY>y78V}q?YG&zVS*N#q-AV%cptOmRqr@cG^Ozclgr5Uto@rKvjOk8+*L;z z?nn4ywPt}R39H=tRys6V3s*_M>JN!cjY}3CVNQ+eRd59-DrytaHK~CViXAN8^*S-`UanK(g&tivE z88`^70WiZGIvgz!&DuzS^D#s6=$P~}xT#3!*ou$i{LhI>MS&#(EChNnxl*v8w>o0K$hFZZ6@D+~r^en5mviwqV63vprTIF1&1nGm{j!jZ^ zEf}smV8zGT=|0?W65@fk<*udX`E)9FbI;8cyU7%S1)=$1<6$$^?3YD`wu0}^3N&OL zD4yr`-uiOq!%>HWBD4MOEO>j-L(H9!<)%p4K*#4-rYkkIXk0~|LP_ALn~73>$fj`R z7GDuV*+WGR39TB@R|Q?zWyK6yB-bwa(DDw*D%@fRV?_Q^P68J3Hn_XSSNvfn zTyy%&zAXlnFZjnY2$x_*lea{U@kH9`ZXCYsH{5~M^XKl4A1a1Mz8pI7yV{3zH;2pc z2tcF!_^)-a?2CSK89rnCI?ssjf5z+9{}EeFCL^oxp(A}QFdmqMjc`;^(1-Lw^(T)f zg5xn0TD!YpyW7BFnSu_cDrNL0=GCudK&CV#}8?#Qs-{gEXP(myT+%h#6L-r90u7PY^UshOX_soa zdaBhfLlPlzn!?Ex4bKX!)k5XX;%NGkK`|X2%99KZ#rc%8kLEAo@zXlSrOU*?A%Xo$ zdF|LC#-leP_9n=Hi2?lRp#(p-poBD-j%Y7R80`#_YO^ZoKo9)!b?TQ<0AcelqR8lY zED{#aLOdL1sNkMzb39gCXy?$Q6%HPKZ9^xPX5?p2FQPD7^eR1OrE8deZ_GaOwu0wbwfRb<&$ydNZk*Gj2VxtAHT0olL55ix(DF8 z{odr#nY?`7p*^J#-`z*xol;h5P*AGsMc`E;HG>V1oD2nn(RxqF;*Je?ojX_RG zq%?f4#0V%>UC)p@)V6qCmr6V~Ut?*NK|czm$hN7Z4TxH*W|P3xc0>; zQc|;*nDKwsoezsjyT}c#@FfFGS-?DV!okiTgBJ31R%hogKk5ppT{nE@ng}?_e|n{$ zbrT$rJ;RUdaQI`XS@L~rBHLPP?9-w5zO?uLriOiXx_NzJ#9uSh-*G8N5`m)X)mqSm zGMTKohr*)VSchVZu3teYHgaW?iqsRv@PQKyhhy{oK6q<=Cb0=I9fPWKXny?Oox8ZF zbGO&b=Z3V1Fn(F#O#9O_n#uB<==6q6<2422Ax31-;PSF@DHmVtRN{M&ce`aiLx~G@ z1LM^M?UmEPTh;*KV#sR7k#ZBEWkPIenQeTWp>M009*CM1viVHbXcNOvN)Ok;ii~r% zlC88X@ZFsjZ7*t!YwhZooLK!wsoEdtSCP>Zf)s6wR3*%yyL-Uqj7?tQTUawdU4JIc4?(18PuRj@Yqwq-HR46CS ztLBv{52_rO!N9~|U@p#pt$cJjb>R`$i)Q)tDJX#C3A||pOL*ser3(Mi)G~CsD(*Q> zLM+pPE&XOk+K?4p8=LI7(j$nZ@kRR8_uL?Qy7ODA{~7iE|LUri2;^em`a=!82#zUW z=?#h0P2Ca3Q=c$8BsCaT@cDa>ZbDUQuru-Hc8U9?r>F5b0go!(JZZp>yUgy?BETnh zuoKXS-`i=|0j}MkiTJC3u|(|3p8vxU)O+zp>WZ4UZ;QzRTCnOU(K4PJE@*3tL%Bm? zXZH&4Z%gxvKk5rE!>#Uv`c|0tb4HLPZWBe--Z!OgqW?bc$N`1Mdj+j20D_1>Q$sgR z$k>#q5*&cAAM3tZq>PM#)9GGuN=Qh0w&|9~SD5sdUu9oBZ33{9MpI&v?Me$ebK(&# zgS!cmDTeM6Z=MnAFW0>OS8MEUrbKvuX}_cnob44*N&(jXW2+ebA6rFu>Oc>^?HhF} z4J87hiv-qkrZ$H1^iZK7`+{y>1M7_BrH7M>LQ@$9Ujn9|C|-)pF6p&rCD?0I_%KOXN%^`RajB zcp3}5BM*c9-HDXviGlRVW$+eJ<2@j5D3$PaZhzU;oaU}(?73*03D?<_!0nW)vGrYB zun~l2Y||CG-?3*{138d6s0tSA@tUq5o9BRg5Mm}= zR)e^|&pIEZp--z7uh>={adb{ZO5>nwT=*M=o~qg-;!hI~-@tdpug?8r(!cMAvc@$G zA?Ag;)RyiZ;tP#yU6p4&#h@*f#+B*16>;Is&rK-t!IoFy=~Jgxn*(l+Rb?< zUvS2w&Z(fkrVCW~h=nIvFf}tGMg()2ea=zTKLj2^5?;`5I`tgyxioQvrgp^I!T9rk#C}=PE_hXTKuBnv{%ZK9ZXoL6rTD-7s zpsO|?oqlO{>DlTNiNwE*|M?$9O(o<%I#NwK^(1L+Y?-&()Q|!(x%Ge^%5!Y8Xj&wF zt;i*J7G{?$fs*vi|NdX>6K8;W{MJ(qy z4QOBnIGh8asr!XzR7KqpOA`%^70$r~M?;SMO^wvk4bzJ&o6`NLZK)9eo9~~$Twn@r5kkPlGS7uh9uMgK$3z;H0R_PX49x)<;cO1*!#==vGp_v!3GPk+!bK zws^fD)emytRY%Oqw_o#m>!!(9XZ{ebsVQK0(1@#8M~3e;uL~vVT0g>WO4s^Bh5tu_ zr2X%Y8Hum*lZkP0Wfa|c@Wu?CoL9{pkLVo@`>i5}@?WI46{JODgon!xN?Z#lMh@Z5XJ!D0WDm3EgyWN4ZauYKx`L-hB9n(ETRu74%4L6>$-Vl_6? zcCSn+7QP(K(AZLAeqc7Ra~Y%qd*4tz!7l>^ ze*MBfYthg6SStRz;>unuO_~Yx{GU=m@}E+H2RJtj#+?)Lc3>_ZJ$TGdu^!D9>3PLY zy42k$r1N!iLkT=HJ=W+vAnoO(fyx#vrpVDbg^eb2(ohA*QrFz3qZP}7!0`((HujrN z)M9JOn7$Zf<|iBYaxW;vZQ6BF%v}c;=Ih9P1Zfl0M*X}uoO%*Wn#xqC{_Fsj= z5udMX3@6K~XW%7TO`vQOW9fayDz@D3dlsZQQBU8c@1sq>;fjiy>qk&h$Xdsz$ArqD z+<_h}uIL$66Kj^ZxVJzQ@U?OTiZx5J-j-JZmikaf>ltD29f=pm+V1)@ZBBPU-}8;I z651uJ%c=XrDVN$>_s01KP9V~aMp0gDVFor7!ScJ`V7skdvv6$8?cPzJuDN@TJM4?O z=AT|QQbF!}ohZlbRPcdVC}YTm1tA3ZXh^^;)fw*8AVfLR&v*Ifz%!mweEnusc!kcs zNL%en80Pyx^*$aay--pJN-Gmw9!itij_UKlUg2Tat8uY;yuRb98e?jS|hM z=Fn(LmY4M`kFOVWem3Z$G9Z0z)yg^`@gPlGxUxY(?Hrqk08|=~ozab=cu_Au3D0*q zO*~l*;+}38W-lx74G2ekXdy+2-mWCS|6es3HQA2S!Ly`s_m4yS_rG+e_J(-`u+N_* z@WxarZ{|j!1=D*Y;gB0n%0GG4V$0y@l|1Zf+_Fz9ENIiDeMdCzR(#xb?egBSj6t|+ z?nAFU!I48tFZz) zL9LHU-Zj~-HBjzaRkDW$rba2h$iK0kTDz-vH^s3(g!wnmsFLO@LESXznN$yNelskV zN>$|~h_lAt???~+zSlQ#(bC}PN4h_5Fs73C&XqVYsPZ;C+FhwZ{1+_0?Od1v8bQ&p zo)ky@tB-JvBe#4kzGR7j=<%->n}r2+Hu%$`b-iZVAJ}zqeWKCiYzXy9ga93ABkb~Y zT(CGE@f^m=cL`n4qn?$b)f`|z0H2avt-psCJiK2{R4@R(k+QIyeMm(so;5MzVt}IC z))kujP7aA^8BG!dMMDOQFolo7ol6*v&NE$iB*Pl1)>d*SOhC~HJDvlrS-9DnC`V`RiGm)=Ylnq4c z+YTh@O-@-b(Cvgn=4`R?PN-UHBHIsxHl@5qUl?jC+FaDf!$;l=7J)iPWnuu=x z{YxE&liNEHf}MM$-kQhpvV7j9wn4;Vg1o2_=8jBxP|Z2V%~uIh*6|ya2byb z*8l7%<#Y#)?3xjr>hWFd*JN$<7VdTWorf`~?GB@Jo5%QQh_?-0e&_JJ*%asLy8Z=h zdGJdFu4*t?sqx>nnVZ>5d3KN^iSxn9mhkck=~zE%cl}Z`rPjcB|^j5D=V< z!7=8O@Jq)zX37z2!Eel|t)03;hQZ%!{q8S>5-2`$&gdw60Y9WkzxJBnX5K6TbJ%R& z5U25zq2O41H2!!vWKuKf+Wcb{-K@;DfM5V^@d<`s4FqQCwO+>%O`2XF!}#a;McO|L z1Y=|{j)`Er`dVoC&9XSVSZDwokj5X<(@YAxCP{pK-&6@)z?&P>u${U7@~zkNucWH z_D{oP&czihkU~P#LUvd>2B(2G{N_$XH1s@~h~tL1hKY)QAfmc4_oPEDbw|y_MYAXY zFn}FJJ*oioL&rhbcm=#}-`8U9K-sStgOOJif2mlgeEf_nh_dwfS;oQ{pI620Z13M* zm1J8ElOMBUeHRUH9X1^^LfrDM(YS1=~4rXb}VgGt67i(GN;1`jFu*L;?cJolc6_e@BTAD8i-yXk-tpO*>{_ z(X^+`rr;%+ZIj1z^Y=r5crr%@;dxc%s_@xS$!3aEPK{)R#*5Gh9O)v0@Lu_dQVo#eiuCEvV-$3eB#*z@h+~X}3BSmRm8{ zzjGelJf2M+XZ{V<vH7NxVKv*ac;MK4Kn~vH#RXGpt__djb6fSX(XI^_pIl~j8*VO;-z^TYvN|9j zi`X!yn1&&1aD-_vbHJSzf%G;U^iK&LE(Ub~t^FG7UBeMYthxmr-7z(zckeV_?0(eO zaAT>d{Xoe2Y`s^ygaRUEm@Nwzq6-^RxjX}N=JAQlX-E(4ZEsr$K7=a+fqZp$7dSH* zBgB2m`xrD*hXswENzkK0{33l+9vPMe3UZB~@R^4zt0+7hZaf0R;r;92cC=+Hfw=m{ zDTUDyca{CkSdz7jQZb&i^dIjbvf2SKUwzQOKHO>2gh~xV@%eobbHA`OCccY_E>Ghp9&zxDpyzu*4hu@|p%cFuLqxz3f(3)bCy!_Za8y)kxy zAUYkI$DU~ly8Ce_k3R?~H+eVlQyC-L9&ekQnTE=&Q(t@%c+bx9+n`8Ty2?VcBisy_P& zSQ%Sor$K+qH#PA|EY0^UY~r{YG0BGg`r$p-&*qtI7Pzi{ZyRtf@%#N7ZN{7x0?U9b zXuHaWX8o6P#T_^No?lBqfAe0@PJ_7Dng6}ixi=1#0Y+Kyn4P9;vq3(;;Zz9zuRr?P zH3Z)VGEU6B1*h*rNF4WmjnxDWJYm^L8IZ)4wd*5{m%3YdDb zyTIu2!tK3(=94!EzFjSEoceU&z~W%_>{yLFB*0;hW7(yTS9JKfa>JyHLhlm!nt8s~ z{8A&C*jVdT%LnN^gp@0ePXqcNARxchjfc`SL7xHxR4s`M0)qHjMF(hl*LzLuWq$50 z3~_s&9q$R zYL$082FRq+mrtvF5S0!L4%87SJ$8<_PY!Q=1G2v{E}YV0sgQ2=Dka31)F4LKT1q5j z{i$|MtpK8E3Z`jRW2=zl+xdZC{NgO0knFyvcXK~L-__eCIXj7#t?r|cxUkK8kPX8Z zV!3BNor(HK8*tK&R{-| z^b(%SOC9~BwkeNz)#70Wgc3aTsdf(OQM8t{B7X7V^Nu1KJHHNwc$OetP?@;zTURkp z&8?ZFIE~b+hsFpYH_IDh(t8&J{;pbH=W#Cd;=g{)+&xTTY3|NmoE7OTG0VB zS9LtGaW{DpbW_tmt&DbEahHKsQE1gyA+? zhSdU4cS-Xl7M?oZ(V>`ndN{;9D=~#-sP=8z(8CM@&`%O>@=Ax#RQG$r_?R*xo*2?1 z9&*arxI|JHX4l;C-XTPC6HeC1e@_;0BisK%P{{i%l(|~Q?gnnvz}$h9Q4Dxk=-}cK z+Fc>!cm$BP=^KhkmCBrb&)OTzH4f_uA=DOh4ZExOfFawgC3s+5c}tVvKAVz#w!Es& z)9^&b1;K_wI(`luphd*pZ<=3rh+OZrGBGfY*fc_Qwn<5Lh&jBd1Z#WA4|omq?Jk<@ zi6?=&sICllKva0juy6w_sE9l-Z*b)@8MnB@XqkP*^TuydHT8Z=_eyGKlcWP#i4@yd zs*m0K;aJh}_dLCY(5JH3M}^$IT8&C?sla(|;b$}9^zN$*^2xT$tMlla8o)Cpc7M8C z(_V*|iF`gRIrW4`HC!!@8iwJbHdz~B5jMF;+~`mkGW=R)RptZx6b&!6*5soMrU^tG zh<@RHVhB`~^Ou=z;PMkX5!5_WuUs4}!3hsihPT<>5}_1wy-0{pu)==Lc#=Q}K8p9M zp56QLO(2A;Qc!pP>beUf2>t=y;$)WzJS^K=hiv&Bg26F7P1SN9b-9yy9pTg88huKX z0Y>f05?}qcbipiS`8N+f+-!Mv>e#C=^fFd98t!o$-TDgin8W97z%f%7iN;#YhfVqS zFesaS0Tr2;*X=G?vXz*3@0rpa5+2n1cF~M<1R$CxENIPsb@{#?6_9wi|Vt&d+j;+`ZwR3Qiads1Zhm^qD>8 zYe(3PUEA07k7Hyck!8X9m?SkF*-@^#v+mZ!ur=1o7u85btxM>kAOjy|$GUIkeZh`k z0yh%_du+1HOF#4qMc7QrN=7CwS5bUSP$|{sY@M)D4Sn=!IL?>1F{Eo-Z?I4bP;cH@ zm2s<7SwKkA$4P)PDvstyrm;09Dg42vpo^JPe6(8(vjk<}tp86>ksD`u+`HcvR3|la z2U^O~>x0+E%71M!5vP;YY{^Wd*tS_?z(Spf*IK-sA#PC2AEAw15p9W~d$3xNf6?#~fv1Q<4aE5SI&R#PHd2{Nl~KcLTv6qzzt zP_5PLQLhj+6DnMinsfY-k{|v8V&9Tv2@C}{_M*#TouT;GtugnZ&obZwz4;`z+w1vl)?Jp>V9Ny7$F6X zkqw00IDK&P#{GH*g@!a_1VU0X9na_3`*dOqZh&OCN>d$g&d&IZ75(n=Wy6J2RHP+Y z95z4B^UY^XYf=Rl%2Ta2SKdJuvlL@HySKllq0@b&)cJ#Gl78d$KAr;I_?l@}aAwxf zlVOF(z7M<^Qo_Y2-Xo6kJfr%G_Q)$M1mw`{oOx%;r*8Y=8L(2S-f}(wZ4`24SLo|D zq?OG9P)Sb*rOqk=6-TOXv6ndv^68Zz4cusSXGXxHPxEMK(~Hs)Ycqr)k+}#1)r+T7 zbQ`V0Xxvsv!^5Lm#m)rQ zSY0qXvP23lPqp~{ZdZ)3MvgdXDk2%^Nhpg>>qmZzU^E9e(Avx9Q;HC6}HBF3+=`~jAmN?^4gVDJ5HN?tom!wp8KL< zug;Kvl%QiL(lSyx35GBnE?6tB9D1`l%v0CUvEArpBUiOpCe3d6BR66GsL0D^XZp2) zV{o3oK;*lYn|G_jwfH|D&gk0ga1N+P%2&94s#+f8ukQYKL1#1j5G13D7)c~iw0y1m zFo;gww1f2^SIvS>xH7o-gicT|FcRIHLSci!Rg`xqTau+WQ35aDx33NGN+@U`1R|I@ zx%wnBEm~{J){|ybny9K*Z?GaASjHZtPPPA-w6@v#$t&@sZTib&ElKxxw_?I zziu~jwu|wxvw7^wq=Cq& zbB))VRGf=T{1!{=YF}2mVem+@n)+z5gBLD5q*R(zIr%|!ZJf>ZyBeK1)}#k78F=rd zysAGrAbB8V&cX@ffnd{#;D)}DK?7_@!A%UFPmA$ zznH>y=syvF%Lan#d#hYa;|)q7S?t@KPa{2Q_bgHzvt~lHjmKV<87THLXOu+^L`Yhc z%^;VxdqY$^r07&G6jwO#RS55JIK?Qr0Uvpus%cSXV|nUmomH<$vNl>HPppul4fD7X zcegx?th+gNXp~DIKYQ{2wc zrF%hOAYi~#R4u~`tP}LOB@%A#!6}gSCM2Bg*#OCDG;nzlt$?jaCvqWVACKBYD@u6c z5CzEwUS5fnZ4W0gL*F~H!qqepHd2L=eTk@v=WYs52kKNenVGcIs3-JIn~LD9W|>v5 zdB~0XGtFK72zY+dqLv7Z24fI5EhO-SoeaKr6`{mt{c>hAjBb$@WSu#3r>x2@c_mL0 z!>i+Mm`l+HSfdTCcZ_RyMBPWy$?(S}cwI z7N+RCPc@T&TF!cZIrHHKP1i1al-ogZXS{k>_U?cOKgyX~-x5aiP-!?^uvwHqi2D=P ziRWIyi=SW8<#jx}xYF)(8$$JOBL2V88Is7wYMz(7Ky@YExctnoDY*0FG_hUGjn{K8 z3L~j=q*aRFE1gO--0*f*yT5oRorf6T@PGBkvf<6nsS+)AD@M zHPC6;M*=xF^w|lr_HSbPALAJ_+`!0@cC|CE0H%7I3^fqP$j_y@rmR!ZtO@EXI(Av< ze^A~G*sMhFw1>@=f3`!-1>kn|$AFxn3)S+_!nrDxIB3LSpepD-{;t;=Q&T<4fBs{a}JA|KU48`xOA3M2odao5GHJ_wd z;sBb_$80?BWz5D_Bor=t6gp&*3f}$F(+R56w`=U?mu2`Vw?g=QtXV8eHZ2yo&q?2Ny3p-~|f%poPw1zeW3h=^V4{(;G3M z19g251)U4H6;56wD$Z`|{N7`KnnX5B;0-HN^-mytlF`5I&j0@7yi~L3h_`?0S3Is6eL+Mt zR!gem84?@W`gvu}f96YU=wa5%-yVD(sc*j?`PpjV@QSQNy!EN^sm9Iexw$KQVjL;u z*5ckJENr-XZ2veVuFb6Jb)_h`)3#{`hf+#$KKN{j8NDWPE;5HRRTh}2P^3hf0FW=?2Mm`AEGYd-W2&L^<7`49y4RdX!#a!B5=@QG zIf=sua%J`nMk~va@tk@kl<~9E+@NA%PR3iY%wz>G4nsfloDq}^BJ+pw-Eq2YcJ&XO zdWUzAcM+`S-EkM;VDAm8I}C0D0ptNa89#&=*#nZM#mXApnrLFs%sdb4hn&1qmGA#q zoXfp&t5I^4qelR}cSAR+e*+n?J1k@KzW3;BjN|f};nJU;_T80TvbJ z4_O{QU=OWnAKH@Z?*$Qn45BLz=%b)tVDDJ2^YzNjSH1X5;%v$>v=sl1ENWtDeClxtZR;E_wRf7MAP#g=ma~~TQ9{p=3l7&cj zVpa$83Gzi?Y4pzbd$Ir5rWzkHS#ORcw zCQKk!le;8M>2xYN{A5N@{?CE1uS8uXb6(sQD4R41WZ&<4UCJh(17MC5;&$-?c3G9EHdO$g8G&br?3?dmd5OooQ;!PWGi` zQ5g`W(jPJr3zzR#YTr(!ZXG0Y1ySp&Dm%L&fTCpSny(XTPfv|J96CF@57NDP`e!P7 ztsuwzg3U@KD|O_NnJj^^U!k;w`h zk*2bG-()*wK*zmW4}AFE#zXsCK?=4>ia=OOMVu0Qq3&|C1v90q++VghB4c^+__EJJ zUkOtBMlOPhA)pjuL7FXKx|5`NadT4V`5Z2H5#b*PI#fHYcO9+{70T9R8hl>q71+!? zQt|z>mp%ZZz4-zm!TIQm-ZOMgMU0TdK*k^wLeC$FqzU>J2KYR~7Pr>r%#0aZBzf%e%bkEdNqKo0+?sF-kHn-ycZS&#qS*W z+^Ls`v3eg^j{(Hhb7{A}>v~k%=j}_DLEilJ z6g?yR!T>Bs2^&USSWUeD)ZS6GFk`QgFgv4L2p~33dZ@3&MGHz3>Y6jd9K@xsD8pZ* zjVMw7c&p#u;E-Xobn<+q&wu1~hlSIE!k)7BON@*iuPCMDt4!63%M&TgFIaAhOI_Gb zDEKTV9>apoJ{D|QbGQ{xe;}oR9{8}t5^Jb3H@Fdc~@S(!WBT~e{Y3NLGVA?k(y|$;- zAYW}}5*Q!`o+%^|#ulnhMUv+hJr)ygb*R>$)_2^KS1}jVZ021JK4a`|v3PcWq&Co^ zsr;3bWuo8L7qI(n-^gGVlcM!*dz*J0f@C*awIXPWmSuv*tg>u_%u>^{lK!%w%L%i{ zlK|4ihppl{T?w^4jV}1rA)F#@qiesPDZP;QF+07u*J67MW$_^Eud}0?<2?%Y{V5|y zJ=28+8og)kaEC3>r~~fe>M1weK>K6tk6!|W)biTuXNs2ouA}{+g6zaRUz={^t>%LJ zp_Jcl=@h4D24DXvLk5dr@?b;zQ^5@;1;Hp;#Kj}TLH|e9L3yvplgiVeIX|^L>8+NJ zI?ugcT;AB_r3pRs5&QDY2OPrRk5EpF`8 zmZ@2}ls6!=Vk_~5V(UiA*jQ~a`0P&FIs<4G#Fm$RMG!_JY55^Fxu{o|HZ^IHfI}(Q z*Lx6n5-!qKLo( zTK9~vuSO4kZ*2M2s3wyCt4ld$tUTHjcN^mHB+=29gyJw{n4h0L8ki5WFZSXmc2wUwXQcO?~MA@F@Ya;Xc(OIE!B4A=knJT8AA6mCNDs-&&TO$!+C7Cu={~^5V&}DGdWB zai!{rkRy-^?HkG&5fWTzwpcbDMmR#YgOIeUxx#d66a7Hd_+8 zWic_8MccMw_B1|q&hu5i2fCrj>!*)v&(fN$>&X$7bG36OF_q-lwRq21eev`&w(A6#t|zjfy{xFsFZR8LII8R8c#ZTbb2!eeCIzTU3Z z7n?sCr4+p(L;GXyRc6k|AJat0%>Yf&ns3`4xF0`v%EZRuCeDy=x;;A0^iI?ICM+36F>^?c6mqSvz{wIYWChJTr zUe@KY$$x!)JdZq9o>W3gyI+A+@-Lg_ELI5H83R$eD5QItOo()fXvxkR0Uz>q0tij) zZ`$-kTT_F*GI8NsmdC5-tOgF2E@5Y@lyjLw2fC|a%ztF})3tPp zVqsZq$E8Kte7YyG5MLC7VE5a0|4^ed^#PxT52Qk}7O_B|uH&f32{F_CHXabR!` zrsl=mc=h78E$y$>Z%p#>uxS3?PsdiV6F;?|zF+6GDix7{su?o})#I$>j+K?xA;L15 zVeVb5i3__I4g#hhHs~I_wzrE)_Ir6-fPaA3Bf%yCTUdgb8v~=R6;^O`l*lf^;)4hR z*Q)2j{?0*E~sAvYPuQP2|t!iZzN-N1v7MP8IGdGtd zl$~2mheGWOUYgq!gTJk`8@MdVv8R+%&<1wG~d}g>dGX9`QKKl zq)AB5I6wj+7O*<=`O?3N6<+L;4_l2YF@|HV;RQ;Pzj}wsR{v3XZB^gkBwIlNd#`-hpz4TJwIZOhg`ZXb{tF+4 z^F=5?mMgk7NSGb1j}h>uVTj{eq(!?HP@CHl9Kg8*bT7cB_L*5e>t}O^SBgi<%KD0W z2`YK+7Nw9#bxnku`6H4PU;{s=DrM$^Guo>zusTP1dQu8eCBj_VP#g@lBgrFPc?WMWQ( zm}~nmgi9H#DZ$LGpBK$WD6R2_@YmJ`rW95(lua;jf^_h5lBL3^!~mG})Gm(c7z z`@yS&V`pDcycfCz=gT)^Flt*ZH!EgUWpccKa8`cxOqAtYj|T5`*-bO^!i*Z@1P>V( z&GkISo<#YL`8$sYF)Wab=ZJ}!x@Lq-eC%+c)Mke%0plWn)9~VmOT|lm*?k}0Q<$D! z8=f@jMt~?zFITp9Sm5N$#+Ifu^dj9&R^w>5GM}(dQMrlHKyEjDc-|_44L32c@2)K+ zr4_XPLG<#K4j41}D@e(*CfDKa68TV`jd@xfHfeED86(@nN@h4d5-2zj!rLXQrNRiC z1zR~&DJU`#$5cjBEzdhMEfiU2HBAS}3|p1fB6?Xes~RI3z=A0iI^C8?IGK3?I)0fV zRvGnD7G}r5N&@0lvCi4cP*c1pIqiT9tSSvk!49|uo1aH~iK4+?a3(mfECRX=tZMyid+eV9qKq`9+W+9S{(DEilTZYVXpmhAW{GbdsgVAuOkup4gcs7#ZN_W1Fo)#w&9R|US58vu{W#Qi(6K6vj$#<$t#t{*J*k>JBy89 zT?*jp3knO1KGi&Z;iGu9R%_*;ulK3&th}W2UBqm8WUi|8#q~LEbPno8(VLK?%cqgK z@c0?Yvg+{mY-;7GHrf}JYs4Vd=-4C=qUfM41JOzCTwdN z2U=o2bX0rw5L73js5qq?vA@ykiPU%Ty&>q6p~Rk^>YWpl`O7|NBqb_TOZ$!v)53O!krP+GnkatlpvwDQc9L? z3KU{N!6L8EI3&UTomn&Qv@M$7`8%)B^W*u)&*rFCTl8?RnHxL2hd7o}*CO=bJ~8Qq27 z!QH#xM+T5?rMv!~NDB+r5;llRuit^2pAUGi_n`70;o(u7I6}-zzDKCYW|Lb^;(dv= zKRYDkpjVYvp_G1r8wI^a2hLmz|CoefhXK#b(+XJ#rXZa%hjN4hvc<#!U?~gEkyd?6 z;kDt=Nm+Em!Tt@}`5{PcBpGfYef@4?qH919*p^3)U(F~B!rGy64JBDKax4S5ARAbx zkA(7Q3IwQZ#HV)HFjitbTXpssJ5(# z`htA_9?V$Tcavz5KMD-_4py2nz4^2ZnkwZhM1?{eE~-;uz$PYnI=i*))sQ{av~viG zqP6FnEbv`!I%(qiYZh(gKuiV*YsNgg`6W3?R?C`Gcmu?#3Z?hg!Q`f%i1|)$ny}p( zv?J}RKuhs)aWv^+u+`W>s)5%Xi%3X8W@O}|*fbYPO^s7K<4C^2^Pl3HgBuW38U`CQ zd~h2=8W*$ltjl;*Y6QtEH+TMmb3}DosgfukX=1~r<#t*V6-kh({%&h2lc|P53`i+O zA(P|HY1m_MDSSSv5fCvcj7$QhMtOIT5#?ojS!|@{oHTM%YmAady8hIZcpKhQ-s3F? zAO=OAWH+Qu2%Lhm@}mf?wlKK#!>sKzJKy&uF2WORD1sP<1II!S%<`h zP84EpO?=}(U*@D04L<9#ek=umamIY+8Jv6>sPRp*Pj>ON^svLHeuo_C6q@#pGOW#} zBRMIfqGXpX(rlk3E5sEQGt8BrD4?Vjj+Tv&VgUtW2O3%4EQ#gmY$_mfGV^^m6Od1z zMvlw|O5I<&8g{Xyg9PxuXTkXPa&xG!vgAkRQWlY%gIM&R@@Vj=R5WxlO(n`Icwb40 z1}@V5*MD1o#LN(C+X=Jf&?atE&P&~ z{Qa1D)jq11uTEsKRdR5>`J~pM6ZKbHmha3fCxDW`l060Hqigq^>*dk++oy`yy65ix zAVDLIl%`^puZ-;2GK5m*+>lWweWXa_T<<5u5V`oE+sO;B)B3!XU(Z5eapNxSc(N3* zoP~u=eNd4b09&yg5apSYtr84tcn5;Wk3>Zm-fr2kRA>DoAJ}S$p_^GQjkH7^`&;RV@9bAQU@SWIUQnTU-ogr3s9yJ$03JQ{6Ci+6gUifa;vVO ztU(vyEW>=e&annr;+?{7XCRAB(>lWDEdZve-XCasI||TWO!{<+SQYjKw#4o`T{(NE zlfB5HeyAGivniDi&EKb14C*s;xLxU$yML#xZju&SKw#ni?=fCDS%dj1eS$-YnFnD` zZ;wET(JA@HWw0nKw%u(j2$zibkPl+gU5(P$%zW>~Ti%Fd(Sd?SB+02Du)l`{8>urW zMF8;{#jwtuKgT0;nsR5dpeR|^5~d4 zqGKoLW>W}?9O_eHmd5rrf1Y)VO%0Wd6ur%ZSK4-98O2A=*G7A>PO)~B8It2DC76)&&i6pN*hZ3=) zDYP&CroLAp=JU#?DZ7z#-Zk$dMx#p3T*t!jiMr<&GY_0?@7NUs^*#JcGDw4UN!kMo z8zal?kv;4{LRrEcN!{x1fT{+}ukO#rYt{Q}vOWC67sNK)dWzM;7e5?pUAc?5&YSv+ znTb>lXo))39g`I3Rvl~o2x>~3uEMd~Q36p3<1X#6gL(<)8xL#xoItxG^>!&wb>(bS zal>^Rm!k)3bGQsnDx5@pv9k?TYW*8QhQOAs%Qe}B;hx9WwN=>;1(lsn$G*M%!#Y8G zGDZn)+KcFrN|x5Pc5*7l*_UW^IXRsrqx8Agl~Nv`7Ycnd3Q3Pg6|9nCYEEqX35Mss z&>*TM@{+XR)V58J#<)14o;m76>WVF)Mw1Bdhe8UzhEA0Hhx?ZMq|G-*eEYcZwsu+DAgV_!PPFW_Ls`F5B50n(z!&v((vMTXHyJpFWE-exKDo2 zc%Dw+>~T27{gr)u)%T=RJ)Pat>XTWPsfV7&8!tP~7cMT1Polto4>72g!-Ar-1dYX; zQrUT@`nV}zQCO+0ToZS9y16Ku{9ni6EfNW~UD}U*2b$<-F0mJ$))Q2x5l;AjyqBjh zfr#PjxZ~S(|262K6KwL1{BA`<4{b~3*mr!$){aj#Iu^edD`v)DhqgB@xt%#)46%&q zF9}bN_3yB+{i@tQpET89-752p_wwFxy-dknb?dv_-SfEEl&QkebFSfz9}Uyvy)MXb zQGb1n4oZ-{cPpkJiKXx1FC(D%t@`z|X6gAeeBRnFxA=b0F)3EKLCyN|=gVT~JFl%E z56)F1J-&NtQ$F)$w)+Hl{&01kj=h&1yShDXYgmHA{T+8mTbDPN_$a~-v|aCGe|ah4 zDKuht)^a&wS3yXQt)j=p_@pUshQ$E*Lmb=pDJvEH~HDHoLeZU@ERcJyFo{y>CJy`S`qYJceawLpYfl!vAiJ2)HU&^b?7kPvc3g6KW(CTHE755@mKjJ#|3;BktYtCYJP_ z2Wx$b5vuxl=r%3IaA&srY?FgndH>KpfG8*XDlSu2G$3jV<-Z37co|q#lk$-qp!0V; z3Fg+4cPghr*D}VJ2W)nk%XxdjTUZ@}~Zrgm^ cm)~@W&o1PBayz>V^bg^KfGI$WrCz=Je_F~&Uv6Ob<`e^Fp&K5#~%+s>MHtw{PE|? zAAj6Cy-#@e$zE;YUw5Z_KKg3Pf7DJg?cQDBJ1J=^{qYApne^I*;O?5(Q{BYpk3Y!! z|32;wc~si}@dvI9q@wgHz;ge_KbuLlOPoZpc(c~G_@1wW<3f|e;&8CXL(#{{*=p~A z57Scmqf(;Z^^OWMl<g-A2ZB)t>9|aSxJ>F_nOg#J znVh4U1X*=fXRp%Txn7daVc-30SW!fPg#jj}y;Qv5TqSC0t<*&8x4UFnb;c1Y2{hLu zecXC`IN1>S$Nw7ZUXTBt3cpQZeydvE&U2n8onZPb>6x3RM@!ad@_$V_0B|36^{6i$ zo2kpTOHT8D{+T=CSsUx4Uk!b~GWp@&r*GfXsFB>ljy2UKlOHhN3a;<4+Y3|t?_L)i zY$;f^ch!|on!)sQwHEQOs|;;|f*3SDrS{=|uTMK{Bnj`~xblKk#%=^R&{vl@!yC!Q z;^00W+k4d9*f3mDOu<#RLny+ZY3TiiQre{&cR>W02>-w1I`yIYxv+|1MovM|V4k?k zODck2azk;{{6zrF!N>|}18T^bqQ#f?kc&pMlujA7029FGvvg@gg}NH$L+sk5Shy>< zQx0v|C(kwRx7AGDcIyt_h!eAkcfI5^)IGY4si)}X|Mwc6$3JTef20BCuBi9B2~tDs z_G#BEeXln#Fwo5j(3Eppx_Ge}AU;yBM4>Oa08R~f!6jMz zP6a??HbEgyf-`ASsc`O*GsE2*nW2_ll56{Ry1SA5b`4C3nuAN4*Y^Q&#g#bm@RAS|7A*Cp4exxGFWK5p>2U_HuSMdaM0hdO|$d(%8k;?u&x<7 zDiwe$#=%V;k)ODa-GPMzGT9^^Ie__6GDdDH^3P0?=}h^iU_srNpm=A4bwzE+3MG9O z7cUnjDRW|$*#9w5+?|2$G0YUIqeZhQB5S|t=7DJ?hUTHFEu5Y_RY$7T^(H(Wf=i9C ze9&Zh8r4o=S-WoAhE(sEGm()QUOH4o60uOqzYML>ESjSstnh{S+d_1JDV%^&`6YkW z3YVKTZRi6{Dyo^xQ(6WG-~hk8E6R%!o4{F7S$l z)M|$CXclN{?7MPDe$Itrn5LYLd2B;j|o=$axkvaVkdY-(f(J>pwRCOfKPmhTYQM{zWLTpU$;XHge?a zI-O)HW#a4QZi|R65@4Sk2{dw=7kxUr@#^I%a zJyzQutXNWXvVG|c>5qA!n*rVdu7Kj)`TKlKAnok^kK8;b{5(4*m378{Fwv?&ZiGfm zLRTfijkJp9dd>PU)Tx-Zw;N@|EYvimRD?rdA|ra1 z4@i_$iJ=9^d)A)63H%f9pAqJ97cXfa3-ec-cM|d&)%h8^rR^s&O4<&@Q8xypCAz#y z5-ywKu^ge=aZPGbjiJpPs0|p|4=sDTASha$#3;HC6@x2nOR*UgWbu*@GN|(VsU?p9 zdzmlXqNKZQ9<8n1HpZb$h}}t#zufnN#nK$+7=l&G2~78fbGz% zX7{r~?PL^w`=xBk|1mfD-JPRz!ba64YevQTFwD|W{?9!G`8GaMZT}}c8a;o!lKfDY zao2H1)U=YjtdHEeUbi9#+PSr8RuOynPhz;+HUSxbXBk_^T~Pt6t`OK4T^itmf-?hU zKBsNT?Txb@**~6r=i6a-NsGV#O!Du&*L>&u9H?2{wtpK2FHHOI zr2a_V|6kR_v!2KQnT=%|)0k1MGP`nG!y2ir$nT{($oA64=o4&<73E22c-Is9%%rH5{gNQqO28IKo;s$i zNSCar?oKo&#}YLqS}H&F#sjeXpkV&?{=*5)wov*Qv8%?!z-Z?1owaMXv!Y%fbZLN& z*`)LYSi*+Rj4)OekEfq&8WRIsk4aSV)DC{$e-R#1{Puy_9&)dv6 zZk}A=h|;lyz{YB^?gMB|2nu#((;Ku2fA*dI(p`y5B;mat5RZ$YGyI{fcFdK`fEq~V z3*w($s7o7m0+Su%gPA}&jBLJleS70k@M4kIW+(+Sl(jj{)--Df2RbK+-d zMr?gI+zkoMOa(#e2taYfc+&2G;Z@X5c{1yt6sSz9r&g3Ffd?7-pr8*`qUDcSQ)Sz zhwnGu?4XZHaNSTndk&Cw7(U_aA6c;V1zLn&#X(z<#R#vGOlz*Bf`QmF0~k4)>h&Y{Snqbzvyp@6v)Z6p_2;x!k0+e zaVk|c!Y)Gi$a_-*(h~?A!P%kuQ4%7K#KiKRGL&tg zz@A@$$E@3L$EI*Y`Y1C;2CF6B>+G8Pz3;A@MZM?abn%RzQFAI2Z7Gyu`e@SG-d&V6 z-}dD(+<<0WJyB8{>i-(@4eG7IVl?+X$Xft({XE-Pw$~5l-}^@TU;BXYdK=X8C-hv4 zv1)DYy&x`(JU?t9BGaShdGHOe!B0F0$Dyp}Tkm_NQ*F{t?lM>H6&-x@`}D3#D!dBb zo2z-#vc!>jAuhs6H8+U2X9sc9w-FS~6rY9#i`RUUS97#A&b4-9f7$9pko29Tg^O&C zn@|=qD8shW7+L#WREd{5X<<1X3GF=`UpYz@g+V5gP< znOY67n|~pQQ?W~YS?Rc@=F;8=o-tPCY}2=CoLS&{YB>FwF?gmL04*D}jcr=sq{@JQj@W}!@ zRo2}6E}kWjFjM1L+tT__tRH3dm=fSp*6a8Q{=DMC*u<6fr6mvVajKwaxdV~;p}d#l z3SXJm+_n@wXqm~a z{Q`QM@^;ugAXhCq(wb)H<#&yLpd#S))NP}Yr(b$y@WJc=cX=N+>yu!jRvhPXm5=;(&6+#2xf6t5&OF#wW8jaqEfNRwr!@t>^SqRjrc`zE7AxzzM-qOC<-lT zzG%P8b1dXs8+f07KYb8W zE>JHx_b|05wW+VLvZvhG`UOlX-~U*zK)P>7AW3Nw zDD{`fjL1eRCto_IfY(!oYxgWVe{O%L&_Q;n{QVT4IS>CbHTV&$RV|@NCZjXaxoS+d zeNyQtrbO_#j3d5@i?M)fB$?U~5MhybPz{Fy8%8DtA7GQ&R)EV;_4+kfb6Gora6W78 z0O5Vpu8@^O1@Kq|%$tEnXclS(g~rHYZR5|I29!P?CkY)fTtToWh`vH#|8HY!Q}qr9 zQuFvwGG9(=9fQDBdt*k;>RDcer<`YMqrtLYGB!%>p^M&W|BYTCML zI>se)(zMN_t{Ks{X15{MG;imNw2<5#Ppr|_;oStCzb!=nab=Z_6a+O{L zZ!@*Ni}EM}Qvzobb}d5#qqvvJ+u>VQQ+9ib=hhoLvR_tYHbe_36t6U2rhz>c$?OEP zge+u;0*e&IVONHlO2i&|%f?hl;RFsoF?~!2Txx-R*WG4jW=4CaCPjrf3Fa2EEc#?5 zy78$yXz4;`S}Cf*+G z#nnCdEH+dhoiphv-S7hu%~9&XO*5um#F3ai3z+AAbs$k>T_xxxsq@j1ngCCOvEVC# zjv66-&4kuF8vc#~YUJEZeG_Jo_{>FbLXuZd&gjTZWziyAMLp57a3h5Z-5_r=9ovY=^ zRv4$-#_woflKZ!aZ!}0+#vOusJ^GG1pAHuKf^?c#hd4&QA+&LOPFJrbFWAT6p7kAG0(5CQzdX*xY zYaw<2yq#euzUsCPmVBHlf6Gu-_hD~dGQ#%f0QGRiV)F8g1wwYA$(gcgE+;Rq@2|g_ zuCj+4_CGydQFCRK(V(L@KBViwb4z?!c0(%2UWg~73O<&PO0D^3jOzw%VNigqrn zmHSg(auNGgFfUWD@>|nI!Sb`P{mzhNb_k!|r1tFx&Rq%YB8iPxf0NhqO{q^L1!>Yc zoV;0jk6sQ9bI)MNEt+v(y+f4%dm}tc->mCKj>v1y1ug4pM!h08oEZ<*2>EOX5ApN0 zpjU8TRN#Z9T$Hp#z-wcsZ_-@=`ZLrhug-Ggt6^Yj<0}t%D1;1jPHeU=kV)=aNa}2U zExoaAm*(Z{*)9M-r02tXJ0qyxCN7kRcV(6^n_Rz47XmYIEsHFf#C9nhta~)uI(|vF zdC1s2a20v8oP2Ji%&tpS-ZY@gHxT1=5nS*6KjcfU^I{_1-BFl(chXU#8n}B~;V)=~ zo7E9$N3wj|c7`3yaGEiOon=R2xAGCLkgtRy#2e52+#Lm-M4P#F+I%4t90VMuNm_1` zB+I%2DpajGSW=0hX_^gNj_NeR7R++034jOS2LLhaN-4KU*LVt#FtPcgzL;2dmIbS7 zw}r<1%F`mgXO@o5<-|*ijvvwnMa6&a`^cFvMl+o04V@?-Ou;I7FI^+FTso=@3MhG3 zGYN`(u)pv?up@m#X-&ywly?b%`qP09SFH$bG@`odfn2*ee z!cto8B8}A+!5QvQVfQTb2S{@1vcpH%<9^`2@*hbK%uY2rs`$(;9nFgan_{4%!C+^` z>@=z=Zo;}xOp2WJetJreh?ypWCQnxt8EqPSw(-lgB!OWT@6g%<8I+LNd=0wn1jab!=CX5 zYIT@jmQ|W406Q`Qa$W79fBib~6=pv2y&aRdTS)rm!s?9i=clV2#01# z4mG31l`%P7UIK8TU+&#%GfBaIW}0^N#6gCbAQee3-8K-oc$Tx4L3dLoax>Y`mRPW? zF-u3R+zbJ?fxh6h%f4wluq}`cP(&D~^T=hFBe|;M1zBqQr8bo}kmJYAqeo$Bw%Wi) z(xTOHks8n9xuEI3CPcv0c0jkP3wR$>Vesk8w**pMFCoMoz!Wnrt}v)$hFL=PB?0>q zo*>PeygYhlWLX2qzO$u;I=-ZB8vQj~&!P~2-Du&DZx}%e?fq=L5tzF%5e*vo4L=48 z;{>LTw^e?MHqyf1xi|Qc9;i!N;QSFy@k0nL78+t#4b2ed9U*L3?n|U~P{7)$UZnG< zqp-z+8eo5n`UXtsxJ9a8Vkb`s{@w5{>A~)Kz$Xm*?M3!F~@C?OIOcPoikc z4xYK0OQTvb{$PJoif>VNjHo$E8m?D1Woocko~K64pG5h(=aYp?67HGaoKvK|UG-1- zKCimnFg`mYpR-Z~yE-iIiQ!cEw6?Bi|F3SDGVBW0PPj5=WVxL1O%m~8@%!_+suaiM zL*$cWK<6j=I|OO&CSQGP7_Vlj%CJVcZaz422R!>r6Jw4^ml`k;ixQ3lu;x;kaW`pN z57;~HWex6?_@yz$HCL#Oh+mC-;Qhm&g@Tr4i#rLkBhS28-)jMH{ud z>nD&!E1%@VTLyhd>&*Wgi z3p1ai`z+HjS5N!%;f3-F3BHq*i5umKQ?q!*xqx{{A79(l5OFz31ElXp6t1~+(eAdv zI6K%**(%!?zmwdZZg^q3gS2@nWKWId;>8dF^-HO5UYeq#VBS06bg*K!-;qg%OysDa zW5_9|7-Z@zl|rTkQ+%}|N&KPb2nruz&)N0WZCOt~q>^v{jo>G{4+LDz1I}YE79nNr zQuIT$tA;!sA4&b^&a>sB%&3h`&RIupWu1xURU*n#`}VZj%1K;3Pi@RV=lg0wBvwDk zYX>Z z8EhNMn{B%0@RNPy7POBf(#e~2cU2F$b7^5Zcxh3@S@f9kdF>9-)MZxAqg$+&!h-V*xn$EfTBH$4UyZlTOK1%XQouXPwrTE{ zzT@78-SfpbL2LEMe1C3l9ocs8_C|PUp|Qkm{!nO(bJ}=X?d9pIkR5W*MSAJwZyBS6 z5JtnsT&)X(o-bpE^-ou!sOQ7=e&#yPfs zSdlM3MPW56HbS{OSjZein|u?L?|u=dHa-2EJ?0Uh-IuYrk|l|op>Sa+UlO|)6(G2` zuC_AR45auz_CM61$n=_AT{4wTP!vXu6SQHHqsRHawDk_+opW1wFYYpD?dZ5oOzCd> z4y?j?T5ZYg*jdVdE3KXtQ>K_FNw6xtF z7p*pi+umWo0APvMu((DgVRb9VroRXsP@00vDZc-Qth!9B$b4K|0N&M}4YKBcw#CD{ zt-P>Ebx$5rYYUw8k3zeQCn=mzrC}9fpzBAtVjVI{Y%JSKqJ!Leasp&X{U7LIWAHEq ztjLnnp=^4VV#s15ZW0ylpNeSDF@gWOt8_`*RVD4OT9n$LdVM!z)BX|v>umpqu0!s_ zf>WQULa@IQbIhBG)2k3A?S5ttZaW8T2FeeN5w=@Xp5MZntYarxjaE~RFV!z+V@>*Q z?t}b$SP8ldz5Yi4A6=>3QN=1*Ez=gQ#4F#-rY*(P+n{TJ-7wLM)+`5wlS+YQZTjD! zt`~>I7oBX#?Ee)HawhmQo$3NwZJo_`U_FryTZ!!L;uPmz|6$G*ZW~#BymoyVfE?fa zC;8m#4*&Zn0W+N+xmKE7iDo*DQ~oNSv4*G*60Mpyc;z7V zQN~zsf=N`a=!vksw!3KFiHB)p=j-5$F0aExr#1Ru|1*O0Y0md{;pD&fWmh`oNX?!N zrpjK0Ec*}k7W&Fx;o3U9aCC@;8(HgIf9%;!(B)p#c~Th1e;d?0%yr~H&$3A%!#_WN zyc89Ew-AtLqI`Bx{_j*eL%_0Y3n_0p?o^K2D_=+zDB`tO!b0lA^!ZWS{{RO=6 zIX73=0d-rnK=Z07WB(oQ=}eF;u&CFhzUOK8-R-__aiu2PM_*|8X9nb+%jj_k7S^6On&%J`Q$4MfEbOnvfA#Z{&Vg=#ued#+t?qxZx_8-qY3^mDC z8!EYNFIKPp6je=4@#=}X+HaHY@}l^bf0ds2a$$cv!yP^1=}BV^xT7U|T}fIfA82~- zEjKV4?b7jUCGnS|x{Q^+O_6oGJZw7B;ZKy*qG0_YBs9X*ZWqBG_Yu}-))t>Uu78ai zr^1ecLSVsC#l}>rEdc+rL6O;BYI&%?O2h*_vV->lku?a^9w;drOlzb?!3`PwieIxO zE^YO}wOuPh5<}wB+`BeQvR8C^F7%Wpv`f2T4H9z2L}KKtmH`>G4m{eD}`kjv^EWM1U2U7-qEN ze>q)}t-jBrb1q40Ng}X($tg63=Tacv0vDZ1)^cVNp{|9J#HvOZv_(~cVwzLA;rXwU zX!n7)HQZkMn+p{_uCxr!{4a#4l0M^xX3&Q*% zX|z&|rtjxA01_ws0OpEc9^*K2c)v0h9xBnCRiU9w$;D-rxlm5WIHgIc zz^%>V!kH^xI_f2`5{}Z(#dK63&8S3X82Y*0^~wubJUe}%z&&*Qu&pS~aCFbT*}?2o zWo3RJZKPApYO`+$BIMDS5L;O-sD*(S7ZBhb_H++ZTOTk2K86gZ3<;vxy$>x?VMtgo z61Ipe=iAo>f;TMJ(xmdV(U!KypAXPu>ZR2+zyB4YbXoqN#e`X+YPagj`HvtEUwXg0 zFH?m;F%)j3x!WaQh3`ec@}UC>fPmiZi%IaY^UUCgVa!&-G|eM+$9vg$X+o>zecMi< z1&z3Juv%7Vp5TDuDcP;9;}L5RAuh{e|2?$|)kft3+EJi@v4aZF%$M<;a%%%Nl;S>U zE-A96aF1zY%2qE|LqONYZ`xWykt1 z+!Zu6FBR=$ET&$Fv$5V7{x8Qo>#0kA)f_dNskbhFne&3HA7m&+$t^3|8?Zdyv1>JRXh8%yc>skIi^*v1N@>8EMhh z4UzCi_kEV?{VAnvN%@1rnPT1|q)FEiq1}Akd^9qe7t|_>Yzyog`-SwFgULQ34AS;Aj%vN|6=~-Z^epL#s>P)~Tx7SVOLmcyt34;YqiM%u|Nm)Hq^YNk zl(qGAt3<4#miK^733Uo(8XffXu<0MNgHdYEsZ?rTyzp~TKXR$=IG>e{LAzn~3+TrAwd?g55P<+>mQdz8I8fbVu)1F$F_22bzD zrugpncxtwZ7NDf52{NIyj+u#Io`}T{RnpKfVLfAEGDM}sZ4EzD{L?v5Vx-2q!0JgX zGqi`~+d#1|^nqTa7F|e=zo#D*qQMT+M~k9(X-yJn#*a-+-Mg6!_Z&c+$rBw?~d3%8{OBmHJNhgbUtu>poE0-4G_)P zI=KAxJy6N$?Z$rNn#3;e-Xk1F9bYAGID}WaXh%@YhOi2beb~y!VI}YE?R4ZM20c6g z-nzf}iO%k8($gqQ7^Q*(iw)E3c>hKq5UV&^HkE+qk^r>dw zxH}4?iw4x%!{`Wb;`XjI_30kTxKQ8BDF}F}by*5r`B%g_xuf*|p5{OlXhxzu{lXIV z<_@uE&P6xvuDe!$C}cc6lHK+naW@~hWEqq_PagbiF-FO{q^&H2{m!)~CD;q>Pe|Nu zPvi04fm#*6=@q?dp=+KLCI`RfCLEjN-tn1ECOtIkcYa-Qx)#3n=eTWLE!DD+JO#y~dYg{<~Jab6GUHW}zR}#+Ik$ zIOjd&mDsKDyK5-U*gEO}^Jd(qGnSg*pH=C8AmuSB(oG~M{huN;3oL8}_lAAxmS7>; zWl2yAdoq}MfZkgjy^*4gjty_|H^G%`Esj3gP4Yo5E!N%>T-A%nI~wStQ%rb%RIKNptS=0TAYI3v@!HQ3#VKWX z62^53$cx9`tqftkrWe7z{WbIV?v>sjt$O$F`2ODB?42HwmN-9~r)`#pD?3O_unJD~ zZBsOMt7^`6;4lNM=w?i|8z%La-3aT7?BBU_&@KxckFWQ5MTv*(V&MPYCvm3t>to{c z@bfxtVG9=ZbAxz2QomxP=6jVuIeqqSDSX-w@7^g2sZ*JH|8@TNZ13bQcZ;U`x9~!$1MgHy!AO%8Mhcv0K3vlpV_9XMz68TGt3{O*YaJW=EHAtuobajVXAo6 zJNaj&Qpu4TCux)#OVaa~>VyK(X!x;Oq1wHB8(*sH`cF2M?w|ZPzH`!8)Z<;2m_~4& z`KdZ+cdB;-xUwN4>9u%GiC{x`g_8R{jRh<2_dS^ml2^PAJt6gqIy4d3z2(IB?Xvf| zcKcBHqE=Dk=q73ny>>HxfW7_|nB;ll#*>12yScd0b8Ywbm~QQ`Tl+$6oAq@e;Z-X+ zT>ZDu)CB#niI$5x@13zJ`S@F}p6>8#xg(#z>*h6vJc-*v+PER|yg1dA3M^gA~qM^eA- zy8Ow*{6*gU-n1zW&Iow5<}NX&#vyPHYDu7f+beK;v)8!zt8M>IA7}wHekAxbhV=ng z+2C!?N7mALeO|cc8?AOqq8D{I!=AHmkFI8me>@4fIZr@`g}yr3m?ymYqCz3bs%caI z+TQs0!>Mbgl>6GC_!~HciNVShr^U0cHM4dthhbump_aZ!@uzU|4b$ak0Lc;{-XYb~ z&i&$dDJtXX0xPZE*ifjAQ<|O3rMUh25Gk`Nd4IPs&Bme=8%qCiTK9qPx-${ze6FF# zkxzEWJp9$;p$28^{3pf?W2qjWq+X~w?}Nz3@mw75n#!I!)izo{%3!L7v}Wz4aBSB(f3Vi;A`4FcGDJuI$8Zm?GbG} zt3wk_TenX8_G?obxv(L(`ldF|M&_6A)X}&@Viw#1>+ztBw2PC4AI`kvLj!upcG)C<#TS+_cw)R$TFgnMpTo4Dudu-V2qt^35J~kHyUFr` zO>x6vzLx<0P{g5~lb7pY02K%Hr(Zl}6Qs{1AN?Q+O)&RIaY*rs=~et%TcK)UjFKRC7xfo$yr(`0$|VxU7D7@Xp@WIQOpvcMTZhPypvo<8|t# z{xTKeA8w~8kfcZvI9s9oibADr=TFIJLJ7fIjB8cY7b7|tQ`ava2X#;iUb$3KZ@ihZ z2^v(C;=0!N@xx;E=C@*o{{qMOyAloAL2SRw$OznV4iU@Q{Jl*&Uat{wRXSYo%}UL{ z(=aODEZr}mT{tFU10&Odk;MzOHZq)D`SA#G27iQ!{z(|2`*> zgBE)g+FY!b6E1A}49=Xu&`2O!()pw-?} zL+M{hmpwa$s!oM*N{wOrUg-L8sd_yh$ZJ|) zAUQ}HI|5>IcBnM%qTs1yO_N{NG{Sfsi<-|-8xDq1eiYqS%}0lR{1Sh)5fY&1|B#|P zLQ-Us%kV-je-K^?F-G|eHoXT8FCl?~j%ls)ELlH<{c7cwZ%Biyo{qA%6bU%nICwCG zXK@-fXBgB!J)hublBaoUsdhrSs&-G3mggZUgxI9Tpuk##u0Wj|uJ-axanB93Ve-D%zE)?;`EjtV)WVc zqvx0H0IN4zGA?sSr@X_<@S&Phibx%Ng|YHuQEC~xF0XMzBv4cKUTgfx0xQ}y7*)JghF2>U6%>0wT4nkadLe3TMpYVs?@f@XM9S#}=Z$KGI z;NZHJX(zemTRv*?96)xol1J|`Zp_*)VrmxDK^4e(@*y(m;G#k3xag^I@2T(ji7r3k z9{LQzGx*yZu*OMKl@&14bkruA@WwS#=XOxO+L>`@x<_PMqh9s^?W3nbQ;`GzMS@^@(EFi2VxE-l0Ix? zwRe9Pa0ObMip(Ilu%Ob`MID_#03;i?TX;JB=<7e--8%tq*gmL6ZY{2tH!PTvR$>{( z_<;J4lv)RBX)>Z|=gxQ%lU2|($-E$k-er&Q)J$X((0@KixlhFhdc||y=tEqA+m3o4 zVPK)ZrF%`ziG9qh!Ih_rB{dr0ajw$Gn>{ zrstPzRm>!DYnu~pkXK{-@`%u*!p)opkgs}2fgrF@V#k+cz?hwF7o*Vrg*iXZEX)KMUP{Trxg)#T$_s0%X=pxddN4d%Zy86!3iK z!kov|_*uZVR2kkIjq-qbu%`usYiT}WZ;dIKr?Lrnw#d?zZP8K5X_&hH8Bk1;=%)e@ zgqu_#%MJDu2s0c`ms`B{t23QD@J&%)lI#<*9N0XsYc=?Zx5RtUT0WPv z7q=a%M>bpXW%CeTv(U;SNg`V-Tg&nn@DX6HhJJ>Z;=A8xJsBAaqON!iAvCt}FLin; zp;VXDvdrWIxwpL`zgU>Dm%l9%=kallfj6eo z^WQS&4d$Hyh75F{LdWSdHKBd7GDE36FGjsKM`_x{^}ofL)YeH%>#%KH*?cHyM9T|g zQ>1&YWdNk-U!`Nz%xrLJ$3RD9ElU`M?NUSH9l2;+v{(fz(&b$Oy7zjsZup$$U>21* z>Gse?{@uqc-4yO~g!37_Sem`>bws#t?gCBM3f#7mXCWc0QS(*3VViQlLH5QHy|^h0 ze{Z*=+T)Y=aoUPPH%xiY@o1E+rIQy}1HXE&Isw(fl394N8GUX|#gc!!kNfOA>Nk<% zN)M{dT9_tUMXPNmR>jI|O_#n2De#kXgs`tUS0Jc_-dApGb zo1{coE{-%icfK(Tyhm2-yv>L6-Ltl!)s#*<^xb$j6{w7r$6Sy(NZodKXHDlcfSizT zN#tlBv^A0|jEOL}hI#JA@cTSJiyf0;;g>FQh@jt@czKxFtS^zxEA*2|xHZh)?DxyA zR-d-ssP2(A2fc&@JGjZ-i^0Zh?v{SUb3~}q5A^nS1Fq2JkFojj2U*E>X@}m2 zmAGQgW!ezd2U%myifg;KTc#rZ+IF(}(V|bT@-{AeFa43iOdxJAK>!c%yf28wyTr5*6mg6mT>9L@h9w?pe6l?BQ$$_UzsM0;KyPlrzT(5N<-7NIXC&Gzo9O%tWc{iy zyKuFK);Ge)7MkIv6(*k2E#bkxcN zpLO1)+|*dltWLxYmmdo+4U8;|vndHXT7=N;AU_9PDETv8npjeLxbwKE#Owu;tW}a^ zzk&#F0L*BW+Aj8An5r-C-z!7#7Hy`K~XfBn7A*-BGbyLz#lL0gv)t#)Z<4`7|KEn#L4(Yggbk^fWDLk zO@K`#-b~+C5rykU8FUb22Zz7|NAR;468A)h=I))dldQ9DT9{j4hUTP7o+LAgX{V_tK*fcAJdBH7)3=CbIIR9WVwNByfSZ&%Mf8l!5zQybnD9<5|B6{#Ar)CQGqeZXC8W%7dh1G+-~{Y{${>@fMSSm+JXZdd*R)xFY}Ul|6#0SnJKaVp!>$MJ?-iII>o- zh|v?;tWm;2sWo@fGX;rZ5>9w+0y*3e(s}K6SDvAh#*fX%+NVx#T z2!Ek&3#)s?P@zq$m?Po7Loiv!*%e2HKcsBy)w?ORxqQN*wZtU(I_Y3i`T4zuM2`mQ z3nK|AZjLug`>#ENH}UhcLJF_lmPKFD`5rrtS&tGMQ<>u@<&k$aGlzJzBXi%3H`xn5 zo>*J$&}q2JbKY=~g)SlbzBl!_Rb*CRe88>}k^GW7-vSxW)5&#qm_wY(JLaH)ZBmoLApB#+?k%g^p;G%)!Z@GA$VRxg_a8vJXjZdjV?dHn5_(cAD%nm@e(E8 znf5P_WpyK(hxo?4BWf1w6qia)S|Z0TI)~V3bU4UdG&p=rn_CF{N<^#!HG}tFhKx23 zIgQ#5;6D%S@a#@W1^JVxi6EhgHCrUQO-+){&%mBwpvcl?%(se)Zkgx z5G$CsxUO6Z5U)Lg9IR`wry|(xH8!?fM@NisbIb+X0ZCFtoeewIhUiAAA%}c)Z1utB zyRBwC=t)_Hz$&7ZRQ@MF>$Pz(T>aQYxgiy^)YMZkYMZ#UBX7ehv=7D#Zozt`wSfZiWWV z`n&2#*p4+L%<4m5mJ3g(Jfz1&9#Z_{CX2qKrd4<|>FWfLaOX8+EXOW3|EYBCCka2` zD`inFII1&*{uUId?__Lf)@H)RH)^RZd+~|}IdVHsJ*mpnc+0{GBwqq8k07mH>%bK@ zY6Z30zN^Kakg#$x&^EAyJxRY%d0Xu)=ym9De}eH&exynydB+IulCLIEJ64jFdTVQR zyd_<33_*CGyxEHGmf#SdT$FH+!)x&+S{ub1vW3jl9K2G$&ooDk%^~laXExVeG~Uf{ zZvr!R*zql=5GaUSEE^Fd0Y^v5N_~&sY!^LzG{+NPNZGqY&>Iln^a8m~J?Nyf`WQ`aTw2a>ez$umE>!rCFP&IxODg)7l^~y|I zrMZK?C+zvhObK@KYj*6ya~Lq~VLrtXHGk`IqP9LpWpucqJ-X z>Tf6S^~Y5HkxuW|7*3eMcq@xn5y!-;O5!Y^T`BdL)|s^S$}$YIi0h6?-VOTujp|9b<}V@3w}l${#vQ^2&PmJ?C{WQ{|`@ z_j_1O3|(=+TP8~pH>QvmeQy)ZM13QHf*NfEuQt1Nq#IX1<;BJ? zJLhrxLfhNobyedU%M<69xnzot5KFUnP94O@;TIHAQs~wsP>4 zz03)D_dzKI?DPCKWA4ZM#aaBF8N3}+*D9ix#+Dea1v7zx!st9-T^+}f4`YLewC&9@ zL%t&_^bLNgnG0!maWU17?^oph*Bp<8D2~vt4E*u9dT9x*uXCNowq;F7drdi3UT&?w zoH!og^oPr;e_p%P^-8PnxsMV}H(h_6%)~nS)ZB&Hyg1m+byJNBM5-52i zeJ7fOH}w!?+Lgl>MZu3!%J*tVQ6}yTh1IpO}ntvuu#Pp!dY4H7frV| zqR%4NMoo~ZBij*)0f6Lla@?BSb|$+#`mAf7UJUzr$|5G&_b9n1L&H+u>#yTLex82p zL%&e#3A^apdY)3J6#gx$S`U(lQ&0j&dCw5E_r+wU`nt8@??bNDKYucG3jS0HoJ}e~ zc)f-#y|V2K=Yke`ogtb)?L6ce z>!=`hjO?m}tg3{nh3>i9RAd`&*EW2i9LYmg{`O;F7MPazRzQGUr9e&E9Y#=_kV`?@ z%L55kr4_z=D?+F_v!8T_L~XXO`8&z~$I^MYv)P7i{C#!WwW*-BcZ(u+?Y%dlwW%%k ztXj2qte^;LZzA@J+N-sLP*M#-)o86R@ArNGz>^$Day<8S-RF7!&dRsH>@crakunQl zjnoE#iwa89o%QsdKYRKM9$2?W5!vq0@6rhZI#~5}^;eQ}l&yGeZ*731q_OB!jZQ}o z1;P-VoPNf?2eX^tkN|J-#c4ywyv9IFTHx1T357g`5)KC`l9REUj`i^lF6i^k^53go zzoLs(xthsj=@|S+X=l35QjV%+^JZgP2W19=sO_=~R3{s@E{@Q_(=o%6yie@oZ>S#D z#0m{h(RCFJOm&PpQ=zyCo zlyYN4P7r%DP7$aYA6{|Q=%6K!s3FIL1sr*Flz39`GgqRb$HS%yjZ*DT4OxVIhcQIagi1z9kNi zHjU-THh=o5K!nJ`a$nf~`HuYG}7kzesCvBx0U5;(N2xXjhEV)C1cAHk?Nc&08 zkGHz8MkF_AMiM?D3L!!cZ+)ouioUPQo+~Wj@iJ?A%%e45Lp2z(%Wzw+$zREDHt`I9 zx7xzoOARt5IsYsso5NxKSw>N;(rRhCYn#3%8mXM~BKp)Z)XIs14=~Pol05G92~z9{ zDEhYNou%1cbOuE)aUyyMr*n9IRTJJLk==g60*&H5E}a_d69o7*ASzh?qH? zMB%gdw)Htw*(5lZy=L{Mkv8KJ#Q|9O6QHdylx}hAft;MH^8KDErC6z; z$a?~!HEveCq8npfaNR#s!49`F-)`N_5OIv#OUQ-Sh;nM6i|{&xV}pjnS}iHj5(V+u0F|u8aAZUdB#TVe z5d>S9B<}viyIx=Sd|@28?e&H59YKxXPtLjam66ZhC`Qyj5S~P0L~@is#yG9X(?oKb z;@z|0mxf=29^Pg6x7Ygae|lI|;0zFXQ2&L*(&Axe>+F&VLfBF3Z9+o}QG;w5s?FM- zmR*OGo?LF^YNa<`MO^4d63<$?mk2#>P%rf zP&T=tY7Uld7TD1je!wFd^KeudXs9|)I9TvxGbTWMY-+p?z!6F#)zgIYJcz0=~c3ovFjxCj9ax$@3hjLtS$&6kMRKG#j+O7~B?cMG~a;kWD5}r>n;}CcOH)dQ`EC1124lpeTp3QA9fFlS57XE^GAc~Wp`)Ny2 zxGso=`+jix{_2(~6Ajsx)Dai8P=XaOGQtLAoyQXH>$u=Tm7$(n0QN13zykyfxa-<7t$cpn(;sXc=gJ2$!lkM)`A3=pX zn&!5c_nPHKJV)Pm)B^R&zgIL_PH#k#`JX^UsvQ_g0@zDq~W z6IHsUh)@WisO_)Y6qV6`KWaExIA7$6_1dbb*u{I7JY^7cO)PA~WHQn<4cl1IFbHOQ zk;gYm@p()AQkeI;OB%d5-IDfkpJms9W#nRwRtH?$w)0OXla*tO@g64yJI=*ijaRD& zeGjqF2shE8eRtKW6{X2*C#?d=?WD zZ(xiw)1~~P9`-!v0u;+>eqJI%KX{{NnhCH)bu=`-9j0xe-{!wyL+|1J7UuD(mXw`X zaQ&fs=-#4a?4PDy0(?%3#=X&12cFPhQk$%+4tvKio$9osV88dK;jg>)1;*I;kz71= zX4cR{pH8oCU#%3d3wZ+)8S`lFm-hF`y#5mav3OC{=fhvHl*ME5zi$~E@0MWhm~m^b zHyu?^;0}Z(DInCHQ-E9>yf5EX`-l0jF?;6<#r4g(R%0C%~esCmTcmIVH zac#dpMlR&sUkD#Uf?^!sFQJ3=K{Cxe-_yWm14g<1eEN|AV^ z4c+)i`+VTqci=X4j1a^nkum;4*zb8|79J83Y_q=FW5J7|7~WXl>|F%cd~&Yd}z z@!$99(^*FJlF0wybCbaEx*u1JoxEe$Z_f`h;0wl&q&%T7e0~Evuzm?Uh1iEO3O@wC zh(<-=9n_DdgXX7ne%}wNY78{ay8LPs=&Eo*r(WWvQg88#*{M_U+W?;8(6gt;atZL(emhT6omjBAtEig_stiQfJ8vt zZ3ma}&c{3Mbi`-n~(j*M2$CIH*H}s2;>>&Zo1xm+1lJ zP5DMHf0Etu@P$@F{Yg*|%&^u0OEcVFAFfnA2y2>a-#tDcp z#)(3+LmStp6yEv9_Az?y`yWyZ1u>4j-CIXBLjwGIc=JSFPsfM-{*mc*jtl2p{`gAl zGqsa(f?s`vCg=&nV&34HXNbbK+qZ!{4#Ii0EtvZboN7acr?z!aigScdYr|yJYwlM_ zuAn=GxMQpt`*NPKP9XD9vA!3Hmz_R5ZE7nlBY8D@RSr9PMmwbxLJfDNGvF2YAyY=u zt{G*u`nJ+&nTJ{oxnbq`+cFH;{Fd)J>$@N%mp#R#KYKjnTWuO`M{^3X`k%?xlTOFb zkiA+)>U!&m)ywzZYi+xKgAkvV)Zaif5>NAC1)C+7ZV6b{(RO586Q@Ni%yQREa^UuY zKuZ0B=iRE^E;R*+iqkJia7|LjOWMx*L2!xhN&L~4q4onV)JIh;a2?rz-=f++a~~fS z&fp_po}%h+q-_|(+jS8PY?EiXyD(!Fn`}qR^eygg7&x?=H`G=VUM6*EX<+NLt$ty% zHc-bQtFv-e&N24|FjhoCiK9mj{8{dIvGX<*tuG~9bV)2g43E~$Rp}b=$77cdE}5M{tzlpOD$d`$5Knz)lVO)} zf8Ho?fg;e;xX>WJK-E_$oDI8exyLTVwC;rlSb=^+_m4HnnH=iF`AJ>`UxMH=~?mX@K6z?|1T6~StcMLs|j}VJsr%!1J05| zxFU7}WuQ55q_9-ZF@2Y_O=V<%_E6d3c?_UI8JX;~LAQX7K^qI~E|NmhuLeyiM7YRt z#yeZ6fzB5o|C9PCckEK@l;mg#V%Q&Zvt>2Ca<{1yiMd?&sK^2kcZeZ{$} zb<`b~eSu~~?&Lj;&*t^t;AcmPulM%PrcxGnhLv~)S;0A(_%uMtp(G;l^B$PC;r3tZ zY%_BcvvqgusF)UC@XWixD8PPu*t|@LJ(uEBtw)}croKnm!9!x1BVqx>X2(e(?{TNc z4r140EG*Lg?q6XCc5iO%w#ot6=<(bjr{NzVd;lGz&*;fHB|V>O@Vog`Xv5V#f!ruE zRg1isC)V5RR#-YowcDk8>`A;N^LppPf?+u)%5#}aP?w%1L|Tfuds3m{eTPFzlt)8G zZt1o~M&p%CdXcA-`_Xy7u3O3k=g7NQ2_jFM2&t*#4-@4BZ307&)FYWZu2sx-25pFz z`lhVg4X)BE3|uf(BNyRryz63k6~knC#6JL3c8Kw`nkM}%P1QMZCBHqX6dm{T29=W+ zvhr+Sr?Eoo#PF+fhgk0uw;FIozkG_gY|WMXNL%8Wj2&-iE$2xUkJpr0t?QWNMRqZ< zCH?s)et!v$(JkOb5zKR!M$kY9pype^Nm-LT;xEvoNPLh+xfVkP3lR#OhZPVrbFm48 ztv~yr(>tp@iK5%Fnb%&blHK3C>kK6G1ZikM4M_LT@5K*e8VerF>XXNe zF{Su|o8p_a=s`vtWZIX&3>qyri2d?WtxZ&Ph|!iW#A5-O*tYmlaFKi?YNwiinH5s;0-X%h}P1lvca-)#~d;?&~mGT``5f$32Ov z#aTS6jWeIuN2=4ZtbAcoBTG%nE0n;6{q3(JTJPAr#_?;?;&igBVri9SwpWwM4(dP_LR*MK$-{Fj4dAn_f7?gCi65aA)v|Hbk(-p7_ zWAPaEqpU&V=|g8c|8vEAr?o!0U*uUWDSHX){;jUzTlbw0PdNk`*1M`w_Z*6KIxN^+zGrm^^DDv#59xJU}C%aEXSjYf603AY0P3Vr$4oDz!I@u+AU2$yyk*ZG+}Wm!ztO=xkIrLZG;QAQPNnc~~0 zZ4>3r!Tm9KzGop>GzzR7Gtv6t;}`Sl6dq5G$`A1#*L3djb^?*iU`O`JWsT?c=B^y< zOUuo}iCQYllRXF>5LogzC1teA9AKZD)MJHs-OXF*u8DeRS9{= zmy?dm-+u`QQqCL~QNZDxPgZ#;6UN;8Vw?6u={-)BvSv7oy6EM>z z+(SlMlJwicLZZ1ZDa6?AB?q;m{pJVR7p(C^F61oA?1e?Xo)rd0vo9&0=gfy)tn=@m zCp_tk^$x4R@b;uQ^JE8(jWmi(CMabG7UFOmXC0{|@!P&*vST zNlW_95+x(L-%D#*TS83L7IpNex4er&Y_Gd(L(gXf#>X(tNmMAg!y_J)apWqvP`UX7 zAEAU5beAX2*qD4_k{msR)z;}Gf08Nk)$JVCch7;>@saq8tR#*X9#2l8931Vfv}5nm z86Z*v%}o{|^F5p2;c2j357DOHduP?^7e{iUH|_NEhw5r0xe`cB2EEEEN2&$1JX9K5 zUT|N^z^u}s(qWyJ;|Q3>7mp0qo}Yr}+~+z~@9r4x`tU|=4Jhim&+I-Vdo9`#ueV?_ zst8_B`+PXdQU6oSnv%LGhLN!~_oLdjauJWFtFX91CYo$#Gwv09(pIXBM$%X2-K%Yd ztIs}>anO(YaS1#8sS#A7-IHl8<%d)^SES&*l+@EKkzS*|Ul8l5h6zhtZ zq}mX)jXuWN0H+gIbG~(|f>qH{XK_mlzQR0;QRHs3O2>1E%J5qn6`!>DvAqb7DVJd1S$Se0UTSG7jYAcf=pXj#_uh zb&y%2b#jXVtH-Ky-ub{*yLQ6+#qdW=K!F_|O4h-m$e4Ry|K!y_x}kxGk1vER9=h%x zie+ReGZ!ez`##!9R^Fq2JQe;jfY~?@Wxmw&cJWyq<_ShuYHy>|iUfNsz8C8G-uF(~ z-a2Ua=R6lm#>MI*k>WpU_j7URPmMa}!yy+d?Wd0|IC8a&&`E{0Nl=+pd>)lf;svoEA?WEuz_sRFDjdoRo*dThVpU zD^b#iu1X15$29^kyXK2aQB#e0GS04DfbO}a911mrU{~H#rx_X|FzViLkhH-eAIx5gZ zngX!Dm$y)t@0$oQWz~0Se>^|c<`iOqwoEUTaqK&)qQ+>&FJVbmqGo)GI@tQe;X;Kk zO{WGo-M+vtxVM_xd&!I*{%K1=)6rt^@pU_dB5|$hIvw}v-=@Aeh&!HfM>WYYNjw-f zkV=~3#7S%SV^)i`sepZS&W?Oxz_L{mX* zypmm;2sQnIi7fjV4+-+CAFWRKk;F*9WPA2UCWhPPu{XbAnLwT0Y(v210w3HzXhwSH zdtX4ILZqrA{z&1vXSdAAn%7D4JMr@oV`^aNIDLk%3q*)>iLtP^5?Zu)}Oxb;jiBA-=4bN1v?aDo%UR} z0I#4?2MzbT+~Q|wFwbNR>3NOO?Tz&joz_g^GNIc(dVwnk0#-nddsj(kJ@uEUeBVlQ zE0ajW-~R-)pEw6U*)N(f%y;{KqtqgVXmkC86%4J|n>56zzCnuRpB+GbiAcwhrgS@O}%LI+%M0T8|!47D;9? zo*C(D@stn~^ZGY|)qb7C_MM0eN2R7M-4f_d4EI|-ZrVZmXA<)hQVH5+H--xnw2V0- zH_ugU#Jkdk#n**(+5cWbuK9f7+ZaLbFBE&XGJ<2)NPB-K5G2O6p+hPD?93dMr}qOW zE_=)8wXTE6t+{1b)EZ9T7SOzK_8fEJSHik8dgiCJ9N(q7cg0+h);0MMrs`xYH#jH1 z+aahk;2aIIfj*I{9bjQc`IfBKXe{-yOKLs&a^Fob@`>HIf-X?|ESXMc*<0y- zW-ZF$T&@5m&0(OVE_;d@r$@=lU8^S@ba+%?l4b48*|CQS8WrEEv_QC+#I{76;}?7A z7yc0)kaXp4HXur(i&(pq&uVOYDR${jv=H+7v4Isxk7HxW3aZmA=~ygeMk}sOj>D2o zKMj7Phqv|JJg?fo52>Ou&<+~eMhTt81O`NwM@d&v6{vmrZq)Y}Z?Ic+Twd4E6ZW4m z0v>K(OH&jGh&&K4dfA^;3-A=gc8r7XZJwlF-d z6EzYvHk(S|sfrBx_fqzJ)R4(;lJ$bTu+Cr z*fEXIXKRb>Qd$UCv0re;zMPXOMC;^Ofy%f(Nr_}+h1v_g#NDI1*Q?NwAM7FY9Gz_< z7D7GO&N@n$n6G*bK`JAjAcDTqsdbVy@=uQTi>>a~GL_kduiw!P@~bzwUq7qr{)KZ> zaJm%aeG*VZX=*fjHpej%lx2&oV{DQ_9#`ydXY6k!jd`sY*c|ONb_Rf%g$l&&I9wtn zbu_I7_&xDN;3g)h?%E{_3h7YT72uZgLr7uXYMUhfcP`MC_u0mhjCktCVs=Yx?+@x4 za*rr=<1MOh$OqY--gok1F>3;dilvR$3buS>s$%=Pqg*?fKJZaSA*|3wUgI$&t2Z4)kb?FZcl7GlC1EsS6SG&h;OyX?oM{q}6Zs)q90BHzYgOu;25PB#*ugsB9gGUY|C$LC=Xar z*cJ83C(-VY4F2X}@1F7Yg8%?(5LQ66G}NBBrq1XD1uTrjA)@ZJ`Q;0t8uC&KT85r` z-v_@6o$P$32{q)|03YpEu^qG?6n~>3lhjp1r-a_ThlJ7Ha?BZy$AtItb?Jm7O2AwT z;F%Jis6QV*zqf^oriNel^Z5L6+w8J~OW((gCN>YMBH}uHcS#<-=>k0opYaaK<4=!& zoGx|IW6f3gJW5^RCiocA4lFQ%mk}MnlKKIvE_mQ={!U86Osy-o+<^iwvEUbvFa! zyRM5%O|SH^hnCUbRswUotqJ7$xE1xa6KWN+W_LuM-6QUI0Xr48|Cp@HIi2n4- z3>E zLx;w>HsgpUT7#|64%c!hqniK|AL}L6;wPCZHW&BAt{-ON`$t-dzMV8j?Q%6q4#InY zilgRIe+TDYD3_C*&-uJ0w-LC%R1J7!pAe>=P(FRLOci|FWl{m;26uC38%n;!3Zr@g z3uzORslOX1$dr9YG z2)2d#3BM)FiJ*7usH5I6id~|NTGA$e^Hnug6j#xB+O5?DDU!Z7;}d#7wPPnFaSkC$ zzF`G#{8JD!04Ai83C7-&N%v49=z@(<=)+yLO27P3!j+Md^m&5~5H~ie3Vf_sUE9L9 zs)I0Kr|YQk_}f%NwXa8)3KF|qSI!Zojq9DDbF5|w+rq<;JfPm+UKk$R8Ygj>&irY3emB8gddZ`SB9+0y7t*^qSIv*}r@x6GtDCj)6mZf2a? zOdXGo!<0+$o}Qi&Yw^@>+vYJl`IsYlM21H45Co#9iwLUAQ#FEi1--&H3p7?+bG9vJQ@RF2{&3P_2{v z{cUi@k@;?R$FW?caIH7y=De>DRJlBMX2}3>obQW{hh6*Cll#`7_`18BM8}RpwPr|J z0&uIHWHtHb0=6#+9~ttF z5@*E~PVNh=3|&kIrHq;jz0h-8rK-s(VlGMdwooaNAKDXUTC1?-L^ zYtw`?z=WsB&di{&AL9Bgc;I9Uiwu=oD=f86PV=ZCksZ_MMhu7iJFDmvmEmz``$wdF z-CEo9*Q0MsKG6Na7+!5sIE0EHtZKPVMI$B>Fqw-P{STJ=TNlaC!2J zTyYEn6QIWjPR*bHMT4JAzW>|)6LDWA@i}wq(l^!1#ipq;>bA zZgw`rF~JKnWqvGiCt*EsCqg1mYBjZYd8j{#MA0It+t|K=J8{9pL=_}XE{0Vl@ zOxYtY;t=}FOu$}2L2n`QTI`Z!t#kUMNd$YDyZNYoZs<^A_7U5KED7yxJ)>e$WtOyn zd?{C6Q>W}hK4v|w=>;b+^3aWSR`Or7sNhYos&k5W@|}4u>GP9_kUR$utAd-aVQUmz zEOOZJ8k`M^NuOb1bDd7?CB?hJ6Hpv;Ckf^ruBg%~b|B>ZyNnaf3uLHkM&L6V=Brez9$Jv1EruAfjN1)=Q zEE{Ry`45ZfQ2wqwxal!)3DNiS6g|4+LapDTD)GQ4vcTy3V)J*9`NGBKy6o?}U(h4@ z`KiF;oL^$HwW(^1w~nXvbABFzK-J2ufr7<2b3JRu?r9vZ%{_Fwo6T--?myxXMWBUR zM=Hlt(0$BppE+!g4BwsfNh%e*pLey(a>d5;XTM zbBr@~qVY*A-Q<9)Y}L@Gv_*a~>4znMrmTuv(k>cEZG~uSM*oGFauHe5#0SKayQdhk zFXE!BAvmV$OmVmW;p|1LwC>q}Sa=rZi- zk2{R57n8>=E+Vm%K2AHH+(P+q(6U@ab%P9W{u?xc+x4$p7MPXxiR9@9!KuSI3v+e8#6klkef|~1Tpqva<+L}L>7NF*s4oQ9DDq7I?z{IWTAbKH^BGjP&UryWql9bQuvug+GFV)zhh(J zAB9_^GoJu!su6|s?BJcG$3vS>Z|Xe1(1%r!kFzCf&A;uHl>Kobar0{8-d_FTjTqCl zqakjbqS)>M8vkFvs|E*yJ*!S;zjRaR?QuT+5T|t7{jYSF8Xpr`#*H<5=9` z#i4Tnd8S8c*^hXfnfunD5cD{{NfGoZr?>O6}LUL(w#p1K0J)6W&YA=pi52ur$Ilif>Lx795213NH zwtCTkKqHg^Qn=V-t)9Dwxs&~@&kg=ydaI)>Q z0LfE$+dowCohMI@D7$B?D}*66DFkjjHe%i`%EQqpYQe5 z8#yBUrR(zb`Dx$TXTrU*{_9`NMJLMHpyeLK(b!BtH4~RQ8w*pwo>aoCzZQS zF2ZY&k)YJ20`BRXJ-kF1oj3ZMbo1&|=yq*~Muhl3Ak>x%zFLb8@G6Y1c|iU*kZvPx z;FwiLt(kGYXZ9xbQ55kCTwTKBq?nvs-1}aU$0Ut~!sbJ1=9j;1m-8v{0MFwPRkI6% zkNAfNrg05s{?}01@0sH}^UY&QSBY`{=E`aq*~xk9L*hz4YSXl8>>0x#fQi~*IsR=| z5=8S?{Qvn>TQ)*0`{5QRMrlWX{;Qjd;fm4zkP;6AfOY$4M$-(2IBwo;2R=1LK1x5@ zW4gWlld*>fsZpS}O^Sa?%uQ}SnmT>|zLHTp5E(lDX8^l%Wd6hAKd{=)>;Ia=@QrTm zbL<6y7AR?Enul2K-A~6iAxUh1+h(8S{jqHg@7khg5a+sm4BoXlS$mEe>bsNNGXGo` zG>yFNq)%dUS76^uJUQSayi&gxhXTC9r+LRS1O%?mzm~{}Ctu`}Y+Fp@6CQVv_|=89V5BE-p*5RmBCz-TecP3H=*5Xmi9Zu^@ZzucZt7M(9wXpT zEIw+Q+$DC@;ca#hrb{L*6(})t7XCv-FAnFlM&2HAcX#`_WxzFAwf|U(HZi8CKuV5< z{IBZrCENMmzSIpVmV6&FIg#s#aHroLBOe?lV}^wXM7C8M$Ty`twDan)vl1s$U0w0- z87|!~SI`$c&u3}onXbe=-q4Ty=seO6%D=OG{&H#ux@UDSf3u(+itELRrmw9=-En^%9_$hdFiJ2)49-F1CE34%Px)Grv@VT?Pu(b< z27T@Gpehn@ZL+dB$dbPL*2SQsVR+}*WJTzv#y2|J_D0^SlnW>6Q?56TD8!Q`iS)|_3W#-;zpa{)2pWY%9!s;AQ6Tcjsd0ad)M7DF6b{r&IF?AtD> zOO)9p+wzR+%hpR1-F6-$CYfsGA13T(&tLg z7mTMh=0> z+`oVRI>+>JeP!Zl^8R!k+Fk>U&;-P{%1MQ{TLJ5b53YCfTSe!%Ey9^jU3EkvFh|5p zWycWbozH3aoTgjc!=wTqShR$n-hoUp?W+IF&+LC8|9>xp5IuS+Hv~SF=%r}_FIj`9 zJJ%L!e^MOK`jqkT#W+cq?JocGFnQBw6a)>cfQw8qk18VEIJL;VnFbRcK`cJNB74I3Vp#t@N9=?gztW2&&h)R1FHx!jz`M!7 z{qp&(ghO=EyPeqT*%p~=`%14-UoUGj{=^Z0y1?8xcbs4gM8#@i6Sa&NWrKw0K%Ym{!&aC&!CNGaZW8AXgo z7RUEG_+_`l?RoM3&2>F@>CO2Rc*Cs3hG^!cWZ__+FC9x7^>BE~nfkv%7IJs)F?Q|A zSEa)OR@CY=UvZo zKPWtQ-`xw~_j*-0ER(lWA?P(XwFzOIG1Vr&=;ZuCDef1O7(ep!bJM#;`=AYfz*9cO zBBmYWJbd%-RzSWd*_#j`eAwrDjiUcn+IzU32a^lmLEl|DJ=|NVHE?OXjXL!Ty=fn( z?wDflO>+;0X@=Gs93yuRI_+4vWIlCw~X94>#|IgGcjSk%;c!yQ+bCkt z2p%8yF8AU;+%DScokc3A+pY{Ng`pZGa9E<^Zw`AFPHddlnvGUja7eqinAlm!jqF!X z#k)K28w&gxia$j)|LdW|GrPk88eMP-!r!I$MFzL5EVsv_6pS(Y))4Qlx8$FnxzzDd;2C&;FMO0aXbPJKXzcb+Cu`R+Vs z+HlfX&*3rA4n&VzGJ*kF4Ce{dnrv2<>XcdYZ*?>5>e_*<0{(>Y=l>9v?0Qs=dz)1R z%D=1iF|luW_UWZMYs(u4;3r|X)M&21IwhZ)EMUveN&LAJ>7XMY7x%n}Z3QdJ2P_f8 zP2BP?AV6o~b!u9yYe}~N2N_Rdj$Zvdi?U1a%!m8GO5?Hk@D`1irfJacU_br#_=^r zUE}8ZsDMHm9{=yI#k}5WVYy%OYh~ySxNFmSQmU!1%mXaZ9&Tyu0?yByQg$?U1I^#L zZHZekQf(-F`5Uf(?zOFpj1m1ly($i@Hvnn-xaA!?h*4nq@EB5I+CV(0U@2ancR8h3 z%eMr@Exgnhl7*DDIHOA054ZfNv@_8?I3~wqr2irGy-_E|IF`;R5)*^`{eI++cck5! zyVW+w^qkrD`!R1m^`>4w= zVxkqef{(A=R<~o=M=azyN=Fh0-X$uf@Wog4={ z9ve$0Q$zdyV z%Co5>uB1Q0{Qqnf`+pPI(T?8gKpS^#{exr7JlT-}oK>HOXw5htjEGx9BpV8imCA|d z!%~LN{EWBd@YV7kMW9c3QV3%_64{M*M6-7w9y>+6$L)rxVy_ zX&(moKI+Qh#u!|63wjy*d+XD}tDVo(gmxdN^;fqhsMvR>Q5H6R z{N9FVUh>(2eeM6$*IKD?DJN)F_jgtI<2whn(RKXPKZsn8V-JDYeHUYN80%P}A5NZO zRAyh$tC5pdL~@AK{B6Ni{cBSm=u3`iCz)%@J-pCMr&n1%Si>$_F=%DJ9h$KXZ(V*J zu)*$qA5Ch!<=LKCqp$;O1#h|RFej%oF?0Dz#O=3e>W?hs?YG@bD2FjA8cejsK<(JXc=hzlAsj+ zhGdi+dh<)HeuS1w%^xI{`AYr3L}J5`V`H8PB+4<3Po9y}(G?>L}6&!(@}gUZ6eHahbenU@4LG6=tMz9f9FSywELOklA60+ z)q_FVJF&cteY@)R)-z=@_Aw$JWDt0Uy_w>LE$^o+B-qA-D{Y?7g+X8KbJ`)t;4n?o) znm@#L^8+iEc%uSVAOKuxl&<@uQL4i%iul&c)*stZ@Ii*)*kwTv^~7?WApBnJ0)jb3 zyWu(LJ9g%_s^7EKLobBfkFAB{JM2?x5Xl|3#LCUQ?AEVZW!EgcxldFqw(5Xj4O$vv zz#PYP9@(u(&GD*|TzI~fPy z-ydOzW5k$uv&q+!!dnypp3F^(8sV55;K@VF^iT(|?PO_z>^gD*o_L0U!zyrpuOY(v zaZFffgWyTP0^SdwKs7HJaN{P%&tFNf z@vnm|)Q!^+s^3ZF(efF$5%8J;y7=IBC<`tq49(!NRn#V<2N)^piqfx;oL1XKZgw}(9a(c3ZBc{%{LpWIO>CRSI{Arfwbm{ZwVEWvxTzvh z)PorWg@j0or%)3nP_2M6AN@}5OOrXv*o##`*?8gF1WI4ZC_Ey9McKD4DV;Bh%4N-b zFK2|3FU!vZ_lQ&L@TY_vw^pyrYXldKdO(7Ea+hxgJUClysP9KJXw;WVL_v}@Y$6L@ z)2%6j=O`W8YD}y!SZy`9#JI8!sat%s!pkict7Y>m(_h1D#A^29)8upRu zF82K&p3XX|t?YaIGqki=p#(41;_gm?V#TGn1Pks2cLr~8cPUzm2PiH@0u(J!+=DwQ zg#>>y)9>$HEBup{+?;zk_uRAhv-k7qK)1$!9^3RvFgCL5C?DvNPaq+RXVfuQe$`p4 z6*zD$jdT-!ZjZPE-*FHBOy4=P-`T5c@RcY3&9uMy36U}4#zS`inMwy_ei8ZjG)CmT zf+QO8@}n6hwm8!>xl8QsWKyb zar_yuB3CD3)OU2ZJJq_US(}>$V&p*46X#wj#ZHXFWqn6F?*w@ls(Z%W=;pWt$_$11 z$`C;XTi3R?mzy0|RmA$9Q5|>Ps$ipCU)~SHTUbXV*fqWPXj3q>9Y>R|iPeH;s`2ij zNR>yY7!UrnD;2YE@71|(UI*{Ub%0Rr@6ry_Nffuzt$lu5(3`?lGLgCa?sKwbFPz$$ z-+eC!S?l)Iyz;hsiCxCqSlnCYpsM{!e@*7laB*+u{HPW#@Z@HM%u@(4j_i*b>OlJv>i8wF}q?=xjW zOP1j7AZWAvkxD)}hn`5D_jx#59^+*L+d0%_%PFm$+$O`)83Yz$&1XD`vfqkk@R*ZG zDG_Xr?-{UnrY_q!RC08c`KAo%FL&2#Ch7xmW9!Abe0x~apP@M&1!OYx7{e`B`{%(p z)bd;i0-`7R9@yn}UTWuId<%2MZo*5!;l3}?Ern_g_TyOSwhbMbjS3}1w~l8$W+PJ-zki{({&ZuigM(1mWH*$ql-`5o?ILGqyi z*h+3v_8Dmy%w9&RE*f$6;~>BnWurioG?9%#k`V1A)gNh^*m5bUaKPva{A+it2&Tte zZt3l^XsLLwRuNd5M1%@9k?!}U3~k~(XSBfF2BK@eH4K#vNf}mZb?EC>bpZZw?%W6E z(Eo1geUZM|R-yDuK#EEla(`<;R_w-L`FqXc?MF|dyH$aayo^ceAAy;*g9@q%Xw0ow zZB1ubyhoNt{2Dc~5$AcKQWB(p+&-bJW4Oe}oDAekx3 z)rQ)}4^AT~s9J^2moh%kxht@VKH#!~*?9NoELd?Z$kJ6NBno1lM(PR;3HP->HIuME zFXuuSsmR1&IXkg}j>cfM*xmENjFG2yX?fI{`rXor?2 zW3qgGZPQKsbeksw1}qTa!yt{q?La=*ynSSUi1Oj}Q6W8)EAks*%N&I;li%v( zdRvh1(v_QaUq=Ztgc*u-Bu0Gt%JN_Sb;II+;U^6PbM&;3%a0U(f`f7%rqTiIS?1MK zBQ;R^G>U5+x<~P#9$HU`<2dcW2P|c;@sOxlr%<8V^|6YQZTR-aC1<}3eq+fMU^Q0YN3*=Gx%gC3D`C!gV&#qlprSp?Eu)0V5 zc0v)J=Dg)FI)q65=Ilv>>Amk;_M!fGs1d)Ghg|^Dpm-i=x=~=K$a6-i&>m!hs!L%# zCBwXW_)@6rFC$R3w9l@HdnKlcz z%ymEQ3QXRl)63qPFnNSFH@B)!o1`}Mp5c`+3#uD1(T}=SslW2oE;Z;F27l!_xU!nf zqC!`%m**j6rOL$#0k;R;dD{lNOAh8V?QJy(uR(8`CQ|?D`+^!bLqn>xSLhZGs?>_x zfP{S^Ny29eM1y){z8bo%+5vII%J5RIJOycODVrJQzpad?iaXM4Px*X`a0~aF={q`I z%M`)mSLdcqD=XVn5_AGKdGh>yO9De0N~bGD*Dk_HbVtI9clbuvPy@b86P;bNJ_7=1 z3U5}l$Ww^(!udva>a?-px#eqpA6NL&3#P$ zrzLnMOVdP5&v0KHcwb~rCVARoUfq95*mB*~qE>kbQ$n~D*T*@oItA^*OAj{K(v7Nz z{)w&WX#uk%FTkk9KjC0u?Ei&>=1aX^Ol*~$mbXsNTa3RDtpGFJZIg8-I5YZm4>`01 zElS*&Uvy8fy?y*#PVoO5Y7WoT3EG1i%fepItaUR=LIRNE`9Vs_>@GH)4Ga=Vq zuTkvurbz`Qc(b;M)K=O|&_2SAmApdtU1y4Jwte$v7Pu-D9Bj=x{leJP{31{E@aYs4 z*%sa?)2`$e=vBJA%yEHKJWf`pPZ_A%Ka#AtyYHWElpC6oski%)Uukrrsqf_D<;A^p zsCVInn5Y>Yu^rgaWceiLFBoS5X3P#A|4G&zHP+uNtK@e zJ&b+AOtPxIQ#~I>OV1lYze=UAX7*D?Vw8#D$}q*nW~o5@nSqZ@j8vBTY-xv?Ui%Ec zB_tu@-IjWCJL0Wkd!|Y_F2k``)Q(c>R{03DOX)A6@)xg4WkBH* zz+ayw_4prpB;@Ld8L;HNUWMY-@J?i+lcem-mrA(Ip7`$bWu8B!g89vB`WtiF7EI=by^Tv~DXwY*Ta_V!@PYRvkbE-zSnp=`9m>VAB$-Kc)^K>uOa zw6QP-BZ^i;UX!TtWb}Bw#BEI-4hJkh+EC98Gz)zg9lvM``d`*^^#5lqtz{#~Tmf`c2!hQc?pOK{)HWQnRASNH| zcEto19$wsf=GCTe(`s(5su+%Py9q6Rg2@Jq#HRYxccQG&DpENLq8rOT)Q=DDs=~+m zs?V8;!b!k!CSpUjVWrEdmE+CfuGXQe(18YnE$7_LyvAMiPwuDarrboVxuE)lIM>b+ zWz~67?Jz{6>k&?!JO(=`K9#{5(s!7{!AqzwK4;*dd?##~WQ;*=gr9#Tjvdw)D+UVy z$5^XGSq5Q(+v7A4{Di(D$3*_RjQ zc)OCRZI**?4_ppep}jh-la^~t3>j?Uj`omPg4d82-Z?bEs$vV&xYfkZXmhN&YSa1z zu?b~gWW~j1*bX*M@HD!|>PZY*rB>LsYVV*Snkj;|_9c8n4Pzyxxuq53TeA)Jfwb29 z@26P}@}6TtGN(i|i6U4Bqr@Xs*LBU5!!{m%mT?~SM1|CNjGH376s8HC zs(yYYQ4$WJeEUm78BLDkot}t8XF_*Gcr-$KEVFGxZ8<$wf1orqwp^@MmHuMnye)Tw z>_!!C2@B^4N&bi&HRRz0Un81g@0(7DA>5t6#iDY)CA6pXDfl^0u*GLcEU%_7)J;@sp*!m90AyNw$3b;~(G? zZ`MC)`3S6fj19Z+0hO11tE_nsCYsdqw33bnC=JP4EJL~Gzx>Turu(Wcw~rNP@v7ev zYUy#OvO5tO+#G)>Sq4AnAqnCeYRaV#g3WQw^b>$71L&nfTo218WTPxIN?T&?y5B|q zSpJ=2zw4S`iUv#7p{?^8{_O_F}e=(eJ%Z}2{3+)d|D0g zWrbG}nGIAU6RBHj&EH=5U|fanVC7haQv2y)hjLbaV{VTwRDCWLgJWwvLajCjlv19z zob5%H55zOTeqj%a3tJT#{g@uVU7IXF7iOZ!ImZx(95xJWL}d^3=n#bHngsUBsWp{f zh*W~Fi;Hz-cdxibU7;oKj)m7VB00e98*54X$itL2~$HGlODL=>5uR(!^~6( z_KepYB(_pKcYL8&S?8r416QGL80!SXA*~OI zI87pEE!wD->^?J30<+<<{LN$ded<#Mw23i@89^WpdE`FXC~S^*^&7|)C(3?96UTbB zRf+htpXy?^E^auPeA?^1>oa-apx)Z|+9s`+S!{@)yl;<76gZ#kqA*-Ks5D-^Wx1P- z28KzRUb#t~Y@D@6iz`uf9R7G#OIW3oFzO8mX=XfSiF%?5hVND6-r^dx8}?AM4b8X5 zYIC}VdR><7q-S@d1yAEa2=e@Wu|?K>PTPx!!O`aUvoQwAWa^cAei3e5+J0(WAO~BX ziy;{o@7=hNlO|(7S)hblq@?_5vuqB$>E;=fR5?_Uh zCLAnX6xVRLd`?9Lh(R9JKc9z8b3M2mRJxc{3!2nsV?R`XKOfP|dQwM7iFS`>$wHu{r624kLV)BYw`HUCVmvHelyL3jd<&{GS5z$ zG#)Dy)v#~gVqAx+DPO(2TXpm;mQSE)DfnHqgLB2L3KMVjkNG5%DE%wcI+S4 zzaa@5O$n|(m~iXQ4Ywg1YIXq|k-hHF{6#${0wZd}sPZulAc|5D>|*-Kz_iY6)_~6LyyOS?T@dK6YWkTGv)`yBnP8-0vq0WK!6Dd_2DQ z$t2OwIE^o;bJx&K7N^S~XfY8}g?Axo-n`Vqdh_!2JA*fgNv!FqmF*ospF(5-c&N2S zqvuQ^;55roetWIWhe?R>-I!D`{dXSrj97*O!SP=^QOL1Lzrs&7^NEQ8iHB_#EN0R> z{wt5i4{iK2m)BEgl7xd5Qf)N%HRI=BRiPq!4`+F_mSW5@%}9!S)qoEHc9iU58h+I8 zck^O{Lo3f*S;noG*y5f#k+ZvB5EStR-&O8S`~JxL>{IpVnvT@^aws5?X@9C0(pYi& z(3X}~JHpo!@@>Q<_LRC7@?4T)(Yz}lL`8pEFRV5kNfZsW7d~4f|FItIpJ?|tJ;M|p zcyKxqJc8mGxDUQ8#jl?%kSp= z(D+N+;4`0)LS%*c<~R>t{}=&B`yL_bs)p>#@BC5@hnC^<4`Zm4DjU%W9=w?$V#dGI zzO0`*p08A4!OAq4UParjyQbd;9o~{L8A1A{hc`@@2EP=!rDy->`^)f#jG48;P!=PY z=Fp!*slo6_1(e@R@%9UK!Uvfl!&(dSD2uGUNO|PjzT#Ulj98Z_i-Lbh(lmJ*f|ohm z!L)B5*^0^r28$0?XQfCvoepos6=j-KJyyKb?o7Q9E_wb(H|7-F^g2FgBm$p>&|{lVSAd*;#{IjJNT~Z51xqzd;75OaEU>pY zfaba^<}~xn(#nPoUBzs_MG$g$^Y5|#eO*-c{qF;xzjNH*NQdRh3txzRu#GGjeRTu( zyC%i?cXUyH`G1BNOl{FS-l_ic6eh_1`MjL7;#nf^e@E(MG4PzE@6nmMf2&twFz|72 zmQToR=PnR$5LZ$oWP&-^^+j904`rWV_>lko z<9^%kxDcH)DmnC~e}nudLn>78Yd@0GwAmtl^s%(6fvg8J>_jOMIH1m4ff zPSkb5E+7t6d(FXyWvwj6@wSp?O zL~*1@!QNV7xNV)W@4OCiu;h1mwkja*0B^`Lp00B3vn}ARACIfy=k}6$-4F6uOMJ+` z^OStIEbPCD+VMPSrEZF1ji0f$3S$UPb^ZJK?fIn!zM&AK5KC+qo&2jw=P!ZYyIhUU z)e|-rK~#G7$8)Sg3IH*Gy}y53$!{Jr<7Z3|WN6r*0)3%%SbugSS9nFe2YNzd`@I+jnbbm$DkIS{h4n$b+qS+P6V7ulBA>txqgKn@ zRu*klN!T4*Y46{w1DtFMWD6AW-(ZssXJ;Fr*{ve5J!`b(2uNxDt{V1P^{L*z&>E?R zl%5s~hp<|nMzz_od!KnO7gS#}<8kv^N6JTc4dw%Z`Gy}d6G|1mOxRlB_q_w}9o+lR zq_uK;a41g~{=NtOdl{qrUi~}C>RR?s+X|0ur&%5OESg^jhDSmFv5@{-4yAGaTJP3&`V7Zu7ReTz`H^aZfL3`F1 zOWhtlQgTF(#p?v7Y^ueq^4?ySK_;-qtBAq6SwiCqfN_3krYC}WzwtcIt=1<Z?f4^#0_)j19>cB~9_;-VTzq-iYBTyVgtg%@CjRR%Nl6+1zax`$+CPTy8>BlqL zLyV!wexWibkITD&BU`(p+0JkAik6K62FwgGc7Fpopax=8e4K%m%jn#+0ViI=!xgIA z6}3l@=oR*2WTTt|k)e3+K?WmKUBAPz)E~c(*$n=IU3&)p`f^kLH^+Q*FoB2rnAnOQ ztB_8{E{|~EZ3Q6oq&&V3pdarOwC-d*=T)^vL}BST*DJdj=$G9jviTlS+wdSk-o8FB zIF_0Yep2gxNpQA(es?U<;w_(eM;BTbqN{gy_TFoi!{x}+S^UF7p%Cpd3Fpdp z<-oEWU-1u$^ngeVcB`1tc8H4DkYV~}H5XXcfP~oe=M6gC=Uq|z|s3=)u(L5jLyEX4~{rTP=G?_wJt&^5{e~j%Wz!Qyx&xdz< zww4>WG8-*WIohqy6EfxZJ11}b^BvK~dTx;ix>nr26(z%o20~m-p06KZL{pNYFB#+J zS6D{tOJm>>{rs7h!mYmcv=RyE3tzU#J6BUGLacH16#+x|_w5;7^D@B;jD zm1tsf#*?^5P%V&=zv=xA88?UMSk4<-HENYW3mK~sW+JWXi+kpX~GR~(!)GG zDyJ>+AZ!Cpa!TG7-JEJV2W~H+`h>vh_DxEvdbpCYIx(X*#D#}U6EorpLAvYgjQ9s! zk{T+3r7zSEF$lI^=N;T-)%z}^v5?N2wVnnFu{`Omx^%s7R(r{6A?V7PEJwJ7402F0 zy%&4APaGt|@XrX7M%d&Saj>niZ<0t{!jIOZ{fvDyZCq$5fNe;PKPFKpiW71kwDaga zz$=tXdRnFycv5rpjP)`di{mHjTBCEIwMt;+zH5}UUPqn&q_Ebew2}E9mf@}~6Uvy= z-l7;npX|?8NAU0ZgWhp$k`S*_0FCgl*D^!rjXjaCN0-{023nL7rtCtcc56~iOXbM* zan6n~6kbUys-+~6Wcze5k!>lZZnp6C*GBa#ADkCBZ)(ZGg=F4`X};>LqCOoYU8W1y zg~%Jie7Kt#yY(=yn9z*$0h3(#iGjcL*Z0ONvzQaZ7{XprEln4CKV|7(HJ|kdkppyb zj=U1kw6xsq7^fVRD%k=+DU0R({0=Hrb(5`Vj`$UUXH+` z#CjEY`ktXPFXF2S;hRdHv;xk7+*+MeJPWTmyPFu-AbnX@DG@EbeyMPE5L8ge;0;I2 z2!_%;RvDs34eBM`v!f4^c@=1G{BLw$P%2XAu~G($wLkK6lP8D*I z{41zUSv+t{4An>t>sjOq{^@-8q51rMKV9Ne(gR`wT}oHEXOv~%f^y+M>7UYeN&Td` z5#13(8Ci?u**O7le4HrHW!QD8|zA+$DSSP_4(qCCIlB$U;R6JK-f|ad5jSZRfVCuC= z-3kznYAFP5hX2{7`1#4p`-n35nmse{L{=*+vjgYxr3Tf2ak#3Y5}eO4=Q*f^pxgvV0Wr74W+bXs zqNb61#iv}4c9pN>t0ux{_Ke}|gXe)w?>;Af6i(j`Q|%iNKzLUNz7>Kc2AgXi7m?2^ zn%7Xn&bEFIoonTb4{o+7K@fz1FVb#KRiKZVg74Y%cQ$Ru8Tv|-9t!B2_Fq38)QwrD zgSC(Fb*}89K5P%Cz6L1Nz~;qZa5E(EIGsTQBbq;1dT!r(cFk5C)mmhc@>C20)ksGP zOiOx;(N#eKB39J3Og|^TI=V9Ae0kvec)HqCd^~q~!7y0XFK+^m&#GRwl28Y8f3MG2 zDPz~a-7&-saVeE`E=a@A)WLoJ3fpt#TN<>r&fTdrGPP1-E$4vap%N#K`%`lgi7tIC z11S^wk*8qq6icM~fsXsI3hf%qU{Ly^dt8~ynVf?ZuoVQJ{JP&=iE~V&INdVY3@#)! zs8E9rNY4(~rt62RMVL|fjc&KHYB|LVW}rl6CrLy$-h*vJ!(xf{Sq9%{ZjJi3p4|V; zZ~|Ozzj-~JN}o`_+I%igRUpp9xhBYXrMp+|l#r-OBj+>yjnW&hrQ|6W1>$UR%?Zy8 zHi-LEX(zBdG6;cH9mnfH?eYbWvdfo5WV^kUNPf6;R(z0fIlEifpgp(oeylqI?! zyf2ItOYa~obZifB3G;8+$`w{Jre z+EUTMSQv~3`DOJex>4vw$d#e9CB?ueuKL6Xe-0i8tre~7-!gy4&sR28%lVv<-vg^T z)`ZoLukM+6iUd!;6CZW8$khKeBQZ#Rm;cn{=Xu|nZ3EJIZo%69>_I{l@YJgZW;9G} zmU;xO^WdD5p=Q|)P!{8EN1{|$J-HZ8mI^ak4io1L5{a_sYxx7g@yFl2l6q zgsI4H3A(nvhlrUnUzx zOLdUdwP{L=yiTb=v&dknWFNN@LR}9n^F~JvTw8aQp2Eb6_4kwjlYdPg4HvPfezV5EpNguv{Rl60`=Vi2!gT8AqtzhLr>-}M40qv0cwJo|{ z7QeP(V#>~aw6pZd26y|;`f^AG{sY&tZ<2wXQTB+z4bS;J z0nR`X0BG?@Y&>w!uIS_1MZLLzuhf5G`dHwQZ*PKnrRQC%YPyEtZl^R97!{JzwxY6P4S zZPw0k=Em0!WTBc%T8IU8I_LWKNYmAAuKFNT0t8{71K8Qyrw3;1F)im#^!IOq7C%jg%le2uX#d-BLDvstg& z|qzAL@!@QlHaq)+KMe&U}kV+6bsFry?F#`n=Ztr`63spC*F#^7Jjd&ji73meR_96qQW66C8BeEx(r^HSpM|iEJkUp3KTGQ$_S~JXc73f6@65x8Jyj*k~r3f+%%Z3&n*|{?% z#(IsJFe+G_t$|?d{4mA*z-3f$#J}kz^rQCr+8mu+>g+DgO>q@`D|rFVGfzB#+f{20 zq*;jd@>wGC>+N*mbJ!5{iV@u&=?H=G#ei!h3mWA>s!7I9{f)B*fs9(@+za9RYqst{ zbtCkK(J`R?>vPMDP;DFo4>$sd1%#^QIqVRJKfa;Oqx{dqvk z)-$FNdIdf69K-#t>^b@oH0n6D>OoN}k4zW&?ZGJ$P`tbuTm3E6Y^p6uGhwisbTy#s zD8%}Ji44@Pk>bYevr83{%(_H>56a=|r0lfK5qYJA?s#&@hc}K)o3ua*((Pk=s_;_d z2ciK_!PIg{bs{DSg6WHG0-K3t>u+)9B4xZSuU%5Amv-H z<{JUb3J=U95r7`fZ@H316n@47S+9kIRb1|%J|<=s?tzu82f&xB&l`nKho;w678lp~ z^4Ta}VH<|~s3p)V;W1O%ImGWYowXs!A>h~4{XsIWJ!SCYneoUx4;L%g405k)gZPkoEf+v($5D)RI|E+Ps9tvzR{?OO zy<)HQk!BpRWu}cSt=p4vcGHjO#0g*Ac5SC(e$~HR@*y}iaX;koI(KIPv!z{5{Xj7#P!Fbcl_qEr6u zhq-N!Ke8gJIgKsr6UyIewuAcu%_$jw(q%3inDeeyEsMOtyTXcGj*{&D-j%yD>H(a> zuZo26=397x&YQ>CkiTBLD?T-uB;A~BhsdLS{t~aj_HIgPXXMIfVHc!PDERfS}LoSZVM zSn)^Yk-6X~iQ;dVtFU;H{*+25z-q|H)wr<@;{LM(!rZv^dV5UtYY;#t;wMm?nnB0XN11Cki_V_3= zPlk4+4lV^lyX)NPPP%+r^WDu#n#lC9d8H)Nk&7~RwEt)Nx!n#wI$EnZY(C*jN*QEns6|ux7gN zve$W6d8x`@RcDh9i8+da4=nnoeeu{U*S3Tg<5#F+{dA3=Fov%fgq3r^ig-W0cH!p^&z2bO9 z(HoIwdVE%vy+a&dNY0yg}06A=@|{`rG)%<{^xCha!4_;Q)D}`EBykAI)ZbFt}u`lbq4LdLp>%r|Ah6RN_~hQM4->P4H~Oz-y3 zk3ESqeTn&<24#}k(N+VnO zT9L+**WV#_xy)lyBnPC&{ed=!v`(1iH5~spEBqlH1Ws2RM?Pm9^WY3*^*BZtk6u;} zHvMqZYH`!e5Mk5KQ=!VxTb^>hxS#KnKvy{1!xQY`?W$0(2+$fPU}Vlk>$oT==blc( zc?$1zIgMZ=j

!T5WgPW>x2!6}-3lN_>SM;lbNgPJO51cCcYZx7~ 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�iUanrZY>9#h+1{hka1r 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 DxZQ%k literal 0 HcmV?d00001 diff --git a/docs/images/test-management/18.png b/docs/images/test-management/18.png new file mode 100644 index 0000000000000000000000000000000000000000..63681dddb2b286351153bb6f7be611b3c2bf2e52 GIT binary patch literal 55932 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/2.png b/docs/images/test-management/2.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c8cc1065b194cc950013ec2dd9778d61053c12 GIT binary patch literal 189600 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

W%{ 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/21.png b/docs/images/test-management/21.png new file mode 100644 index 0000000000000000000000000000000000000000..b7d9c5784c8469dd5930f3c3f255e6d510daba02 GIT binary patch literal 10682 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

va_EYx-_YJfW_%y3KNA@ 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/3.png b/docs/images/test-management/3.png new file mode 100644 index 0000000000000000000000000000000000000000..ff6119300b4f697bd147ca0b3bc7f616f05c124a GIT binary patch literal 45369 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 VJ@@|cPvGCT&Zkc@PyF@re*;SUP0#=U literal 0 HcmV?d00001 diff --git a/docs/images/test-management/4.png b/docs/images/test-management/4.png new file mode 100644 index 0000000000000000000000000000000000000000..fc0e8cf355d99ebed710e6a90deb282d6670c937 GIT binary patch literal 49745 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

u925281DNF!xN}mZ* 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/6.png b/docs/images/test-management/6.png new file mode 100644 index 0000000000000000000000000000000000000000..3d8da3d917ae625f0ae06755ec34c78f43c8664c GIT binary patch literal 74272 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�TQq4zQcn~zi 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 H?mhZ{tiXpm literal 0 HcmV?d00001 diff --git a/docs/images/test-management/7.png b/docs/images/test-management/7.png new file mode 100644 index 0000000000000000000000000000000000000000..6055f8440f4f4fed46cb9efe626ecc1fa2a05297 GIT binary patch literal 1764 zcmZ8idpHw%AKzSNwA_x%a&2>IjWh?NGNB2JxlNLim1D!s(+nLWil*p<$4p3vspA+! zDv{+ni6OT`h2(OuQ0dU9y=?ECr}M}A{_*?Xe$V&&`8>bx^L&1pzIgZDDtama0ARPL z2i6||03u|u4HzV|ro?=a%mHKl-CY5-0|ra7M1kbu?E(Ni%-OX?RFvh)RFB|T06?{K z=K#Aea>4-s5Zx2&LP!Yx_;wPn?`{C19+g||(Dqg)$uAb#`man>SZQT{m#7K5FcZN8p%J@p9Wn^)GE_b1=%6uCJZl3jbgj(cSr>yFURo z{N@cOBjXH<92Mn{#aiL&<3&g~T-R(OZ@(LM{vOu-QILj4QwGotJ8<4vBlj`X7dvkW z($YBe>rM$5XP%^`k^AfaR_DwQeZQa6%*nXhbrlXL#bmnw{{)NSu_^8jHWbP$llkXn zM*p^D-T98fT?CFDb*Mf)c_c8zy@2=X?LE+qi&bh)&9!3Cb;6^4+C?K{IAKqA?*a{J zqlwwDI-Iv1v1ybfoHEXrWEgdeDa0$2%+gfll&bUG``k(JY(K%R z*>kg3WsUFZFktyHomV7oi%leBRd|oMcY-gj&Q~^Pbj*7>3--SE6eZ=1z%+e-7Pt%QkROg;E34y+k8dJbK!TrVA_V$L_0OkyH?->lkg4GO*@YYK|3Z<;+j=av30!% zaswEcB?f7MRQbCmbV}4_6>rQJlq#2~3BKBPh}A(l{B_vnHt_U8e!B~8s%Yk0wW1u- zs`|6T&Fs~>J4!6bc{&S&_?C+E5IBw6|3@i`a(?7uMn5~daaGrfmuncmCd}2#$K2{! zuRq*xSlRR><_ewD=96tW?{guCXt>b3lvpC1{@UG4s~GnX(nUJQ+*^-+#iW3zl0N+Q zOJ%%y+?izy1y*xuv)H0^-C#9k`E{~=>|$FEE?lGarUf8v-ukSb%N{);akYi$oW%QvA3f={3>$~0X1am9QU-RAKYnX z#qP~t=c{xgKG{vZD*P$rz1=Zqfi*^71=)X3#fH1S6}h+lc^614^fS261Y*jtfirBZ z7^&%KH2N0x1>@w&lQMSdAU*yXSYDa97X~q9;VZIG8ND4b`sR=rHJ0T=8xg-oRuBheb9jM{4z!zl7 zsM3_nZ#Sq)1GL9YrD8#VXlAyc?1e%>A}x1idw)~=3i=vT*oE0&>`ki-Dd^tjggJj( zeyBPk5pm@9jOM(bQ_b%i)!ib`A;W@1c zf^`;cAjIj%z2rdohiaWSI-_%Gq`jfMH;Hk8{;PULGIu7a^ zSMD-H(DxcpU=1}wd+tm09mg#<`4)fptr}YX-J6~l<~*FQ^TS~@)$u-0k;TYueG)32 zt$S;dzMDruQ7OdahPnrt%SiJ$%1pv>J2gbIG>?(je|J7Q_?=)Mowfo*zkk%x{_r~| zZsE|w)PE%Gi}9^qCZ1olbo%k8vFd!D;{aPmM$pB`-fb|57#!I-SF62*RZtz0!%_a1poj5 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/8.png b/docs/images/test-management/8.png new file mode 100644 index 0000000000000000000000000000000000000000..c1bf505b92e103b36c943a4b56cd0c8e52c6b6e6 GIT binary patch literal 153769 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 NlAM7-7!*+X40>h^oK2lNpV#vzaXb! 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 YkTzySk=gLWZtBIFw{_KvR3AM1Kcme9tN;K2 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/9.png b/docs/images/test-management/9.png new file mode 100644 index 0000000000000000000000000000000000000000..cdecd8faa05f05280d2036fe751f2b0adf64cbe3 GIT binary patch literal 38647 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 Sr@TD*Se`oJfn{PYB>V$=rW(Bf literal 0 HcmV?d00001 diff --git a/gradle.properties b/gradle.properties index c1dc407a..a1dc0d02 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ # IntelliJ Platform Artifacts Repositories -> https://plugins.jetbrains.com/docs/intellij/intellij-artifacts.html -pluginGroup = com.github.jaksonlin.testcraftpro -pluginName = TestCraft Pro +pluginGroup = com.github.jaksonlin.testcraft +pluginName = TestCraft-Pro pluginRepositoryUrl = https://github.com/jaksonlin/testcraft-pro # SemVer format -> https://semver.org @@ -14,13 +14,13 @@ pluginUntilBuild = 243.* # IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension platformType = IC -platformVersion = 2024.2.5 +platformVersion = 2022.2 # Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html # Example: platformPlugins = com.jetbrains.php:203.4449.22, org.intellij.scala:2023.3.27@EAP platformPlugins = # Example: platformBundledPlugins = com.intellij.java -platformBundledPlugins = com.intellij.java, com.intellij.gradle,com.intellij.java,Git4Idea +platformBundledPlugins = com.intellij.java, com.intellij.gradle, com.intellij.java, Git4Idea # Gradle Releases -> https://github.com/gradle/gradle/releases gradleVersion = 8.9 diff --git a/settings.gradle.kts b/settings.gradle.kts index 96c0666a..aa46249a 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -2,4 +2,4 @@ plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" } -rootProject.name = "pitest-gradle" +rootProject.name = "testcraft-pro" diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/MyBundle.java b/src/main/java/com/github/jaksonlin/testcraft/MyBundle.java similarity index 95% rename from src/main/java/com/github/jaksonlin/pitestintellij/MyBundle.java rename to src/main/java/com/github/jaksonlin/testcraft/MyBundle.java index fbc2c0f3..b3b149f3 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/MyBundle.java +++ b/src/main/java/com/github/jaksonlin/testcraft/MyBundle.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij; +package com.github.jaksonlin.testcraft; import com.intellij.DynamicBundle; import org.jetbrains.annotations.NonNls; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/actions/GenerateAnnotationCommandAction.java b/src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java similarity index 73% rename from src/main/java/com/github/jaksonlin/pitestintellij/actions/GenerateAnnotationCommandAction.java rename to src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java index d28d9b3f..b0f9a757 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/actions/GenerateAnnotationCommandAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.actions; +package com.github.jaksonlin.testcraft.actions; -import com.github.jaksonlin.pitestintellij.commands.unittestannotations.GenerateAnnotationCommand; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.util.Pair; -import com.github.jaksonlin.pitestintellij.util.PsiUtil; +import com.github.jaksonlin.testcraft.commands.unittestannotations.GenerateAnnotationCommand; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.util.Pair; +import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunCaseAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java similarity index 72% rename from src/main/java/com/github/jaksonlin/pitestintellij/actions/RunCaseAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java index 0d89f55b..3f91dd94 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunCaseAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.actions; +package com.github.jaksonlin.testcraft.actions; -import com.github.jaksonlin.pitestintellij.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.util.Pair; -import com.github.jaksonlin.pitestintellij.util.PsiUtil; +import com.github.jaksonlin.testcraft.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.util.Pair; +import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunPitestAction.java b/src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java similarity index 89% rename from src/main/java/com/github/jaksonlin/pitestintellij/actions/RunPitestAction.java rename to src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java index 5b170547..07b353c1 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunPitestAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.actions; +package com.github.jaksonlin.testcraft.actions; -import com.github.jaksonlin.pitestintellij.services.PitestService; +import com.github.jaksonlin.testcraft.services.PitestService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.PlatformDataKeys; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunTestFileAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/actions/RunTestFileAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java index 46d00630..7585ac47 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/actions/RunTestFileAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.pitestintellij.actions; +package com.github.jaksonlin.testcraft.actions; -import com.github.jaksonlin.pitestintellij.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldConfig.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java index 64bd8d9a..2d9712b6 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldType.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java similarity index 52% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldType.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java index 324e560a..b3d5b97c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationFieldType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; public enum AnnotationFieldType { STRING, diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationParser.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationParser.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java index 274fce33..1344b328 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationParser.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; -import com.github.jaksonlin.pitestintellij.context.UnittestCase; +import com.github.jaksonlin.testcraft.context.UnittestCase; import org.jetbrains.annotations.Nullable; import java.util.HashMap; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationSchema.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java similarity index 99% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationSchema.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java index 99ef693b..3576de01 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationSchema.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import com.fasterxml.jackson.databind.ObjectMapper; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationValidator.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java similarity index 99% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationValidator.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java index aa48375d..53f31462 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/AnnotationValidator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/DefaultValue.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/DefaultValue.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java index 5670e170..0647d9f2 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/DefaultValue.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/FieldValidation.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/FieldValidation.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java index 17f534ea..06a2dfc3 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/FieldValidation.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/UnittestAnnotationConfig.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/UnittestAnnotationConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java index 51f4e2dd..a22b0c24 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/UnittestAnnotationConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; public class UnittestAnnotationConfig { private String authorField; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValidationMode.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java similarity index 65% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValidationMode.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java index 93ca3ea7..c0cb4478 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValidationMode.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; public enum ValidationMode { EXACT, // Exact string match diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProvider.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProvider.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java index beb58c47..73276908 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProvider.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; import com.fasterxml.jackson.databind.JsonNode; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProviderType.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java similarity index 82% rename from src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProviderType.java rename to src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java index be79eccd..d06fa29a 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/annotations/ValueProviderType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.annotations; +package com.github.jaksonlin.testcraft.annotations; public enum ValueProviderType { GIT_AUTHOR, diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/CommandCancellationException.java b/src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java similarity index 73% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/CommandCancellationException.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java index cefbbcc1..e15c1387 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/CommandCancellationException.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.commands; +package com.github.jaksonlin.testcraft.commands; public class CommandCancellationException extends Exception{ diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/BuildPitestCommandCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/BuildPitestCommandCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java index b4cfeeae..8a6d0990 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/BuildPitestCommandCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.context.PitestContext; +import com.github.jaksonlin.testcraft.context.PitestContext; import com.intellij.openapi.project.Project; import java.util.ArrayList; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/HandlePitestResultCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/HandlePitestResultCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java index b2691e06..05ac935f 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/HandlePitestResultCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.components.PitestOutputDialog; -import com.github.jaksonlin.pitestintellij.util.ProcessResult; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java similarity index 85% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java index 07d499a6..dabca79c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java @@ -1,15 +1,15 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.commands.CommandCancellationException; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.services.RunHistoryManagerService; -import com.github.jaksonlin.pitestintellij.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.components.PitestOutputDialog; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.Messages; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReference; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PrepareEnvironmentCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PrepareEnvironmentCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java index dfdeb372..57126583 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/PrepareEnvironmentCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.commands.CommandCancellationException; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.util.*; +import com.github.jaksonlin.testcraft.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.util.*; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.module.Module; @@ -13,7 +13,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import java.io.File; import java.nio.file.Paths; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/RunPitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java similarity index 85% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/RunPitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java index 7a31e269..decf2d6f 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/RunPitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.ProcessExecutor; -import com.github.jaksonlin.pitestintellij.util.ProcessResult; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.ProcessExecutor; +import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/StoreHistoryCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java similarity index 71% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/StoreHistoryCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java index 9a24a924..168095d6 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/pitest/StoreHistoryCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.commands.pitest; +package com.github.jaksonlin.testcraft.commands.pitest; -import com.github.jaksonlin.pitestintellij.context.PitestContext; +import com.github.jaksonlin.testcraft.context.PitestContext; import com.intellij.openapi.project.Project; public class StoreHistoryCommand extends PitestCommand { diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java index 59621065..7db22666 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.unittestannotations; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationFieldType; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.context.UnittestCase; +import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckMethodDataCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckMethodDataCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java index a790f90d..6c74d9f6 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/CheckMethodDataCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.unittestannotations; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/GenerateAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/GenerateAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java index bb8a56b6..33508b4d 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/GenerateAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java @@ -1,13 +1,13 @@ -package com.github.jaksonlin.pitestintellij.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.unittestannotations; import com.fasterxml.jackson.databind.node.ArrayNode; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationFieldType; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.annotations.DefaultValue; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.services.AnnotationConfigService; -import com.github.jaksonlin.pitestintellij.services.AnnotationValueProviderService; +import com.github.jaksonlin.testcraft.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.services.AnnotationValueProviderService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.command.WriteCommandAction; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestCaseCheckCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestCaseCheckCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java index 81ef0416..89b26666 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestCaseCheckCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.unittestannotations; -import com.github.jaksonlin.pitestintellij.MyBundle; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.context.UnittestCase; +import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; import com.intellij.psi.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestFileInspectorCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestFileInspectorCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java index 3ddf104a..b2bc9453 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/commands/unittestannotations/UnittestFileInspectorCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.unittestannotations; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.services.AnnotationConfigService; -import com.github.jaksonlin.pitestintellij.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; import com.intellij.codeInspection.ProblemHighlightType; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.application.ApplicationManager; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/completions/AnnotationCompletionContributor.java b/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/completions/AnnotationCompletionContributor.java rename to src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java index 035db1ab..fea01128 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/completions/AnnotationCompletionContributor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.completions; +package com.github.jaksonlin.testcraft.completions; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.annotations.DefaultValue; -import com.github.jaksonlin.pitestintellij.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.services.AnnotationConfigService; import com.intellij.codeInsight.completion.*; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.lang.java.JavaLanguage; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/completions/CustomAnnotationCompletionLookupElement.java b/src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/completions/CustomAnnotationCompletionLookupElement.java rename to src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java index 0c98bb8e..b89aff67 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/completions/CustomAnnotationCompletionLookupElement.java +++ b/src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.completions; +package com.github.jaksonlin.testcraft.completions; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; import com.intellij.codeInsight.completion.InsertionContext; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.LookupElementPresentation; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/ChatPanel.java b/src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/ChatPanel.java rename to src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java index 3aa271a8..9cfc8d8d 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/ChatPanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java similarity index 99% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/LLMResponsePanel.java rename to src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java index 3ac127bd..f820a224 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; import org.commonmark.node.Node; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java similarity index 95% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/LLMSuggestionUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java index 9f97bb81..bfce0887 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; -import com.github.jaksonlin.pitestintellij.viewmodels.LLMSuggestionUIComponentViewModel; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.viewmodels.LLMSuggestionUIComponentViewModel; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.ui.ComboBox; import com.intellij.util.ui.JBUI; @@ -16,7 +16,7 @@ import java.util.List; import java.util.Map; import java.util.ResourceBundle; -import com.github.jaksonlin.pitestintellij.services.LLMService; +import com.github.jaksonlin.testcraft.services.LLMService; public class LLMSuggestionUIComponent implements BasicEventObserver { private static final String BUNDLE = "messages.MyBundle"; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/MutationToolWindowUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/MutationToolWindowUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java index 38bd9818..6df22983 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/MutationToolWindowUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; -import com.github.jaksonlin.pitestintellij.MyBundle; -import com.github.jaksonlin.pitestintellij.viewmodels.MutationToolWindowViewModel; +import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.viewmodels.MutationToolWindowViewModel; import com.intellij.openapi.project.Project; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/ObservableTree.java rename to src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java index 08548811..e95e9512 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; -import com.github.jaksonlin.pitestintellij.MyBundle; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; -import com.github.jaksonlin.pitestintellij.util.Pair; +import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.util.Pair; import org.jetbrains.annotations.NotNull; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/PitestOutputDialog.java b/src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/PitestOutputDialog.java rename to src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java index aa696e95..454aba20 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/PitestOutputDialog.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/components/PremiumSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java similarity index 86% rename from src/main/java/com/github/jaksonlin/pitestintellij/components/PremiumSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java index 1369504b..d1c4ae32 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/components/PremiumSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.components; +package com.github.jaksonlin.testcraft.components; -import com.github.jaksonlin.pitestintellij.license.PremiumManager; +import com.github.jaksonlin.testcraft.license.PremiumManager; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/CaseCheckContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java similarity index 84% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/CaseCheckContext.java rename to src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java index 27b22c3e..0014ab09 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/CaseCheckContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationParser; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.services.AnnotationConfigService; -import com.github.jaksonlin.pitestintellij.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.annotations.AnnotationParser; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiMethod; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/PitestContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/PitestContext.java rename to src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java index e3970da3..071d1776 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/PitestContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.MutationReportParser; -import com.github.jaksonlin.pitestintellij.util.ProcessResult; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.MutationReportParser; +import com.github.jaksonlin.testcraft.util.ProcessResult; import java.io.IOException; import java.nio.file.Paths; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/TestPoints.java b/src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/TestPoints.java rename to src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java index e996e948..cb2d752f 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/TestPoints.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; import java.util.Arrays; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCase.java b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCase.java rename to src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java index 3bcc5897..2b2b9179 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseInfoContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseInfoContext.java rename to src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java index b3485ce5..157e4188 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseInfoContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; -import com.github.jaksonlin.pitestintellij.annotations.UnittestAnnotationConfig; +import com.github.jaksonlin.testcraft.annotations.UnittestAnnotationConfig; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseStatus.java b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java similarity index 56% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseStatus.java rename to src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java index 4ab616f7..e46967e7 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestCaseStatus.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; public enum UnittestCaseStatus { TODO, DONE, BROKEN, DEPRECATED diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestMethodContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java similarity index 89% rename from src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestMethodContext.java rename to src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java index dc0964e7..b175621b 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/context/UnittestMethodContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.context; +package com.github.jaksonlin.testcraft.context; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/inspectors/UnittestInspector.java b/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/inspectors/UnittestInspector.java rename to src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java index 485901cf..a68b8287 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/inspectors/UnittestInspector.java +++ b/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.inspectors; +package com.github.jaksonlin.testcraft.inspectors; -import com.github.jaksonlin.pitestintellij.MyBundle; -import com.github.jaksonlin.pitestintellij.commands.unittestannotations.UnittestFileInspectorCommand; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.commands.unittestannotations.UnittestFileInspectorCommand; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.intellij.codeInspection.AbstractBaseJavaLocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/license/PremiumManager.java b/src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/license/PremiumManager.java rename to src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java index b21ed9cb..71347970 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/license/PremiumManager.java +++ b/src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.license; +package com.github.jaksonlin.testcraft.license; public class PremiumManager { private static PremiumManager instance; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/listeners/MyApplicationActivationListener.java b/src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/listeners/MyApplicationActivationListener.java rename to src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java index 1970f18f..2e85c327 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/listeners/MyApplicationActivationListener.java +++ b/src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.listeners; +package com.github.jaksonlin.testcraft.listeners; import com.intellij.openapi.application.ApplicationActivationListener; import com.intellij.openapi.diagnostic.Logger; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatClient.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java similarity index 66% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatClient.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java index 26c68ac7..40686e8a 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatClient.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; public interface ILLMChatClient { diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatMediator.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java similarity index 72% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java index 4d975d65..133d14cf 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/ILLMChatMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.OllamaClient; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.OllamaClient; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationMediator.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java similarity index 64% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java index 69fda407..7636d56a 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; -import com.github.jaksonlin.pitestintellij.util.Mutation; +import com.github.jaksonlin.testcraft.util.Mutation; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationReportUI.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java similarity index 62% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationReportUI.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java index 444e5799..ba225013 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/IMutationReportUI.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; -import com.github.jaksonlin.pitestintellij.util.Pair; +import com.github.jaksonlin.testcraft.util.Pair; import java.util.Map; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/LLMChatMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/LLMChatMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java index da0a3256..d24acae7 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/LLMChatMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; -import com.github.jaksonlin.pitestintellij.MyBundle; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.OllamaClient; +import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.diagnostic.Logger; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/MutationMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/mediators/MutationMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java index 62b641dd..2aa28943 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/mediators/MutationMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.pitestintellij.mediators; +package com.github.jaksonlin.testcraft.mediators; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.Pair; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.Pair; import javax.swing.*; import java.util.ArrayList; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/observers/BasicEventObserver.java b/src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java similarity index 64% rename from src/main/java/com/github/jaksonlin/pitestintellij/observers/BasicEventObserver.java rename to src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java index be8a322e..92894c53 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/observers/BasicEventObserver.java +++ b/src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.observers; +package com.github.jaksonlin.testcraft.observers; public interface BasicEventObserver { void onEventHappen(String eventName, Object eventObj); diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/observers/ObserverBase.java b/src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java similarity index 91% rename from src/main/java/com/github/jaksonlin/pitestintellij/observers/ObserverBase.java rename to src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java index afe315b2..85e72304 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/observers/ObserverBase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.observers; +package com.github.jaksonlin.testcraft.observers; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/processors/UnittestMethodProcessor.java b/src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java similarity index 85% rename from src/main/java/com/github/jaksonlin/pitestintellij/processors/UnittestMethodProcessor.java rename to src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java index bb189719..e5d78a5a 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/processors/UnittestMethodProcessor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.processors; +package com.github.jaksonlin.testcraft.processors; -import com.github.jaksonlin.pitestintellij.context.UnittestMethodContext; +import com.github.jaksonlin.testcraft.context.UnittestMethodContext; import com.intellij.psi.PsiComment; import com.intellij.psi.PsiMethod; import com.intellij.psi.util.PsiTreeUtil; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java index 492982c3..4f2a6abc 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.services; +package com.github.jaksonlin.testcraft.services; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; import com.intellij.openapi.components.State; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationValueProviderService.java b/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationValueProviderService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java index 592894df..86654a8b 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/AnnotationValueProviderService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.services; +package com.github.jaksonlin.testcraft.services; -import com.github.jaksonlin.pitestintellij.annotations.ValueProvider; -import com.github.jaksonlin.pitestintellij.annotations.ValueProviderType; -import com.github.jaksonlin.pitestintellij.context.CaseCheckContext; -import com.github.jaksonlin.pitestintellij.util.GitUtil; +import com.github.jaksonlin.testcraft.annotations.ValueProvider; +import com.github.jaksonlin.testcraft.annotations.ValueProviderType; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.util.GitUtil; import com.intellij.openapi.components.Service; import com.intellij.openapi.project.Project; import com.intellij.psi.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/InvalidTestCaseConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/InvalidTestCaseConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java index cf96a51e..6d4b8f33 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/InvalidTestCaseConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.services; +package com.github.jaksonlin.testcraft.services; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; import com.intellij.openapi.components.State; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/LLMService.java b/src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java similarity index 88% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/LLMService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java index 7917bb0f..e7611d61 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/LLMService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java @@ -1,11 +1,11 @@ -package com.github.jaksonlin.pitestintellij.services; - -import com.github.jaksonlin.pitestintellij.mediators.ILLMChatMediator; -import com.github.jaksonlin.pitestintellij.mediators.LLMChatMediatorImpl; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; -import com.github.jaksonlin.pitestintellij.observers.ObserverBase; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.OllamaClient; +package com.github.jaksonlin.testcraft.services; + +import com.github.jaksonlin.testcraft.mediators.ILLMChatMediator; +import com.github.jaksonlin.testcraft.mediators.LLMChatMediatorImpl; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.observers.ObserverBase; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.components.Service; import com.intellij.openapi.diagnostic.Logger; @@ -13,13 +13,13 @@ import java.util.Objects; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.pitestintellij.mediators.ILLMChatClient; +import com.github.jaksonlin.testcraft.mediators.ILLMChatClient; import com.intellij.openapi.components.State; import com.intellij.openapi.components.Storage; import com.intellij.openapi.components.PersistentStateComponent; @Service(Service.Level.APP) @State( - name = "com.github.jaksonlin.pitestintellij.services.LLMService", + name = "com.github.jaksonlin.testcraft.services.LLMService", storages = @Storage(value = "$APP_CONFIG$/LLMService.xml") ) public final class LLMService diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/PitestService.java b/src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java similarity index 91% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/PitestService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java index 99d478c0..1b05a032 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/PitestService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.services; +package com.github.jaksonlin.testcraft.services; -import com.github.jaksonlin.pitestintellij.commands.CommandCancellationException; -import com.github.jaksonlin.pitestintellij.commands.pitest.*; -import com.github.jaksonlin.pitestintellij.context.PitestContext; +import com.github.jaksonlin.testcraft.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.commands.pitest.*; +import com.github.jaksonlin.testcraft.context.PitestContext; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.Service; import com.intellij.openapi.progress.ProgressIndicator; @@ -11,7 +11,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.ui.components.JBScrollPane; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import javax.swing.*; import java.awt.*; import java.io.PrintWriter; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/services/RunHistoryManagerService.java b/src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java similarity index 92% rename from src/main/java/com/github/jaksonlin/pitestintellij/services/RunHistoryManagerService.java rename to src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java index 5bec62c5..ade7af68 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/services/RunHistoryManagerService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.services; +package com.github.jaksonlin.testcraft.services; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.observers.ObserverBase; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; -import com.github.jaksonlin.pitestintellij.util.Pair; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.observers.ObserverBase; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.util.Pair; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; import com.google.gson.reflect.TypeToken; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java index b9b2fe01..65a8465f 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; import com.intellij.json.JsonFileType; import com.intellij.openapi.editor.Document; @@ -10,7 +10,7 @@ import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import javax.swing.*; import javax.swing.event.HyperlinkEvent; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java index 52bec431..d84fc5a2 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/AnnotationSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.pitestintellij.annotations.AnnotationSchema; -import com.github.jaksonlin.pitestintellij.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.services.AnnotationConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.ConfigurationException; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java index abcf0e7c..4e6b8902 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ex.EditorEx; @@ -6,7 +6,7 @@ import com.intellij.ui.components.JBCheckBox; import com.intellij.ui.components.JBLabel; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import javax.swing.*; import java.awt.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java index cf719b23..a3d800a0 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/InvalidTestCaseSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; -import com.github.jaksonlin.pitestintellij.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java index 09f2f507..8e0cd264 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java @@ -1,12 +1,12 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; import com.intellij.util.ui.JBUI; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.pitestintellij.util.OllamaClient; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.util.OllamaClient; +import com.github.jaksonlin.testcraft.MyBundle; import javax.swing.*; import java.awt.*; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java similarity index 95% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java index d8bef671..8b10edb8 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/OllamaSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; -import com.github.jaksonlin.pitestintellij.services.LLMService; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.services.LLMService; +import com.github.jaksonlin.testcraft.MyBundle; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nls; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/settings/TestCraftSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java similarity index 92% rename from src/main/java/com/github/jaksonlin/pitestintellij/settings/TestCraftSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java index 54666a3b..fd6004f6 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/settings/TestCraftSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.settings; +package com.github.jaksonlin.testcraft.settings; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.SearchableConfigurable; @@ -6,13 +6,13 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.pitestintellij.MyBundle; +import com.github.jaksonlin.testcraft.MyBundle; import javax.swing.*; public class TestCraftSettingsConfigurable implements SearchableConfigurable.Parent { @Override public @NotNull String getId() { - return "com.github.jaksonlin.pitestintellij.settings"; + return "com.github.jaksonlin.testcraft.settings"; } @Override diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/LLMSuggestionsToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java similarity index 84% rename from src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/LLMSuggestionsToolWindowFactory.java rename to src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java index 36d6a437..a2da3180 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/LLMSuggestionsToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.pitestintellij.toolWindow; +package com.github.jaksonlin.testcraft.toolWindow; -import com.github.jaksonlin.pitestintellij.components.LLMSuggestionUIComponent; -import com.github.jaksonlin.pitestintellij.services.LLMService; -import com.github.jaksonlin.pitestintellij.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.components.LLMSuggestionUIComponent; +import com.github.jaksonlin.testcraft.services.LLMService; +import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/MutationToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java similarity index 87% rename from src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/MutationToolWindowFactory.java rename to src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java index 6565f88a..d52f1507 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/toolWindow/MutationToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.pitestintellij.toolWindow; +package com.github.jaksonlin.testcraft.toolWindow; -import com.github.jaksonlin.pitestintellij.components.MutationToolWindowUIComponent; +import com.github.jaksonlin.testcraft.components.MutationToolWindowUIComponent; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; import com.intellij.openapi.wm.ToolWindowFactory; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/Blocks.java b/src/main/java/com/github/jaksonlin/testcraft/util/Blocks.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/Blocks.java rename to src/main/java/com/github/jaksonlin/testcraft/util/Blocks.java index a81dcfa2..5d9ecdd3 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/Blocks.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/Blocks.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/ClassFileInfo.java b/src/main/java/com/github/jaksonlin/testcraft/util/ClassFileInfo.java similarity index 92% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/ClassFileInfo.java rename to src/main/java/com/github/jaksonlin/testcraft/util/ClassFileInfo.java index 30be685e..80bf9d0c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/ClassFileInfo.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/ClassFileInfo.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class ClassFileInfo { private final String fullyQualifiedName; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/FileUtils.java b/src/main/java/com/github/jaksonlin/testcraft/util/FileUtils.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/FileUtils.java rename to src/main/java/com/github/jaksonlin/testcraft/util/FileUtils.java index 63cba221..244efd64 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/FileUtils.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/FileUtils.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import java.io.File; import java.io.IOException; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitCommitInfo.java b/src/main/java/com/github/jaksonlin/testcraft/util/GitCommitInfo.java similarity index 92% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/GitCommitInfo.java rename to src/main/java/com/github/jaksonlin/testcraft/util/GitCommitInfo.java index 8535f30e..46df17d5 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitCommitInfo.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/GitCommitInfo.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class GitCommitInfo { private final String author; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitUserInfo.java b/src/main/java/com/github/jaksonlin/testcraft/util/GitUserInfo.java similarity index 92% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/GitUserInfo.java rename to src/main/java/com/github/jaksonlin/testcraft/util/GitUserInfo.java index 92b2a50d..5ce4ec44 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitUserInfo.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/GitUserInfo.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class GitUserInfo { private final String name; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitUtil.java b/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java similarity index 99% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/GitUtil.java rename to src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java index 7fea8114..e43514bf 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/GitUtil.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.editor.Document; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/GradleUtils.java b/src/main/java/com/github/jaksonlin/testcraft/util/GradleUtils.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/GradleUtils.java rename to src/main/java/com/github/jaksonlin/testcraft/util/GradleUtils.java index c274f731..9f671b58 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/GradleUtils.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/GradleUtils.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/Indexes.java b/src/main/java/com/github/jaksonlin/testcraft/util/Indexes.java similarity index 90% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/Indexes.java rename to src/main/java/com/github/jaksonlin/testcraft/util/Indexes.java index 74335cf3..6aa11edd 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/Indexes.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/Indexes.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/JavaFileProcessor.java b/src/main/java/com/github/jaksonlin/testcraft/util/JavaFileProcessor.java similarity index 97% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/JavaFileProcessor.java rename to src/main/java/com/github/jaksonlin/testcraft/util/JavaFileProcessor.java index c0846321..8827356c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/JavaFileProcessor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/JavaFileProcessor.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.github.javaparser.JavaParser; import com.github.javaparser.ParseResult; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/Mutation.java b/src/main/java/com/github/jaksonlin/testcraft/util/Mutation.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/Mutation.java rename to src/main/java/com/github/jaksonlin/testcraft/util/Mutation.java index f29fabda..0c9e25fd 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/Mutation.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/Mutation.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class Mutation { private boolean detected; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/MutationReportParser.java b/src/main/java/com/github/jaksonlin/testcraft/util/MutationReportParser.java similarity index 95% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/MutationReportParser.java rename to src/main/java/com/github/jaksonlin/testcraft/util/MutationReportParser.java index 46cc2c2f..58ba1ff2 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/MutationReportParser.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/MutationReportParser.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationFeature; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/Mutations.java b/src/main/java/com/github/jaksonlin/testcraft/util/Mutations.java similarity index 93% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/Mutations.java rename to src/main/java/com/github/jaksonlin/testcraft/util/Mutations.java index 2a83f781..6fe3e074 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/Mutations.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/Mutations.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/OllamaClient.java b/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/OllamaClient.java rename to src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java index 629a5177..42dac18c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/OllamaClient.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.fasterxml.jackson.databind.ObjectMapper; import com.intellij.openapi.diagnostic.Logger; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/Pair.java b/src/main/java/com/github/jaksonlin/testcraft/util/Pair.java similarity index 88% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/Pair.java rename to src/main/java/com/github/jaksonlin/testcraft/util/Pair.java index 30958f3d..cae8258f 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/Pair.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/Pair.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class Pair { private final K key; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessExecutor.java b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java similarity index 98% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessExecutor.java rename to src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java index 571c50e6..653cf875 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessExecutor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import java.io.BufferedReader; import java.io.IOException; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessResult.java b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessResult.java similarity index 91% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessResult.java rename to src/main/java/com/github/jaksonlin/testcraft/util/ProcessResult.java index 1bbd4e33..b19f1073 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/ProcessResult.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessResult.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; public class ProcessResult { private final int exitCode; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/PsiUtil.java b/src/main/java/com/github/jaksonlin/testcraft/util/PsiUtil.java similarity index 96% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/PsiUtil.java rename to src/main/java/com/github/jaksonlin/testcraft/util/PsiUtil.java index 2b40b819..cc23ecc9 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/PsiUtil.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/PsiUtil.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/util/TargetClassInfo.java b/src/main/java/com/github/jaksonlin/testcraft/util/TargetClassInfo.java similarity index 88% rename from src/main/java/com/github/jaksonlin/pitestintellij/util/TargetClassInfo.java rename to src/main/java/com/github/jaksonlin/testcraft/util/TargetClassInfo.java index 38c7f377..00e3a62c 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/util/TargetClassInfo.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/TargetClassInfo.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.pitestintellij.util; +package com.github.jaksonlin.testcraft.util; import java.nio.file.Path; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/LLMSuggestionUIComponentViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java similarity index 86% rename from src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/LLMSuggestionUIComponentViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java index 11d04b00..d7c67749 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/LLMSuggestionUIComponentViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.viewmodels; +package com.github.jaksonlin.testcraft.viewmodels; -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.observers.BasicEventObserver; -import com.github.jaksonlin.pitestintellij.observers.ObserverBase; -import com.github.jaksonlin.pitestintellij.services.LLMService; +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.observers.ObserverBase; +import com.github.jaksonlin.testcraft.services.LLMService; public class LLMSuggestionUIComponentViewModel extends ObserverBase implements BasicEventObserver { diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java similarity index 84% rename from src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationToolWindowViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java index 14fb11c0..2a967692 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.pitestintellij.viewmodels; +package com.github.jaksonlin.testcraft.viewmodels; -import com.github.jaksonlin.pitestintellij.mediators.IMutationMediator; -import com.github.jaksonlin.pitestintellij.mediators.MutationMediatorImpl; -import com.github.jaksonlin.pitestintellij.services.RunHistoryManagerService; -import com.github.jaksonlin.pitestintellij.components.ObservableTree; +import com.github.jaksonlin.testcraft.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.mediators.MutationMediatorImpl; +import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.components.ObservableTree; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java similarity index 94% rename from src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationTreeMediatorViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java index 685d2dae..827d6194 100644 --- a/src/main/java/com/github/jaksonlin/pitestintellij/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java @@ -1,11 +1,11 @@ -package com.github.jaksonlin.pitestintellij.viewmodels; - -import com.github.jaksonlin.pitestintellij.context.PitestContext; -import com.github.jaksonlin.pitestintellij.mediators.IMutationMediator; -import com.github.jaksonlin.pitestintellij.mediators.IMutationReportUI; -import com.github.jaksonlin.pitestintellij.services.RunHistoryManagerService; -import com.github.jaksonlin.pitestintellij.util.Mutation; -import com.github.jaksonlin.pitestintellij.util.Pair; +package com.github.jaksonlin.testcraft.viewmodels; + +import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.mediators.IMutationReportUI; +import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.util.Mutation; +import com.github.jaksonlin.testcraft.util.Pair; import com.intellij.icons.AllIcons; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 713e038a..ac2f995f 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -30,6 +30,18 @@ ]]> Change Notes +

1.0.7 - 2025-04-16

+
    +
  • enhance the dump prompt to use compact prompt
  • +
  • i18n enhancement
  • +
  • bugfixes for no mutation can provide suggestions
  • +
+

1.0.6 - 2025-04-09

+
    +
  • Add ollama access to evaulate the unit test and create new test
  • +
+

1.0.5 - 2025-04-01

  • Added assertion statement validation
  • @@ -55,7 +67,7 @@
]]>

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 z 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%0DT~`fRsBe^lV3x3=Ge33) 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 O_u@HYL$rb8gZ}}-irfhR literal 0 HcmV?d00001 diff --git a/docs/images/test-management/15.png b/docs/images/test-management/15.png new file mode 100644 index 0000000000000000000000000000000000000000..72dcd920dbe81e7e2a6e71cf9994efb590a124c1 GIT binary patch literal 12403 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-management/16.png b/docs/images/test-management/16.png new file mode 100644 index 0000000000000000000000000000000000000000..64d2f22e8eef5b91c83be038e802fa841e6cb504 GIT binary patch literal 53272 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

- 1.0.1-beta + 1.0.7 Jason Lam com.github.jaksonlin.testcraftpro @@ -71,46 +83,46 @@ messages.MyBundle - + + factoryClass="com.github.jaksonlin.testcraft.toolWindow.LLMSuggestionsToolWindowFactory"/> + instance="com.github.jaksonlin.testcraft.settings.TestCraftSettingsConfigurable"/> - - - + + + + implementationClass="com.github.jaksonlin.testcraft.completions.AnnotationCompletionContributor"/> - + @@ -141,15 +153,15 @@ - - From 72b400522628c885c1bae02486d43bb00012114f Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 28 Apr 2025 16:18:25 +0800 Subject: [PATCH 06/25] update version --- CHANGELOG.md | 45 ++++++++++--------- README.md | 14 +++++- gradle.properties | 2 +- .../pitest/HandlePitestResultCommand.java | 35 +++++++++++---- .../pitest/PrepareEnvironmentCommand.java | 32 +++++++++++-- .../commands/pitest/RunPitestCommand.java | 4 +- .../testcraft/context/PitestContext.java | 13 +++++- .../testcraft/util/ProcessExecutor.java | 3 +- src/main/resources/META-INF/plugin.xml | 6 +++ 9 files changed, 114 insertions(+), 40 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d5e3243d..ce2dbe4c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,28 +6,6 @@ # TestCraft Pro Changelog -## [1.0.0] - 2025-04-01 -### Project Launch -- Complete rebranding and expansion of functionality -- Migration from MIT to Apache 2.0 License -- New comprehensive test management features - -### Added -- Enhanced test case management system -- Annotation validation and generation -- Assertion statement verification -- Support for both Gradle and Maven projects -- Configurable test quality rules - -### Carried Forward -- All PITest mutation testing capabilities -- Results visualization and navigation -- Editor integration features - -### Changed -- Project name from pitest-gradle to TestCraft Pro -- License from MIT to Apache 2.0 -- Expanded plugin scope beyond mutation testing ## [Unreleased] ### Added @@ -67,3 +45,26 @@ - i18n enhancement - bugfixes for no mutation can provide suggestion +## 1.0.8 - 2025-04-28 +### Project Launch +- Complete rebranding and expansion of functionality +- Migration from MIT to Apache 2.0 License +- New test management features + +### Added +- Enhanced test case management system +- Annotation validation and generation +- Assertion statement verification +- Support for both Gradle and Maven projects +- Configurable test quality rules + +### Carried Forward +- All PITest mutation testing capabilities +- Results visualization and navigation +- Editor integration features + +### Functionality Changed +- Run pitest in the test file's source root as the process working directory +- Dump pitest context into report directory for issue debug +- Enhance output information for issue debug + diff --git a/README.md b/README.md index cbd43f79..0b4ffbb3 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,21 @@ # TestCraft -TestCraft is a comprehensive testing assistant plugin for IntelliJ IDEA that enhances your testing workflow with mutation testing, test case management, and AI-powered test analysis. Originally focused on PITest integration, TestCraft has evolved to provide a complete suite of testing tools. +TestCraft is the evolution of the [pitest-gradle](https://plugins.jetbrains.com/plugin/25546-pitest-gradle) plugin, expanding its capabilities beyond Gradle-based PITest mutation testing. While the original plugin focused on running PITest mutation testing for Java Gradle projects, TestCraft now offers a comprehensive testing suite that includes: + +- PITest mutation testing support for both Gradle and Maven projects +- Advanced test case management features +- AI-powered test analysis capabilities + +The plugin has been renamed to TestCraft to better represent its expanded functionality and modern testing features. Current version: 1.0.8 (continuing from the last pitest-gradle version). + +## Migration from pitest-gradle + +- uninstall pitest-gradle +- install TestCraft plugin + ## Features ### Mutation Testing diff --git a/gradle.properties b/gradle.properties index a1dc0d02..8b55373b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ pluginName = TestCraft-Pro pluginRepositoryUrl = https://github.com/jaksonlin/testcraft-pro # SemVer format -> https://semver.org -pluginVersion = 1.0.7 +pluginVersion = 1.0.8 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java index 05ac935f..ed8e713d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java @@ -5,6 +5,7 @@ import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; +import org.jetbrains.annotations.NotNull; import java.io.File; @@ -26,15 +27,14 @@ public void execute() { String reportDirectory = getContext().getReportDirectory(); if (reportDirectory != null) { File reportFile = new File(reportDirectory, "index.html"); + StringBuilder combinedOutputSB = getCombinedOutputFromResult(result); if (reportFile.exists()) { - showOutputWithReportButton(result.getOutput(), "Pitest Output", reportFile); + showOutputWithReportButton(combinedOutputSB.toString(), "Pitest Output", reportFile); } else { - showOutput(result.getOutput(), "Pitest Output"); + showOutput(combinedOutputSB.toString(), "Pitest Result"); showError("Report file not found: " + reportFile.getAbsolutePath()); } } - } else if (exitCode == -1) { - showOutput("Error running Pitest:\n\n" + result.getErrorOutput(), "Pitest Error"); } else { StringBuilder errorMessage = new StringBuilder() .append("Pitest exited with code ").append(exitCode).append("\n\n") @@ -42,16 +42,33 @@ public void execute() { .append("Common causes for exit code 2 include:\n") .append("- System.exit() called in test code\n") .append("- Test process configuration issues\n") - .append("- Memory/resource constraints\n\n") - .append("=== Error Output ===\n") - .append(result.getErrorOutput()).append("\n\n") - .append("=== Context Information ===\n") - .append(PitestContext.dumpPitestContext(getContext())); + .append("- Memory/resource constraints\n\n"); + if (result.getOutput() != null) { + errorMessage.append("=== Standard Output ===\n"); + errorMessage.append(result.getOutput()); + } + if (result.getErrorOutput() != null) { + errorMessage.append("\n=== Verbose Output ===\n"); + errorMessage.append(result.getErrorOutput()); + } showOutput(errorMessage.toString(), "Pitest Error"); } } + private static @NotNull StringBuilder getCombinedOutputFromResult(ProcessResult result) { + StringBuilder combinedOutputSB = new StringBuilder(); + if (result.getOutput() != null) { + combinedOutputSB.append("=== Standard Output ===\n"); + combinedOutputSB.append(result.getOutput()); + } + if (result.getErrorOutput() != null) { + combinedOutputSB.append("\n=== Verbose Output ===\n"); + combinedOutputSB.append(result.getErrorOutput()); + } + return combinedOutputSB; + } + private void showOutputWithReportButton(String output, String title, File reportFile) { ApplicationManager.getApplication().invokeLater(() -> { new PitestOutputDialog(getProject(), output, title, reportFile).show(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java index 57126583..e0acefde 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java @@ -16,6 +16,7 @@ import com.github.jaksonlin.testcraft.MyBundle; import java.io.File; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; @@ -40,6 +41,7 @@ public void execute() { collectJavaInfo(testVirtualFile); collectSourceRoots(); collectResourceDirectories(); + setWorkingDirectory(); if (getContext().getSourceRoots() != null) { collectTargetClassThatWeTest(getContext().getSourceRoots()); @@ -111,6 +113,31 @@ private void collectSourceRoots() { getContext().setSourceRoots(sourceRoots); } + private void setWorkingDirectory() { + List sourceRoots = getContext().getSourceRoots(); + + // get the test file path + String testFilePathWithoutSrc = getContext().getTestFilePath().split("src/test/java")[0]; + // normalize the test file path + Path normalizedPath = Paths.get(testFilePathWithoutSrc).normalize(); + // normalized path + testFilePathWithoutSrc = normalizedPath.toString(); + // get the source root that contains the test file + String sourceRoot = null; + for (String root : sourceRoots) { + if (testFilePathWithoutSrc.equals(root)) { + sourceRoot = root; + break; + } + } + if (sourceRoot == null) { + showError("Cannot find source root as working directory to run pitest for test file, expected source root: " + testFilePathWithoutSrc); + throw new IllegalStateException("Cannot find source root for test file"); + } + // set the working directory to the source root + getContext().setWorkingDirectory(sourceRoot); + } + private void collectResourceDirectories() { List resourceDirectories = ReadAction.compute(() -> GradleUtils.getResourceDirectories(getProject())); getContext().setResourceDirectories(resourceDirectories); @@ -192,15 +219,12 @@ private void collectClassPathFileForPitest(String reportDirectory, String target } private void setupPitestLibDependencies(List resourceDirectories) { - String pluginLibDir = ReadAction.compute(() -> PathManager.getPluginsPath() + "/pitest-gradle/lib"); + String pluginLibDir = ReadAction.compute(() -> PathManager.getPluginsPath() + "/TestCraft-Pro/lib"); List dependencies = new ArrayList<>(); File libDir = new File(pluginLibDir); File[] files = libDir.listFiles(); if (files != null) { for (File file : files) { - if (file.getName().startsWith("pitest-gradle-")) { - continue; - } if (file.getName().endsWith(".jar")) { if (file.getName().startsWith("pitest") || file.getName().startsWith("commons")) { dependencies.add(file.getAbsolutePath()); diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java index decf2d6f..afcbeae8 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java @@ -30,12 +30,14 @@ public void execute() { try { File commandFile = new File(Paths.get(getContext().getClasspathFileDirectory(), "command.txt").toString()); java.nio.file.Files.write(commandFile.toPath(), String.join(" ", command).getBytes()); + File contextFile = new File(Paths.get(getContext().getClasspathFileDirectory(), "context.txt").toString()); + java.nio.file.Files.write(contextFile.toPath(), PitestContext.dumpPitestContext(getContext()).getBytes()); } catch (IOException e) { log.warn("Error writing command to file: " + e.getMessage()); // Not throwing exception here as it's not critical for the process execution } - ProcessResult processResult = ProcessExecutor.executeProcess(command); + ProcessResult processResult = ProcessExecutor.executeProcess(command, getContext().getWorkingDirectory()); getContext().setProcessResult(processResult); try { List mutations = getContext().collectMutationsResults(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java index 071d1776..e06efbcd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java @@ -27,6 +27,15 @@ public class PitestContext { private List resourceDirectories; private final long timestamp; private List mutationResults; + private String workingDirectory; + + public String getWorkingDirectory() { + return workingDirectory; + } + + public void setWorkingDirectory(String workingDirectory) { + this.workingDirectory = workingDirectory; + } // this will also init the fielid mutationResults public List collectMutationsResults() throws Exception { @@ -202,6 +211,7 @@ public static String dumpPitestContext(PitestContext context) { command: %s processResult: %s pitestDependencies: %s + workingDirectory: %s """, context.getTestFilePath(), context.getFullyQualifiedTargetTestClassName(), @@ -213,7 +223,8 @@ public static String dumpPitestContext(PitestContext context) { context.getClasspathFile(), context.getCommand(), context.getProcessResult(), - context.getPitestDependencies() + context.getPitestDependencies(), + context.getWorkingDirectory() ); } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java index 653cf875..d4df33c5 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/ProcessExecutor.java @@ -8,10 +8,11 @@ import java.util.List; public class ProcessExecutor { - public static ProcessResult executeProcess(List command) { + public static ProcessResult executeProcess(List command, String workingDirectory) { try { ProcessBuilder builder = new ProcessBuilder(command); builder.environment().put("GRADLE_OPTS", "-Dorg.gradle.daemon=false -Dorg.gradle.debug=true"); + builder.directory(workingDirectory != null ? new java.io.File(workingDirectory) : null); Process process = builder.start(); StringBuilder output = new StringBuilder(); StringBuilder errorOutput = new StringBuilder(); diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index ac2f995f..af66f104 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -31,6 +31,12 @@ Change Notes +

1.0.8 - 2025-04-28

+
    +
  • Run pitest in the test file's source root as the process working directory
  • +
  • Dump pitest context into report directory for issue debug
  • +
  • Enhance output information for issue debug
  • +

1.0.7 - 2025-04-16

  • enhance the dump prompt to use compact prompt
  • From fec9beaf846fed1f42fd42613655c256528cbade Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 28 Apr 2025 18:20:21 +0800 Subject: [PATCH 07/25] update to plugin 2.0 --- build.gradle.kts | 146 +++++++++++++---------- gradle.properties | 12 +- gradle/libs.versions.toml | 19 ++- src/main/resources/META-INF/plugin.xml | 2 +- src/main/resources/META-INF/withJson.xml | 4 - 5 files changed, 102 insertions(+), 81 deletions(-) delete mode 100644 src/main/resources/META-INF/withJson.xml diff --git a/build.gradle.kts b/build.gradle.kts index c0651c65..d4b34f3c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,14 +1,14 @@ import org.jetbrains.changelog.Changelog import org.jetbrains.changelog.markdownToHTML +import org.jetbrains.intellij.platform.gradle.TestFrameworkType plugins { id("java") // Java support alias(libs.plugins.kotlin) // Kotlin support - alias(libs.plugins.gradleIntelliJPlugin) // IntelliJ Platform Gradle Plugin + alias(libs.plugins.intelliJPlatform) // IntelliJ Platform Gradle Plugin alias(libs.plugins.changelog) // Gradle Changelog Plugin alias(libs.plugins.qodana) // Gradle Qodana Plugin alias(libs.plugins.kover) // Gradle Kover Plugin - alias(libs.plugins.serialize) // Gradle Serializer Plugin } group = providers.gradleProperty("pluginGroup").get() @@ -16,29 +16,24 @@ version = providers.gradleProperty("pluginVersion").get() // Set the JVM language level used to build the project. kotlin { - jvmToolchain(17) + jvmToolchain(21) } // Configure project's dependencies repositories { mavenCentral() - maven { url = uri("https://www.jetbrains.com/intellij-repository/releases") } - maven { url = uri("https://cache-redirector.jetbrains.com/intellij-dependencies") } -} - -intellij { - pluginName.set(providers.gradleProperty("pluginName")) - version.set(providers.gradleProperty("platformVersion")) - type.set(providers.gradleProperty("platformType")) - plugins.set(providers.gradleProperty("platformBundledPlugins") - .map { it.split(',').map(String::trim).filter(String::isNotEmpty) } - ) + // IntelliJ Platform Gradle Plugin Repositories Extension - read more: https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-repositories-extension.html + intellijPlatform { + defaultRepositories() + } } // Dependencies are managed with Gradle version catalog - read more: https://docs.gradle.org/current/userguide/platforms.html#sub:version-catalog dependencies { testImplementation(libs.junit) + testImplementation(libs.opentest4j) + // Add Gradle Tooling API dependency implementation(fileTree("lib") { include("*.jar") }) implementation("com.github.javaparser:javaparser-core:3.24.2") // Add JavaParser dependency @@ -47,43 +42,30 @@ dependencies { implementation("com.fasterxml.jackson.core:jackson-databind:2.18.0") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2") // Use latest version implementation("org.commonmark:commonmark:0.21.0") -} -// Configure Gradle Changelog Plugin - read more: https://github.com/JetBrains/gradle-changelog-plugin -changelog { - groups.empty() - repositoryUrl = providers.gradleProperty("pluginRepositoryUrl") -} -// Configure Gradle Qodana Plugin - read more: https://github.com/JetBrains/gradle-qodana-plugin -qodana { - cachePath = provider { file(".qodana").canonicalPath } - reportPath = provider { file("build/reports/inspections").canonicalPath } - saveReport = true - showReport = System.getenv("QODANA_SHOW_REPORT")?.toBoolean() ?: false -} + // IntelliJ Platform Gradle Plugin Dependencies Extension - read more: https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-dependencies-extension.html + intellijPlatform { + create(providers.gradleProperty("platformType"), providers.gradleProperty("platformVersion")) -// Configure Gradle Kover Plugin - read more: https://github.com/Kotlin/kotlinx-kover#configuration -koverReport { - defaults { - xml { - onCheck = true - } - } -} + // Plugin Dependencies. Uses `platformBundledPlugins` property from the gradle.properties file for bundled IntelliJ Platform plugins. + bundledPlugins(providers.gradleProperty("platformBundledPlugins").map { it.split(',') }) -tasks { - wrapper { - gradleVersion = providers.gradleProperty("gradleVersion").get() + // Plugin Dependencies. Uses `platformPlugins` property from the gradle.properties file for plugin from JetBrains Marketplace. + plugins(providers.gradleProperty("platformPlugins").map { it.split(',') }) + + testFramework(TestFrameworkType.Platform) } +} - patchPluginXml { - version.set(providers.gradleProperty("pluginVersion")) - sinceBuild.set(providers.gradleProperty("pluginSinceBuild")) - untilBuild.set(providers.gradleProperty("pluginUntilBuild")) +// Configure IntelliJ Platform Gradle Plugin - read more: https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-extension.html +intellijPlatform { + pluginConfiguration { + name = providers.gradleProperty("pluginName") + version = providers.gradleProperty("pluginVersion") // Extract the section from README.md and provide for the plugin's manifest - pluginDescription = providers.fileContents(layout.projectDirectory.file("README.md")).asText.map { + description = providers.fileContents(layout.projectDirectory.file("README.md")).asText.map { val start = "" val end = "" @@ -107,34 +89,78 @@ tasks { ) } } - } - // Configure UI tests plugin - // Read more: https://github.com/JetBrains/intellij-ui-test-robot - runIdeForUiTests { - systemProperty("robot-server.port", "8082") - systemProperty("ide.mac.message.dialogs.as.sheets", "false") - systemProperty("jb.privacy.policy.text", "") - systemProperty("jb.consents.confirmation.enabled", "false") + ideaVersion { + sinceBuild = providers.gradleProperty("pluginSinceBuild") + untilBuild = providers.gradleProperty("pluginUntilBuild") + } } - signPlugin { - certificateChain = System.getenv("CERTIFICATE_CHAIN") - privateKey = System.getenv("PRIVATE_KEY") - password = System.getenv("PRIVATE_KEY_PASSWORD") + signing { + certificateChain = providers.environmentVariable("CERTIFICATE_CHAIN") + privateKey = providers.environmentVariable("PRIVATE_KEY") + password = providers.environmentVariable("PRIVATE_KEY_PASSWORD") } - publishPlugin { - dependsOn("patchChangelog") - token = System.getenv("PUBLISH_TOKEN") + publishing { + token = providers.environmentVariable("PUBLISH_TOKEN") // The pluginVersion is based on the SemVer (https://semver.org) and supports pre-release labels, like 2.1.7-alpha.3 // Specify pre-release label to publish the plugin in a custom Release Channel automatically. Read more: // https://plugins.jetbrains.com/docs/intellij/deployment.html#specifying-a-release-channel channels = providers.gradleProperty("pluginVersion").map { listOf(it.substringAfter('-', "").substringBefore('.').ifEmpty { "default" }) } } - // Force English locale for development and testing + pluginVerification { + ides { + recommended() + } + } +} + +// Configure Gradle Changelog Plugin - read more: https://github.com/JetBrains/gradle-changelog-plugin +changelog { + groups.empty() + repositoryUrl = providers.gradleProperty("pluginRepositoryUrl") +} + +// Configure Gradle Kover Plugin - read more: https://github.com/Kotlin/kotlinx-kover#configuration +kover { + reports { + total { + xml { + onCheck = true + } + } + } +} + +tasks { + wrapper { + gradleVersion = providers.gradleProperty("gradleVersion").get() + } + + publishPlugin { + dependsOn(patchChangelog) + } +} + +intellijPlatformTesting { runIde { - jvmArgs("-Duser.language=zh", "-Duser.country=CN") + register("runIdeForUiTests") { + task { + jvmArgumentProviders += CommandLineArgumentProvider { + listOf( + "-Drobot-server.port=8082", + "-Dide.mac.message.dialogs.as.sheets=false", + "-Djb.privacy.policy.text=", + "-Djb.consents.confirmation.enabled=false", + ) + } + } + + plugins { + robotServerPlugin() + } + } } } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 8b55373b..859c401f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,25 +5,25 @@ pluginName = TestCraft-Pro pluginRepositoryUrl = https://github.com/jaksonlin/testcraft-pro # SemVer format -> https://semver.org -pluginVersion = 1.0.8 +pluginVersion = 1.0.9 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html pluginSinceBuild = 201 -pluginUntilBuild = 243.* +pluginUntilBuild = 252.* # IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension platformType = IC -platformVersion = 2022.2 +platformVersion = 2025.1 # Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html # Example: platformPlugins = com.jetbrains.php:203.4449.22, org.intellij.scala:2023.3.27@EAP platformPlugins = # Example: platformBundledPlugins = com.intellij.java -platformBundledPlugins = com.intellij.java, com.intellij.gradle, com.intellij.java, Git4Idea +platformBundledPlugins = com.intellij.java, com.intellij.gradle, com.intellij.java, Git4Idea, com.intellij.modules.json # Gradle Releases -> https://github.com/gradle/gradle/releases -gradleVersion = 8.9 +gradleVersion = 8.13 # Opt-out flag for bundling Kotlin standard library -> https://jb.gg/intellij-platform-kotlin-stdlib kotlin.stdlib.default.dependency = false @@ -32,4 +32,4 @@ kotlin.stdlib.default.dependency = false org.gradle.configuration-cache = true # Enable Gradle Build Cache -> https://docs.gradle.org/current/userguide/build_cache.html -org.gradle.caching = true +org.gradle.caching = true \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6293ac1f..22f6abe7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,23 +1,22 @@ [versions] # libraries junit = "4.13.2" -annotations = "24.0.1" +opentest4j = "1.3.0" # plugins -kotlin = "1.9.25" -changelog = "2.1.2" -gradleIntelliJPlugin = "1.17.4" -qodana = "0.1.13" -kover = "0.7.3" +changelog = "2.2.1" +intelliJPlatform = "2.5.0" +kotlin = "2.1.20" +kover = "0.9.1" +qodana = "2024.3.4" [libraries] junit = { group = "junit", name = "junit", version.ref = "junit" } -annotations = { group = "org.jetbrains", name = "annotations", version.ref = "annotations" } +opentest4j = { group = "org.opentest4j", name = "opentest4j", version.ref = "opentest4j" } [plugins] changelog = { id = "org.jetbrains.changelog", version.ref = "changelog" } -gradleIntelliJPlugin = { id = "org.jetbrains.intellij", version.ref = "gradleIntelliJPlugin" } +intelliJPlatform = { id = "org.jetbrains.intellij.platform", version.ref = "intelliJPlatform" } kotlin = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover" } -qodana = { id = "org.jetbrains.qodana", version.ref = "qodana" } -serialize = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } +qodana = { id = "org.jetbrains.qodana", version.ref = "qodana" } \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index af66f104..32265543 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -83,7 +83,7 @@ com.intellij.modules.platform com.intellij.modules.java com.intellij.modules.lang - com.intellij.modules.json + com.intellij.modules.json Git4Idea messages.MyBundle diff --git a/src/main/resources/META-INF/withJson.xml b/src/main/resources/META-INF/withJson.xml deleted file mode 100644 index c4b32869..00000000 --- a/src/main/resources/META-INF/withJson.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - From ed1bcb7a4908a17bdfaafafe17fd4837fcae6421 Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 09:44:48 +0800 Subject: [PATCH 08/25] backward to jvm11 --- build.gradle.kts | 8 + .../annotations/AnnotationSchema.java | 468 +++++++++--------- .../components/LLMResponsePanel.java | 186 +++---- .../testcraft/context/PitestContext.java | 39 +- .../testcraft/context/UnittestCase.java | 3 +- 5 files changed, 332 insertions(+), 372 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index d4b34f3c..154f9e01 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -19,6 +19,14 @@ kotlin { jvmToolchain(21) } +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of(21)) // Use JDK 21 + } + sourceCompatibility = JavaVersion.VERSION_1_8 // Generate bytecode for Java 11 + targetCompatibility = JavaVersion.VERSION_1_8 +}S + // Configure project's dependencies repositories { mavenCentral() diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java index 3576de01..13e094db 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java +++ b/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java @@ -10,241 +10,239 @@ public class AnnotationSchema { private String annotationClassName; private List fields; - public static final String DEFAULT_SCHEMA = """ - { - "annotationClassName": "UnittestCaseInfo", - "fields": [ - { - "name": "author", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "FIRST_CREATOR_AUTHOR" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "title", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "METHOD_NAME_BASED" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "targetClass", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "CLASS_NAME" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "targetMethod", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "METHOD_NAME" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "lastUpdateTime", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "LAST_MODIFIER_TIME", - "format": "yyyy-MM-dd HH:mm:ss" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "lastUpdateAuthor", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "LAST_MODIFIER_AUTHOR" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "methodSignature", - "type": "STRING", - "required": true, - "valueProvider": { - "type": "METHOD_SIGNATURE" - }, - "validation": { - "allowEmpty": false - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "testPoints", - "type": "STRING_LIST", - "required": false, - "valueProvider": { - "type": "FIXED_VALUE", - "value": ["Functionality"] - }, - "defaultValue": { - "type": "StringListValue", - "value": [] - }, - "validation": { - "validValues": [ - "BoundaryValue", - "NonEmpty", - "ErrorHandling", - "InputValidation", - "PositiveScenario", - "NegativeScenario", - "EdgeCase", - "Functionality", - "BusinessLogicValidation", - "BusinessInputOutput", - "SideEffects", - "StateTransition", - "BusinessCalculation", - "Security", - "Performance" - ], - "allowCustomValues": true, - "mode": "CONTAINS", - "allowEmpty": true - } - }, - { - "name": "status", - "type": "STRING", - "required": false, - "valueProvider": { - "type": "FIXED_VALUE", - "value": "TODO" - }, - "defaultValue": { - "type": "StringValue", - "value": "TODO" - }, - "validation": { - "validValues": [ - "TODO", - "IN_PROGRESS", - "DONE", - "BLOCKED" - ], - "allowCustomValues": false, - "mode": "EXACT", - "allowEmpty": false - } - }, - { - "name": "description", - "type": "STRING", - "required": false, - "valueProvider": { - "type": "METHOD_NAME_BASED" - }, - "validation": { - "allowEmpty": true - }, - "defaultValue": { - "type": "StringValue", - "value": "" - } - }, - { - "name": "tags", - "type": "STRING_LIST", - "required": false, - "defaultValue": { - "type": "StringListValue", - "value": [] - }, - "validation": { - "allowEmpty": true - } - }, - { - "name": "relatedRequirements", - "type": "STRING_LIST", - "required": false, - "defaultValue": { - "type": "StringListValue", - "value": [] - }, - "validation": { - "allowEmpty": true - } - }, - { - "name": "relatedTestcases", - "type": "STRING_LIST", - "required": false, - "defaultValue": { - "type": "StringListValue", - "value": [] - }, - "validation": { - "allowEmpty": true - } - }, - { - "name": "relatedDefects", - "type": "STRING_LIST", - "required": false, - "defaultValue": { - "type": "StringListValue", - "value": [] - }, - "validation": { - "allowEmpty": true - } - } - ] - } - """; + public static final String DEFAULT_SCHEMA = "{\n" + + " \"annotationClassName\": \"UnittestCaseInfo\",\n" + + " \"fields\": [\n" + + " {\n" + + " \"name\": \"author\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"FIRST_CREATOR_AUTHOR\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"title\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"METHOD_NAME_BASED\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"targetClass\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"CLASS_NAME\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"targetMethod\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"METHOD_NAME\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"lastUpdateTime\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"LAST_MODIFIER_TIME\",\n" + + " \"format\": \"yyyy-MM-dd HH:mm:ss\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"lastUpdateAuthor\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"LAST_MODIFIER_AUTHOR\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"methodSignature\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": true,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"METHOD_SIGNATURE\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": false\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"testPoints\",\n" + + " \"type\": \"STRING_LIST\",\n" + + " \"required\": false,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"FIXED_VALUE\",\n" + + " \"value\": [\"Functionality\"]\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringListValue\",\n" + + " \"value\": []\n" + + " },\n" + + " \"validation\": {\n" + + " \"validValues\": [\n" + + " \"BoundaryValue\",\n" + + " \"NonEmpty\",\n" + + " \"ErrorHandling\",\n" + + " \"InputValidation\",\n" + + " \"PositiveScenario\",\n" + + " \"NegativeScenario\",\n" + + " \"EdgeCase\",\n" + + " \"Functionality\",\n" + + " \"BusinessLogicValidation\",\n" + + " \"BusinessInputOutput\",\n" + + " \"SideEffects\",\n" + + " \"StateTransition\",\n" + + " \"BusinessCalculation\",\n" + + " \"Security\",\n" + + " \"Performance\"\n" + + " ],\n" + + " \"allowCustomValues\": true,\n" + + " \"mode\": \"CONTAINS\",\n" + + " \"allowEmpty\": true\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"status\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": false,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"FIXED_VALUE\",\n" + + " \"value\": \"TODO\"\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"TODO\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"validValues\": [\n" + + " \"TODO\",\n" + + " \"IN_PROGRESS\",\n" + + " \"DONE\",\n" + + " \"BLOCKED\"\n" + + " ],\n" + + " \"allowCustomValues\": false,\n" + + " \"mode\": \"EXACT\",\n" + + " \"allowEmpty\": false\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"description\",\n" + + " \"type\": \"STRING\",\n" + + " \"required\": false,\n" + + " \"valueProvider\": {\n" + + " \"type\": \"METHOD_NAME_BASED\"\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": true\n" + + " },\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringValue\",\n" + + " \"value\": \"\"\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"tags\",\n" + + " \"type\": \"STRING_LIST\",\n" + + " \"required\": false,\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringListValue\",\n" + + " \"value\": []\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": true\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"relatedRequirements\",\n" + + " \"type\": \"STRING_LIST\",\n" + + " \"required\": false,\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringListValue\",\n" + + " \"value\": []\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": true\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"relatedTestcases\",\n" + + " \"type\": \"STRING_LIST\",\n" + + " \"required\": false,\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringListValue\",\n" + + " \"value\": []\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": true\n" + + " }\n" + + " },\n" + + " {\n" + + " \"name\": \"relatedDefects\",\n" + + " \"type\": \"STRING_LIST\",\n" + + " \"required\": false,\n" + + " \"defaultValue\": {\n" + + " \"type\": \"StringListValue\",\n" + + " \"value\": []\n" + + " },\n" + + " \"validation\": {\n" + + " \"allowEmpty\": true\n" + + " }\n" + + " }\n" + + " ]\n" + + "}"; public AnnotationSchema() { } diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java index f820a224..db50995f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java @@ -49,29 +49,27 @@ private static ResourceBundle getBundle() { private final Timer loadingTimer; private final JLabel loadingLabel; - private static final String BASE_HTML_TEMPLATE = """ - - - - - - -
    - %s -
    - - - """; + private static final String BASE_HTML_TEMPLATE = + "\n" + + "\n" + + "\n" + + " \n" + + "\n" + + "\n" + + "
    \n" + + " %s\n" + + "
    \n" + + "\n" + + ""; - private static final String MESSAGE_TEMPLATE = """ -
    -
    %s
    -
    %s
    -
    -
    - """; + private static final String MESSAGE_TEMPLATE = + "
    \n" + + "
    %s
    \n" + + "
    %s
    \n" + + "
    \n" + + "
    "; public interface ResponseActionListener { void onClearButtonClick(); @@ -187,93 +185,63 @@ private String getCodeStyle() { String linkColor = isDarkTheme ? "#589df6" : "#2470B3"; String separatorColor = isDarkTheme ? "#3c3f41" : "#e0e0e0"; - return String.format(""" - body { - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; - font-size: 13pt; - margin: 10px; - line-height: 1.4; - background-color: %s; - color: %s; - } - #chat-container { - display: flex; - flex-direction: column; - gap: 0.5em; - } - .message { - border-radius: 8px; - padding: 12px; - } - .message.user { - background-color: %s; - margin-left: 20%%; - } - .message.assistant { - background-color: %s; - margin-right: 20%%; - } - .message.system { - background-color: %s; - text-align: center; - font-style: italic; - } - .message-header { - font-weight: bold; - margin-bottom: 4px; - color: %s; - } - .message-content { - white-space: pre-wrap; - } - .message-separator { - height: 1px; - background-color: %s; - margin: 10px 0; - } - pre { - background-color: %s; - padding: 16px; - border-radius: 6px; - margin: 1em 0; - border: 1px solid %s; - overflow: auto; - } - code { - font-family: "JetBrains Mono", "Fira Code", Consolas, Monaco, "Courier New", monospace; - font-size: 12pt; - color: %s; - } - a { color: %s; } - .keyword { color: %s; } - .string { color: %s; } - .comment { color: %s; font-style: italic; } - .number { color: %s; } - .annotation { color: %s; } - .type { color: %s; } - .method { color: %s; } - .field { color: %s; } - .constant { color: %s; } - .package { color: %s; } - """, - backgroundColor, textColor, - isDarkTheme ? "#2d2d2d" : "#e3f2fd", // user message background - isDarkTheme ? "#1e1e1e" : "#f5f5f5", // assistant message background - isDarkTheme ? "#2d2d2d" : "#e8f5e9", // system message background - textColor, - separatorColor, // separator color - codeBackground, codeBorder, textColor, linkColor, - isDarkTheme ? "#cc7832" : "#d73a49", // keyword - isDarkTheme ? "#6a8759" : "#032f62", // string - isDarkTheme ? "#808080" : "#6a737d", // comment - isDarkTheme ? "#6897bb" : "#005cc5", // number - isDarkTheme ? "#bbb529" : "#e36209", // annotation - isDarkTheme ? "#ffc66d" : "#6f42c1", // type - isDarkTheme ? "#ffc66d" : "#6f42c1", // method - isDarkTheme ? "#9876aa" : "#005cc5", // field - isDarkTheme ? "#9876aa" : "#005cc5", // constant - isDarkTheme ? "#a9b7c6" : "#22863a" // package - ); + return "body {\n" + + " font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n" + + " font-size: 13pt;\n" + + " margin: 10px;\n" + + " line-height: 1.4;\n" + + " background-color: " + backgroundColor + ";\n" + + " color: " + textColor + ";\n" + + "}\n" + + "#chat-container {\n" + + " display: flex;\n" + + " flex-direction: column;\n" + + " gap: 0.5em;\n" + + "}\n" + + ".message {\n" + + " border-radius: 8px;\n" + + " padding: 12px;\n" + + "}\n" + + ".message.user {\n" + + " background-color: " + (isDarkTheme ? "#2d2d2d" : "#e3f2fd") + ";\n" + + " margin-left: 20%;\n" + + "}\n" + + ".message.assistant {\n" + + " background-color: " + (isDarkTheme ? "#1e1e1e" : "#f5f5f5") + ";\n" + + " margin-right: 20%;\n" + + "}\n" + + ".message.system {\n" + + " background-color: " + (isDarkTheme ? "#2d2d2d" : "#e8f5e9") + ";\n" + + " text-align: center;\n" + + " font-style: italic;\n" + + "}\n" + + ".message-header {\n" + + " font-weight: bold;\n" + + " margin-bottom: 4px;\n" + + " color: " + textColor + ";\n" + + "}\n" + + ".message-content {\n" + + " white-space: pre-wrap;\n" + + "}\n" + + ".message-separator {\n" + + " height: 1px;\n" + + " background-color: " + separatorColor + ";\n" + + " margin: 10px 0;\n" + + "}\n" + + "pre {\n" + + " background-color: " + codeBackground + ";\n" + + " padding: 16px;\n" + + " border-radius: 6px;\n" + + " margin: 1em 0;\n" + + " border: 1px solid " + codeBorder + ";\n" + + " overflow: auto;\n" + + "}\n" + + "code {\n" + + " font-family: \"JetBrains Mono\", \"Fira Code\", Consolas, Monaco, \"Courier New\", monospace;\n" + + " font-size: 12pt;\n" + + " color: " + textColor + ";\n" + + "}\n" + + "a { color: " + linkColor + "; }\n"; } private void startLoading() { diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java index e06efbcd..99a27c2c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java @@ -199,32 +199,17 @@ public long getTimestamp() { } public static String dumpPitestContext(PitestContext context) { - return String.format(""" - testVirtualFile: %s - fullyQualifiedTargetTestClassName: %s - javaHome: %s - sourceRoots: %s - fullyQualifiedTargetClassName: %s - targetClassSourceRoot: %s - reportDirectory: %s - classpathFile: %s - command: %s - processResult: %s - pitestDependencies: %s - workingDirectory: %s - """, - context.getTestFilePath(), - context.getFullyQualifiedTargetTestClassName(), - context.getJavaHome(), - context.getSourceRoots(), - context.getTargetClassFullyQualifiedName(), - context.getTargetClassSourceRoot(), - context.getReportDirectory(), - context.getClasspathFile(), - context.getCommand(), - context.getProcessResult(), - context.getPitestDependencies(), - context.getWorkingDirectory() - ); + return "testVirtualFile: " + context.getTestFilePath() + "\n" + + "fullyQualifiedTargetTestClassName: " + context.getFullyQualifiedTargetTestClassName() + "\n" + + "javaHome: " + context.getJavaHome() + "\n" + + "sourceRoots: " + context.getSourceRoots() + "\n" + + "fullyQualifiedTargetClassName: " + context.getTargetClassFullyQualifiedName() + "\n" + + "targetClassSourceRoot: " + context.getTargetClassSourceRoot() + "\n" + + "reportDirectory: " + context.getReportDirectory() + "\n" + + "classpathFile: " + context.getClasspathFile() + "\n" + + "command: " + context.getCommand() + "\n" + + "processResult: " + context.getProcessResult() + "\n" + + "pitestDependencies: " + context.getPitestDependencies() + "\n" + + "workingDirectory: " + context.getWorkingDirectory(); } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java index 2b2b9179..0c0d5688 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java @@ -18,7 +18,8 @@ public String getString(String key) { public List getStringList(String key) { Object value = values.get(key); - if (value instanceof List list) { + if (value instanceof List) { + List list = (List) value; if (list.isEmpty() || list.get(0) instanceof String) { return (List) value; } From 0ded4b041377865dc1642bd797eaf4b2f729d01b Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 09:52:45 +0800 Subject: [PATCH 09/25] update support back to 1.8 --- build.gradle.kts | 2 +- .../testcraft/completions/AnnotationCompletionContributor.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 154f9e01..38d26f53 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -25,7 +25,7 @@ java { } sourceCompatibility = JavaVersion.VERSION_1_8 // Generate bytecode for Java 11 targetCompatibility = JavaVersion.VERSION_1_8 -}S +} // Configure project's dependencies repositories { diff --git a/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java b/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java index fea01128..e3073afc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java @@ -27,7 +27,7 @@ public AnnotationCompletionContributor() { PlatformPatterns.psiElement() .inside(PsiAnnotation.class) .withLanguage(JavaLanguage.INSTANCE), - new CompletionProvider<>() { + new CompletionProvider() { @Override protected void addCompletions(@NotNull CompletionParameters parameters, @NotNull ProcessingContext context, @NotNull CompletionResultSet result) { PsiAnnotation annotation = PsiTreeUtil.getParentOfType(parameters.getPosition(), PsiAnnotation.class); From a637b764d92be38155a822e65d3e0c304996289e Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 09:59:29 +0800 Subject: [PATCH 10/25] update readme --- CHANGELOG.md | 3 +++ src/main/resources/META-INF/plugin.xml | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce2dbe4c..1a9a2f6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -68,3 +68,6 @@ - Dump pitest context into report directory for issue debug - Enhance output information for issue debug +## 1.0.9 - 2025-04-30 +- bugfix, backward compatibility to JDK1.8 support to run in older IntelliJ IDEA version +- upload to pitest-gradle also, for pitest-gradle user, please uninstall pitest-gradle plugin and reinstall the new one manged in [testcraft](https://plugins.jetbrains.com/plugin/27221-testcraft-pro). diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 32265543..84a08376 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -31,6 +31,11 @@ Change Notes +

    1.0.9 - 2025-04-30

    +
      +
    • bugfix, backward compatibility to JDK1.8 support to run in older IntelliJ IDEA version
    • +
    • upload to pitest-gradle also, for pitest-gradle user, please uninstall pitest-gradle plugin and reinstall the new one manged in [testcraft](https://plugins.jetbrains.com/plugin/27221-testcraft-pro).
    • +

    1.0.8 - 2025-04-28

    • Run pitest in the test file's source root as the process working directory
    • From cbda31a083d21d8c8d646c64babb34a34915e38e Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 13:56:48 +0800 Subject: [PATCH 11/25] add utf-8 encoding config --- build.gradle.kts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/build.gradle.kts b/build.gradle.kts index 38d26f53..4c58ef3d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -11,6 +11,11 @@ plugins { alias(libs.plugins.kover) // Gradle Kover Plugin } +// utf-8 +tasks.withType { + options.encoding = "UTF-8" +} + group = providers.gradleProperty("pluginGroup").get() version = providers.gradleProperty("pluginVersion").get() @@ -63,6 +68,9 @@ dependencies { plugins(providers.gradleProperty("platformPlugins").map { it.split(',') }) testFramework(TestFrameworkType.Platform) + + bundledPlugin("com.intellij.modules.json") + } } From 77376863bfc3052f74c09e173f0a29f057ce4a3c Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 18:34:26 +0800 Subject: [PATCH 12/25] update folder scan for invalid testcases --- build.gradle.kts | 2 +- .../actions/CheckInvalidTestCasesAction.java | 48 ++++ .../commands/testscan/CollectScanCommand.java | 4 + .../UnittestCaseCheckCommand.java | 2 +- .../UnittestFileBatchScanCommand.java | 214 ++++++++++++++++++ .../UnittestFileInspectorCommand.java | 20 +- .../CheckAnnotationCommand.java | 1 + .../CheckMethodDataCommand.java | 1 + .../GenerateAnnotationCommand.java | 1 + .../components/LLMResponsePanel.java | 12 +- .../inspectors/UnittestInspector.java | 2 +- src/main/resources/META-INF/plugin.xml | 10 +- .../resources/messages/MyBundle.properties | 1 + .../messages/MyBundle_zh_CN.properties | 1 + 14 files changed, 305 insertions(+), 14 deletions(-) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/commands/{unittestannotations => testscan}/UnittestCaseCheckCommand.java (98%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/commands/{unittestannotations => testscan}/UnittestFileInspectorCommand.java (88%) diff --git a/build.gradle.kts b/build.gradle.kts index 4c58ef3d..11d3d0b7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -28,7 +28,7 @@ java { toolchain { languageVersion.set(JavaLanguageVersion.of(21)) // Use JDK 21 } - sourceCompatibility = JavaVersion.VERSION_1_8 // Generate bytecode for Java 11 + sourceCompatibility = JavaVersion.VERSION_1_8 // Generate bytecode for Java 8 targetCompatibility = JavaVersion.VERSION_1_8 } diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java b/src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java new file mode 100644 index 00000000..eabc0e10 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java @@ -0,0 +1,48 @@ +package com.github.jaksonlin.testcraft.actions; + +import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileBatchScanCommand; +import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileInspectorCommand; +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; +import com.intellij.codeInspection.*; +import com.intellij.openapi.actionSystem.AnAction; +import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.vfs.LocalFileSystem; +import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.psi.*; +import com.intellij.psi.util.PsiTreeUtil; +import org.jetbrains.annotations.NotNull; +import com.intellij.openapi.actionSystem.CommonDataKeys; + +import java.util.*; + +public class CheckInvalidTestCasesAction extends AnAction { + + + @Override + public void actionPerformed(@NotNull AnActionEvent e) { + Project project = e.getProject(); + if (project == null) return; + + InvalidTestCaseConfigService configService = ApplicationManager.getApplication().getService(InvalidTestCaseConfigService.class); + if (!configService.isEnable()) { + Messages.showInfoMessage( + project, + "Test case validation is disabled. Please enable it in Settings → TestCraft → Test Case Validation", + "Test Case Validation Disabled" + ); + return; + } + + UnittestFileBatchScanCommand batchScanCommand = new UnittestFileBatchScanCommand(project, e); + batchScanCommand.execute(); + } + + + + + +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java new file mode 100644 index 00000000..57718b05 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java @@ -0,0 +1,4 @@ +package com.github.jaksonlin.testcraft.commands.testscan; + +public class CollectScanCommand { +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java index 89b26666..3d4f75d2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestCaseCheckCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.testscan; import com.github.jaksonlin.testcraft.MyBundle; import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java new file mode 100644 index 00000000..33f5ca53 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java @@ -0,0 +1,214 @@ +package com.github.jaksonlin.testcraft.commands.testscan; + +import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.intellij.codeInspection.InspectionManager; +import com.intellij.codeInspection.ProblemsHolder; +import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.actionSystem.CommonDataKeys; +import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.ReadAction; +import com.intellij.openapi.progress.ProgressIndicator; +import com.intellij.openapi.progress.Task; +import com.intellij.openapi.project.Project; +import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.vfs.LocalFileSystem; +import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.psi.*; +import com.intellij.psi.util.PsiTreeUtil; +import org.jetbrains.annotations.NotNull; + +import java.util.*; + +public class UnittestFileBatchScanCommand { + private final Set testAnnotations = new HashSet<>(Arrays.asList( + "org.junit.Test", + "org.junit.jupiter.api.Test", + "Test" + )); + + private final Project project; + private final AnActionEvent e; + + public UnittestFileBatchScanCommand(Project project, AnActionEvent e) { + this.project = project; + this.e = e; + } + + public void execute() { + new Task.Backgroundable(project, "Scanning Test Cases", false) { + private List invalidTests = new ArrayList<>(); + + @Override + public void run(@NotNull ProgressIndicator indicator) { + indicator.setIndeterminate(false); + indicator.setText("Finding test classes..."); + + List testClasses = ReadAction.compute(() -> findTestClasses()); + if (testClasses.isEmpty()) { + return; + } + + indicator.setText("Checking test cases..."); + indicator.setFraction(0.0); + double progressStep = 1.0 / testClasses.size(); + + InspectionManager inspectionManager = InspectionManager.getInstance(project); + + for (PsiClass testClass : testClasses) { + if (indicator.isCanceled()) { + break; + } + + final PsiClass finalTestClass = testClass; + String qualifiedName = ReadAction.compute(() -> finalTestClass.getQualifiedName()); + indicator.setText2("Checking " + qualifiedName); + + ReadAction.run(() -> { + for (PsiMethod method : testClass.getMethods()) { + if (isTestMethod(method)) { + CaseCheckContext caseContext = CaseCheckContext.create(method, testClass); + ProblemsHolder holder = new ProblemsHolder(inspectionManager, method.getContainingFile(), true); + UnittestFileInspectorCommand command = new UnittestFileInspectorCommand(holder, project, caseContext); + command.execute(); + + if (holder.hasResults()) { + String methodName = method.getName(); + invalidTests.add(String.format("%s.%s", qualifiedName, methodName)); + } + } + } + }); + + indicator.setFraction(indicator.getFraction() + progressStep); + } + } + + @Override + public void onSuccess() { + if (invalidTests.isEmpty()) { + Messages.showInfoMessage(project, "No invalid test cases found.", "Test Case Validation Results"); + } else { + StringBuilder message = new StringBuilder(); + message.append(String.format("Found %d invalid test cases:\n\n", invalidTests.size())); + for (String test : invalidTests) { + message.append(String.format("- %s\n", test)); + } + Messages.showWarningDialog(project, message.toString(), "Test Case Validation Results"); + } + } + + @Override + public void onCancel() { + Messages.showInfoMessage(project, "Test case validation was canceled.", "Test Case Validation Canceled"); + } + }.queue(); + } + + private List findTestClasses() { + List testClasses = new ArrayList<>(); + PsiManager psiManager = PsiManager.getInstance(project); + + // Get the context from the action event + PsiElement element = e.getData(CommonDataKeys.PSI_ELEMENT); + VirtualFile file = e.getData(CommonDataKeys.VIRTUAL_FILE); + + if (element != null) { + // If triggered from a file or directory in the project view + if (element instanceof PsiFile) { + PsiFile psiFile = (PsiFile) element; + if (psiFile.getName().endsWith(".java")) { + PsiClass[] classes = PsiTreeUtil.getChildrenOfType(psiFile, PsiClass.class); + if (classes != null) { + for (PsiClass psiClass : classes) { + if (isTestClass(psiClass)) { + testClasses.add(psiClass); + } + } + } + } + } else if (element instanceof PsiDirectory) { + // If triggered from a directory, scan that directory + findTestClassesInDirectory((PsiDirectory) element, testClasses); + } + } else if (file != null) { + // If triggered from a file in the editor + if (file.getName().endsWith(".java")) { + PsiFile psiFile = psiManager.findFile(file); + if (psiFile != null) { + PsiClass[] classes = PsiTreeUtil.getChildrenOfType(psiFile, PsiClass.class); + if (classes != null) { + for (PsiClass psiClass : classes) { + if (isTestClass(psiClass)) { + testClasses.add(psiClass); + } + } + } + } + } + } else { + // If no specific context, scan the entire project + VirtualFile baseDir = LocalFileSystem.getInstance().findFileByPath(Objects.requireNonNull(project.getBasePath())); + if (baseDir != null) { + VirtualFile[] children = baseDir.getChildren(); + for (VirtualFile child : children) { + if (child.isDirectory() && (child.getName().equals("src") || child.getName().equals("test"))) { + findTestClassesInDirectory(psiManager.findDirectory(child), testClasses); + } + } + } + } + + return testClasses; + } + + private boolean isTestClass(PsiClass psiClass) { + // Check if class has test annotations + for (PsiAnnotation annotation : psiClass.getAnnotations()) { + if (annotation.getQualifiedName() != null && + (annotation.getQualifiedName().contains("Test") || + annotation.getQualifiedName().contains("RunWith"))) { + return true; + } + } + + // Check if class has test methods + for (PsiMethod method : psiClass.getMethods()) { + if (isTestMethod(method)) { + return true; + } + } + + return false; + } + + private boolean isTestMethod(PsiMethod method) { + for (PsiAnnotation annotation : method.getAnnotations()) { + if (annotation.getQualifiedName() != null && testAnnotations.contains(annotation.getQualifiedName())) { + return true; + } + } + return false; + } + + private void findTestClassesInDirectory(PsiDirectory directory, List testClasses) { + if (directory == null) return; + + for (PsiElement child : directory.getChildren()) { + if (child instanceof PsiDirectory) { + findTestClassesInDirectory((PsiDirectory) child, testClasses); + } else if (child instanceof PsiFile) { + PsiFile file = (PsiFile) child; + if (file.getName().endsWith(".java")) { + PsiClass[] classes = PsiTreeUtil.getChildrenOfType(file, PsiClass.class); + if (classes != null) { + for (PsiClass psiClass : classes) { + if (isTestClass(psiClass)) { + testClasses.add(psiClass); + } + } + } + } + } + } + } +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java similarity index 88% rename from src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java index b2bc9453..91622536 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/UnittestFileInspectorCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.commands.unittestannotations; +package com.github.jaksonlin.testcraft.commands.testscan; import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.github.jaksonlin.testcraft.services.AnnotationConfigService; @@ -18,6 +18,7 @@ import java.util.Optional; import java.util.Stack; +// this is inspector command for unittest file scan public class UnittestFileInspectorCommand extends UnittestCaseCheckCommand { private final ProblemsHolder holder; private final InvalidTestCaseConfigService invalidTestCaseConfigService = ApplicationManager.getApplication().getService(InvalidTestCaseConfigService.class); @@ -28,6 +29,13 @@ public UnittestFileInspectorCommand(ProblemsHolder holder, Project project, Case this.holder = holder; } + private void reportError(String message, ProblemHighlightType highlightType) { + if (holder == null) { + return; + } + holder.registerProblem(getContext().getPsiMethod(), message, highlightType); + } + @Override public void execute() { if (annotationConfigService.shouldCheckAnnotation()) { @@ -51,12 +59,12 @@ private void checkAnnotationSchema(PsiMethod psiMethod) { try { PsiAnnotation annotation = findTargetAnnotation(psiMethod, getContext().getSchema()); if (annotation == null) { - holder.registerProblem(getContext().getPsiMethod(), "No unittest case management annotation found", ProblemHighlightType.WARNING); + reportError("No unittest case management annotation found", ProblemHighlightType.WARNING); return; } parseUnittestCaseFromAnnotations(annotation); } catch (Exception e) { - holder.registerProblem(getContext().getPsiMethod(), e.getMessage() != null ? e.getMessage() : "Unknown error", ProblemHighlightType.WARNING); + reportError(e.getMessage() != null ? e.getMessage() : "Unknown error", ProblemHighlightType.WARNING); } } @@ -72,7 +80,7 @@ private void checkIfCommentHasStepAndAssert(PsiMethod psiMethod) { } } if (!hasStep || !hasAssert) { - holder.registerProblem(psiMethod, "Method should contains both step and assert comment", ProblemHighlightType.WARNING); + reportError("Method should contains both step and assert comment", ProblemHighlightType.WARNING); } } @@ -88,7 +96,7 @@ private void checkIfthereIsAssertionStatement(PsiMethod psiMethod) { return; } - holder.registerProblem(psiMethod, "Method should contains assert statement", ProblemHighlightType.ERROR); + reportError("Method should contains assert statement", ProblemHighlightType.ERROR); } @@ -159,7 +167,7 @@ private void checkIfValidAssertionStatement(PsiMethod psiMethod) { String methodText = assertionMethod.get().getText(); for (String invalidAssertion : invalidAssertions) { if (methodText.contains(invalidAssertion)) { - holder.registerProblem(psiMethod, "Method should contains valid assert statement", ProblemHighlightType.ERROR); + reportError( "Method should contains valid assert statement", ProblemHighlightType.ERROR); return; } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java index 7db22666..16a391b1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java @@ -2,6 +2,7 @@ import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.github.jaksonlin.testcraft.context.UnittestCase; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java index 6c74d9f6..e6fe50d7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java @@ -1,5 +1,6 @@ package com.github.jaksonlin.testcraft.commands.unittestannotations; +import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java index 33508b4d..36f3abce 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java @@ -5,6 +5,7 @@ import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; import com.github.jaksonlin.testcraft.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.github.jaksonlin.testcraft.services.AnnotationConfigService; import com.github.jaksonlin.testcraft.services.AnnotationValueProviderService; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java index db50995f..f70e4dc1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java @@ -244,6 +244,14 @@ private String getCodeStyle() { "a { color: " + linkColor + "; }\n"; } + private String repeatString(String str, int count) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < count; i++) { + sb.append(str); + } + return sb.toString(); + } + private void startLoading() { isLoading = true; loadingPanel.setVisible(true); @@ -259,7 +267,7 @@ public void run() { } SwingUtilities.invokeLater(() -> { dots = (dots + 1) % 4; - loadingLabel.setText(message("llm.thinking") + ".".repeat(dots)); + loadingLabel.setText(message("llm.thinking") + repeatString(".", dots)); }); } }, 0, 500); @@ -316,8 +324,6 @@ private void clearOutput() { updateOutputArea(); } - - private void copyToClipboard(Object eventObj) { String currentContentToCopy; diff --git a/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java b/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java index a68b8287..eb9acc2d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java +++ b/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java @@ -1,7 +1,7 @@ package com.github.jaksonlin.testcraft.inspectors; import com.github.jaksonlin.testcraft.MyBundle; -import com.github.jaksonlin.testcraft.commands.unittestannotations.UnittestFileInspectorCommand; +import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileInspectorCommand; import com.github.jaksonlin.testcraft.context.CaseCheckContext; import com.intellij.codeInspection.AbstractBaseJavaLocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 84a08376..afaf5743 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -160,7 +160,7 @@ - + - + + + + + diff --git a/src/main/resources/messages/MyBundle.properties b/src/main/resources/messages/MyBundle.properties index 4e0dfc19..85312a4c 100644 --- a/src/main/resources/messages/MyBundle.properties +++ b/src/main/resources/messages/MyBundle.properties @@ -82,6 +82,7 @@ toolwindow.llm.title=TestCraft LLM Suggestions action.RunPitestAction.text=Run Mutation Test action.RunCaseAnnoationCheckAction.text=Run Current Method Annotation Check action.GenerateAnnotationCommandAction.text=Generate Testcase Annotation On Method +action.CheckInvalidTestCasesAction.text=Check Invalid Test Cases action.UnittestHelperToolMenu.text=TestCraft Unittest Helpers action.UnittestHelperSubMenu.text=TestCraft Unittest Helper Tools diff --git a/src/main/resources/messages/MyBundle_zh_CN.properties b/src/main/resources/messages/MyBundle_zh_CN.properties index deb4166c..367b05f9 100644 --- a/src/main/resources/messages/MyBundle_zh_CN.properties +++ b/src/main/resources/messages/MyBundle_zh_CN.properties @@ -75,6 +75,7 @@ toolwindow.llm.title=TestCraft LLM 建议 action.RunPitestAction.text=运行变异测试 action.RunCaseAnnoationCheckAction.text=运行当前方法注解检查 action.GenerateAnnotationCommandAction.text=在方法上生成测试用例注解 +action.CheckInvalidTestCasesAction.text=检查无效测试用例 action.UnittestHelperToolMenu.text=TestCraft 单元测试助手 action.UnittestHelperSubMenu.text=TestCraft 单元测试辅助工具 From 52bcc990eb6dbe73539b5287a0aef01e92ba851d Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 30 Apr 2025 19:05:34 +0800 Subject: [PATCH 13/25] refact layout for v3 --- .../CommandCancellationException.java | 2 +- .../pitest/BuildPitestCommandCommand.java | 4 +- .../pitest/HandlePitestResultCommand.java | 6 +- .../commands/pitest/PitestCommand.java | 12 +-- .../pitest/PrepareEnvironmentCommand.java | 8 +- .../commands/pitest/RunPitestCommand.java | 4 +- .../commands/pitest/StoreHistoryCommand.java | 4 +- .../commands/testscan/CollectScanCommand.java | 4 + .../testscan/UnittestCaseCheckCommand.java | 10 +-- .../UnittestFileBatchScanCommand.java | 5 +- .../UnittestFileInspectorCommand.java | 8 +- .../CheckAnnotationCommand.java | 12 +-- .../CheckMethodDataCommand.java | 6 +- .../GenerateAnnotationCommand.java | 18 ++-- .../processors/UnittestMethodProcessor.java | 4 +- .../commands/testscan/CollectScanCommand.java | 4 - .../annotations/AnnotationFieldConfig.java | 2 +- .../annotations/AnnotationFieldType.java | 2 +- .../annotations/AnnotationParser.java | 4 +- .../annotations/AnnotationSchema.java | 2 +- .../annotations/AnnotationValidator.java | 2 +- .../{ => core}/annotations/DefaultValue.java | 2 +- .../annotations/FieldValidation.java | 2 +- .../annotations/UnittestAnnotationConfig.java | 2 +- .../annotations/ValidationMode.java | 2 +- .../{ => core}/annotations/ValueProvider.java | 2 +- .../annotations/ValueProviderType.java | 2 +- .../{ => core}/context/CaseCheckContext.java | 10 +-- .../{ => core}/context/PitestContext.java | 2 +- .../{ => core}/context/TestPoints.java | 2 +- .../{ => core}/context/UnittestCase.java | 2 +- .../context/UnittestCaseInfoContext.java | 4 +- .../context/UnittestCaseStatus.java | 2 +- .../context/UnittestMethodContext.java | 2 +- .../services/AnnotationConfigService.java | 4 +- .../AnnotationValueProviderService.java | 8 +- .../InvalidTestCaseConfigService.java | 3 +- .../{ => core}/services/LLMService.java | 14 +-- .../{ => core}/services/PitestService.java | 10 +-- .../services/RunHistoryManagerService.java | 8 +- .../license/PremiumManager.java | 2 +- .../settings/AnnotationSettingsComponent.java | 7 +- .../AnnotationSettingsConfigurable.java | 6 +- .../InvalidTestCaseSettingsComponent.java | 4 +- .../InvalidTestCaseSettingsConfigurable.java | 4 +- .../settings/OllamaSettingsComponent.java | 4 +- .../settings/OllamaSettingsConfigurable.java | 6 +- .../TestCraftSettingsConfigurable.java | 7 +- .../MyApplicationActivationListener.java | 2 +- .../mediators/ILLMChatClient.java | 2 +- .../mediators/ILLMChatMediator.java | 2 +- .../mediators/IMutationMediator.java | 2 +- .../mediators/IMutationReportUI.java | 2 +- .../mediators/LLMChatMediatorImpl.java | 4 +- .../mediators/MutationMediatorImpl.java | 2 +- .../observers/BasicEventObserver.java | 2 +- .../observers/ObserverBase.java | 2 +- .../actions/CheckInvalidTestCasesAction.java | 16 +--- .../GenerateAnnotationCommandAction.java | 6 +- .../actions/RunCaseAnnoationCheckAction.java | 6 +- .../actions/RunPitestAction.java | 4 +- .../RunTestFileAnnoationCheckAction.java | 6 +- .../AnnotationCompletionContributor.java | 10 +-- ...stomAnnotationCompletionLookupElement.java | 4 +- .../components/ChatPanel.java | 2 +- .../components/LLMResponsePanel.java | 87 ++++++++----------- .../components/LLMSuggestionUIComponent.java | 10 +-- .../MutationToolWindowUIComponent.java | 6 +- .../components/ObservableTree.java | 6 +- .../components/PitestOutputDialog.java | 2 +- .../components/PremiumSettingsComponent.java | 4 +- .../inspectors/UnittestInspector.java | 8 +- .../LLMSuggestionsToolWindowFactory.java | 8 +- .../toolWindow/MutationToolWindowFactory.java | 4 +- .../LLMSuggestionUIComponentViewModel.java | 10 +-- .../MutationToolWindowViewModel.java | 10 +-- .../MutationTreeMediatorViewModel.java | 11 ++- .../testcraft/{ => util}/MyBundle.java | 2 +- src/main/resources/META-INF/plugin.xml | 46 +++++----- 79 files changed, 253 insertions(+), 281 deletions(-) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/CommandCancellationException.java (71%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/BuildPitestCommandCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/HandlePitestResultCommand.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/PitestCommand.java (84%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/PrepareEnvironmentCommand.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/RunPitestCommand.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/pitest/StoreHistoryCommand.java (70%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/testscan/UnittestCaseCheckCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/testscan/UnittestFileBatchScanCommand.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/testscan/UnittestFileInspectorCommand.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/unittestannotations/CheckAnnotationCommand.java (88%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/unittestannotations/CheckMethodDataCommand.java (85%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/commands/unittestannotations/GenerateAnnotationCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => application}/processors/UnittestMethodProcessor.java (84%) delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/AnnotationFieldConfig.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/AnnotationFieldType.java (52%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/AnnotationParser.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/AnnotationSchema.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/AnnotationValidator.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/DefaultValue.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/FieldValidation.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/UnittestAnnotationConfig.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/ValidationMode.java (65%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/ValueProvider.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/annotations/ValueProviderType.java (82%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/CaseCheckContext.java (84%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/PitestContext.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/TestPoints.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/UnittestCase.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/UnittestCaseInfoContext.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/UnittestCaseStatus.java (56%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/context/UnittestMethodContext.java (89%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/AnnotationConfigService.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/AnnotationValueProviderService.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/InvalidTestCaseConfigService.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/LLMService.java (90%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/PitestService.java (90%) rename src/main/java/com/github/jaksonlin/testcraft/{ => core}/services/RunHistoryManagerService.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/license/PremiumManager.java (92%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/AnnotationSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/AnnotationSettingsConfigurable.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/InvalidTestCaseSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/InvalidTestCaseSettingsConfigurable.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/OllamaSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/OllamaSettingsConfigurable.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/settings/TestCraftSettingsConfigurable.java (91%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/listeners/MyApplicationActivationListener.java (89%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/ILLMChatClient.java (64%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/ILLMChatMediator.java (90%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/IMutationMediator.java (81%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/IMutationReportUI.java (79%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/LLMChatMediatorImpl.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/mediators/MutationMediatorImpl.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/observers/BasicEventObserver.java (62%) rename src/main/java/com/github/jaksonlin/testcraft/{ => messaging}/observers/ObserverBase.java (90%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/actions/CheckInvalidTestCasesAction.java (63%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/actions/GenerateAnnotationCommandAction.java (80%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/actions/RunCaseAnnoationCheckAction.java (80%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/actions/RunPitestAction.java (88%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/actions/RunTestFileAnnoationCheckAction.java (89%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/completions/AnnotationCompletionContributor.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/completions/CustomAnnotationCompletionLookupElement.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/ChatPanel.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/LLMResponsePanel.java (83%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/LLMSuggestionUIComponent.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/MutationToolWindowUIComponent.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/ObservableTree.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/PitestOutputDialog.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/components/PremiumSettingsComponent.java (85%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/inspectors/UnittestInspector.java (90%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/toolWindow/LLMSuggestionsToolWindowFactory.java (83%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/toolWindow/MutationToolWindowFactory.java (86%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/viewmodels/LLMSuggestionUIComponentViewModel.java (85%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/viewmodels/MutationToolWindowViewModel.java (83%) rename src/main/java/com/github/jaksonlin/testcraft/{ => presentation}/viewmodels/MutationTreeMediatorViewModel.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{ => util}/MyBundle.java (95%) diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java similarity index 71% rename from src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java index e15c1387..458175d3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/CommandCancellationException.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.commands; +package com.github.jaksonlin.testcraft.application.commands; public class CommandCancellationException extends Exception{ diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java index 8a6d0990..bf028d02 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/BuildPitestCommandCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.core.context.PitestContext; import com.intellij.openapi.project.Project; import java.util.ArrayList; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java index ed8e713d..124f7824 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/HandlePitestResultCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java similarity index 84% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java index dabca79c..e42206f4 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java @@ -1,15 +1,15 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; -import com.github.jaksonlin.testcraft.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.Messages; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReference; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java index e0acefde..e4152d45 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/PrepareEnvironmentCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.core.context.PitestContext; import com.github.jaksonlin.testcraft.util.*; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.application.ReadAction; @@ -13,7 +13,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import java.io.File; import java.nio.file.Path; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java index afcbeae8..36a29d28 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/RunPitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.core.context.PitestContext; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.ProcessExecutor; import com.github.jaksonlin.testcraft.util.ProcessResult; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java similarity index 70% rename from src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java index 168095d6..9ccd93ef 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/pitest/StoreHistoryCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.commands.pitest; +package com.github.jaksonlin.testcraft.application.commands.pitest; -import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.core.context.PitestContext; import com.intellij.openapi.project.Project; public class StoreHistoryCommand extends PitestCommand { diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java new file mode 100644 index 00000000..140ec8f9 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java @@ -0,0 +1,4 @@ +package com.github.jaksonlin.testcraft.application.commands.testscan; + +public class CollectScanCommand { +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java index 3d4f75d2..a3b449f0 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestCaseCheckCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.commands.testscan; +package com.github.jaksonlin.testcraft.application.commands.testscan; -import com.github.jaksonlin.testcraft.MyBundle; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.context.UnittestCase; +import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; import com.intellij.psi.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java index 33f5ca53..68f8c5b3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileBatchScanCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java @@ -1,11 +1,10 @@ -package com.github.jaksonlin.testcraft.commands.testscan; +package com.github.jaksonlin.testcraft.application.commands.testscan; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.intellij.codeInspection.InspectionManager; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; -import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.Task; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java index 91622536..24949bc2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/UnittestFileInspectorCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.commands.testscan; +package com.github.jaksonlin.testcraft.application.commands.testscan; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; import com.intellij.codeInspection.ProblemHighlightType; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.application.ApplicationManager; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java similarity index 88% rename from src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java index 16a391b1..a0d9d715 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java @@ -1,10 +1,10 @@ -package com.github.jaksonlin.testcraft.commands.unittestannotations; +package com.github.jaksonlin.testcraft.application.commands.unittestannotations; -import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.context.UnittestCase; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java similarity index 85% rename from src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java index e6fe50d7..bb9ac4cc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/CheckMethodDataCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.commands.unittestannotations; +package com.github.jaksonlin.testcraft.application.commands.unittestannotations; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java index 36f3abce..f691945e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/unittestannotations/GenerateAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java @@ -1,14 +1,14 @@ -package com.github.jaksonlin.testcraft.commands.unittestannotations; +package com.github.jaksonlin.testcraft.application.commands.unittestannotations; import com.fasterxml.jackson.databind.node.ArrayNode; -import com.github.jaksonlin.testcraft.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.annotations.DefaultValue; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.services.AnnotationValueProviderService; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.core.services.AnnotationValueProviderService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.command.WriteCommandAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java b/src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java similarity index 84% rename from src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java rename to src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java index e5d78a5a..da77d491 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/processors/UnittestMethodProcessor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.processors; +package com.github.jaksonlin.testcraft.application.processors; -import com.github.jaksonlin.testcraft.context.UnittestMethodContext; +import com.github.jaksonlin.testcraft.core.context.UnittestMethodContext; import com.intellij.psi.PsiComment; import com.intellij.psi.PsiMethod; import com.intellij.psi.util.PsiTreeUtil; diff --git a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java deleted file mode 100644 index 57718b05..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/commands/testscan/CollectScanCommand.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.github.jaksonlin.testcraft.commands.testscan; - -public class CollectScanCommand { -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java index 2d9712b6..5a894228 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java similarity index 52% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java index b3d5b97c..ad526cc8 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationFieldType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; public enum AnnotationFieldType { STRING, diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java index 1344b328..eecd655b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationParser.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; -import com.github.jaksonlin.testcraft.context.UnittestCase; +import com.github.jaksonlin.testcraft.core.context.UnittestCase; import org.jetbrains.annotations.Nullable; import java.util.HashMap; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java index 13e094db..7d54f676 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationSchema.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import com.fasterxml.jackson.databind.ObjectMapper; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java index 53f31462..9fc68645 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/AnnotationValidator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java index 0647d9f2..351d11be 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/DefaultValue.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java index 06a2dfc3..593cdb7e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/FieldValidation.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java index a22b0c24..efe17649 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/UnittestAnnotationConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; public class UnittestAnnotationConfig { private String authorField; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java similarity index 65% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java index c0cb4478..c850c638 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValidationMode.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; public enum ValidationMode { EXACT, // Exact string match diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java index 73276908..49c460e3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProvider.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; import com.fasterxml.jackson.databind.JsonNode; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java similarity index 82% rename from src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java rename to src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java index d06fa29a..56123a05 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/annotations/ValueProviderType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.annotations; +package com.github.jaksonlin.testcraft.core.annotations; public enum ValueProviderType { GIT_AUTHOR, diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java similarity index 84% rename from src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java index 0014ab09..58c0760b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/CaseCheckContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; -import com.github.jaksonlin.testcraft.annotations.AnnotationParser; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationParser; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiMethod; diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java index 99a27c2c..dddbfa0d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/PitestContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.MutationReportParser; diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java index cb2d752f..55ef18cb 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/TestPoints.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; import java.util.Arrays; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java index 0c0d5688..f048d83e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java index 157e4188..edeb48dc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseInfoContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; -import com.github.jaksonlin.testcraft.annotations.UnittestAnnotationConfig; +import com.github.jaksonlin.testcraft.core.annotations.UnittestAnnotationConfig; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java similarity index 56% rename from src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java index e46967e7..79a914de 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestCaseStatus.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; public enum UnittestCaseStatus { TODO, DONE, BROKEN, DEPRECATED diff --git a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java similarity index 89% rename from src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java rename to src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java index b175621b..145d7048 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/context/UnittestMethodContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.context; +package com.github.jaksonlin.testcraft.core.context; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java index 4f2a6abc..9425c285 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; import com.intellij.openapi.components.State; diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java index 86654a8b..ba27e81b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/AnnotationValueProviderService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; -import com.github.jaksonlin.testcraft.annotations.ValueProvider; -import com.github.jaksonlin.testcraft.annotations.ValueProviderType; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.core.annotations.ValueProvider; +import com.github.jaksonlin.testcraft.core.annotations.ValueProviderType; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.GitUtil; import com.intellij.openapi.components.Service; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java index 6d4b8f33..1d4c9e03 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/InvalidTestCaseConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java @@ -1,6 +1,5 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; import com.intellij.openapi.components.State; diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java similarity index 90% rename from src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java index e7611d61..3250c147 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/LLMService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; -import com.github.jaksonlin.testcraft.mediators.ILLMChatMediator; -import com.github.jaksonlin.testcraft.mediators.LLMChatMediatorImpl; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; -import com.github.jaksonlin.testcraft.observers.ObserverBase; +import com.github.jaksonlin.testcraft.messaging.mediators.ILLMChatMediator; +import com.github.jaksonlin.testcraft.messaging.mediators.LLMChatMediatorImpl; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.components.Service; @@ -13,13 +13,13 @@ import java.util.Objects; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.testcraft.mediators.ILLMChatClient; +import com.github.jaksonlin.testcraft.messaging.mediators.ILLMChatClient; import com.intellij.openapi.components.State; import com.intellij.openapi.components.Storage; import com.intellij.openapi.components.PersistentStateComponent; @Service(Service.Level.APP) @State( - name = "com.github.jaksonlin.testcraft.services.LLMService", + name = "com.github.jaksonlin.testcraft.core.services.LLMService", storages = @Storage(value = "$APP_CONFIG$/LLMService.xml") ) public final class LLMService diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java similarity index 90% rename from src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java index 1b05a032..3e42c39b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/PitestService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; -import com.github.jaksonlin.testcraft.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.commands.pitest.*; -import com.github.jaksonlin.testcraft.context.PitestContext; +import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.application.commands.pitest.*; +import com.github.jaksonlin.testcraft.core.context.PitestContext; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.Service; import com.intellij.openapi.progress.ProgressIndicator; @@ -11,7 +11,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.ui.components.JBScrollPane; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; import java.awt.*; import java.io.PrintWriter; diff --git a/src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java b/src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java rename to src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java index ade7af68..739e9679 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/services/RunHistoryManagerService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.services; +package com.github.jaksonlin.testcraft.core.services; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.observers.ObserverBase; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; import com.github.jaksonlin.testcraft.util.Pair; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; diff --git a/src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/license/PremiumManager.java similarity index 92% rename from src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/license/PremiumManager.java index 71347970..784b9f12 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/license/PremiumManager.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/license/PremiumManager.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.license; +package com.github.jaksonlin.testcraft.infrastructure.license; public class PremiumManager { private static PremiumManager instance; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java index 65a8465f..f4e5cf41 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java @@ -1,8 +1,6 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; import com.intellij.json.JsonFileType; -import com.intellij.openapi.editor.Document; -import com.intellij.openapi.editor.EditorFactory; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ScrollType; import com.intellij.openapi.editor.ex.EditorEx; @@ -10,10 +8,9 @@ import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; -import javax.swing.event.HyperlinkEvent; import java.awt.*; public class AnnotationSettingsComponent { diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java index d84fc5a2..a5da1a2f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/AnnotationSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.ConfigurationException; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java index 4e6b8902..213c730b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ex.EditorEx; @@ -6,7 +6,7 @@ import com.intellij.ui.components.JBCheckBox; import com.intellij.ui.components.JBLabel; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; import java.awt.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java index a3d800a0..52b40bbb 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/InvalidTestCaseSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; -import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java index 8e0cd264..19e3fb60 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; @@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull; import com.github.jaksonlin.testcraft.util.OllamaClient; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; import java.awt.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java index 8b10edb8..6348712d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/OllamaSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; -import com.github.jaksonlin.testcraft.services.LLMService; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.core.services.LLMService; +import com.github.jaksonlin.testcraft.util.MyBundle; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nls; diff --git a/src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java similarity index 91% rename from src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java index fd6004f6..283ac7f8 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/settings/TestCraftSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java @@ -1,18 +1,17 @@ -package com.github.jaksonlin.testcraft.settings; +package com.github.jaksonlin.testcraft.infrastructure.settings; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.SearchableConfigurable; -import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; public class TestCraftSettingsConfigurable implements SearchableConfigurable.Parent { @Override public @NotNull String getId() { - return "com.github.jaksonlin.testcraft.settings"; + return "com.github.jaksonlin.testcraft.infrastructure.settings"; } @Override diff --git a/src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java similarity index 89% rename from src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java index 2e85c327..17822c2e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/listeners/MyApplicationActivationListener.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.listeners; +package com.github.jaksonlin.testcraft.messaging.listeners; import com.intellij.openapi.application.ApplicationActivationListener; import com.intellij.openapi.diagnostic.Logger; diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java similarity index 64% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java index 40686e8a..810ba34b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatClient.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; public interface ILLMChatClient { diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java similarity index 90% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java index 133d14cf..d6839ddc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/ILLMChatMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java similarity index 81% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java index 7636d56a..90f1eea7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java similarity index 79% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java index ba225013..110c68af 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/IMutationReportUI.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; import com.github.jaksonlin.testcraft.util.Pair; diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java index d24acae7..6647ef60 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/LLMChatMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; -import com.github.jaksonlin.testcraft.MyBundle; +import com.github.jaksonlin.testcraft.util.MyBundle; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.diagnostic.Logger; diff --git a/src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java index 2aa28943..d55029e2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/mediators/MutationMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.mediators; +package com.github.jaksonlin.testcraft.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; diff --git a/src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java similarity index 62% rename from src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java index 92894c53..619c9da6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/observers/BasicEventObserver.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.observers; +package com.github.jaksonlin.testcraft.messaging.observers; public interface BasicEventObserver { void onEventHappen(String eventName, Object eventObj); diff --git a/src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java similarity index 90% rename from src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java rename to src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java index 85e72304..eb243a1e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/observers/ObserverBase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.observers; +package com.github.jaksonlin.testcraft.messaging.observers; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java similarity index 63% rename from src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java index eabc0e10..95a3e878 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/actions/CheckInvalidTestCasesAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java @@ -1,23 +1,13 @@ -package com.github.jaksonlin.testcraft.actions; +package com.github.jaksonlin.testcraft.presentation.actions; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileBatchScanCommand; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileInspectorCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.services.InvalidTestCaseConfigService; -import com.intellij.codeInspection.*; +import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestFileBatchScanCommand; +import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; -import com.intellij.openapi.vfs.LocalFileSystem; -import com.intellij.openapi.vfs.VirtualFile; -import com.intellij.psi.*; -import com.intellij.psi.util.PsiTreeUtil; import org.jetbrains.annotations.NotNull; -import com.intellij.openapi.actionSystem.CommonDataKeys; - -import java.util.*; public class CheckInvalidTestCasesAction extends AnAction { diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java similarity index 80% rename from src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java index b0f9a757..beacd48e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/actions/GenerateAnnotationCommandAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.actions; +package com.github.jaksonlin.testcraft.presentation.actions; -import com.github.jaksonlin.testcraft.commands.unittestannotations.GenerateAnnotationCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.application.commands.unittestannotations.GenerateAnnotationCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java similarity index 80% rename from src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java index 3f91dd94..f5db6d49 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/actions/RunCaseAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.actions; +package com.github.jaksonlin.testcraft.presentation.actions; -import com.github.jaksonlin.testcraft.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.application.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java similarity index 88% rename from src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java index 07b353c1..1c3752b4 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/actions/RunPitestAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.actions; +package com.github.jaksonlin.testcraft.presentation.actions; -import com.github.jaksonlin.testcraft.services.PitestService; +import com.github.jaksonlin.testcraft.core.services.PitestService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.PlatformDataKeys; diff --git a/src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java similarity index 89% rename from src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java index 7585ac47..49537f59 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/actions/RunTestFileAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.actions; +package com.github.jaksonlin.testcraft.presentation.actions; -import com.github.jaksonlin.testcraft.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.application.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; diff --git a/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java index e3073afc..2c75a250 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/completions/AnnotationCompletionContributor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.completions; +package com.github.jaksonlin.testcraft.presentation.completions; -import com.github.jaksonlin.testcraft.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.testcraft.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.annotations.DefaultValue; -import com.github.jaksonlin.testcraft.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.core.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; import com.intellij.codeInsight.completion.*; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.lang.java.JavaLanguage; diff --git a/src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java index b89aff67..ac7bf575 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/completions/CustomAnnotationCompletionLookupElement.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.completions; +package com.github.jaksonlin.testcraft.presentation.completions; -import com.github.jaksonlin.testcraft.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; import com.intellij.codeInsight.completion.InsertionContext; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.LookupElementPresentation; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java index 9cfc8d8d..faa5e401 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/ChatPanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java similarity index 83% rename from src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java index f70e4dc1..457732cd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; import org.commonmark.node.Node; @@ -185,63 +185,52 @@ private String getCodeStyle() { String linkColor = isDarkTheme ? "#589df6" : "#2470B3"; String separatorColor = isDarkTheme ? "#3c3f41" : "#e0e0e0"; - return "body {\n" + - " font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n" + - " font-size: 13pt;\n" + - " margin: 10px;\n" + - " line-height: 1.4;\n" + - " background-color: " + backgroundColor + ";\n" + - " color: " + textColor + ";\n" + + return "body { " + + "font-family: Arial, sans-serif; " + + "font-size: 13pt; " + + "margin: 10px; " + + "background-color: " + backgroundColor + "; " + + "color: " + textColor + "; " + "}\n" + - "#chat-container {\n" + - " display: flex;\n" + - " flex-direction: column;\n" + - " gap: 0.5em;\n" + + ".message { " + + "padding: 12px; " + + "margin: 5px 0; " + "}\n" + - ".message {\n" + - " border-radius: 8px;\n" + - " padding: 12px;\n" + + ".message.user { " + + "background-color: " + (isDarkTheme ? "#2d2d2d" : "#e3f2fd") + "; " + + "margin-left: 20%; " + "}\n" + - ".message.user {\n" + - " background-color: " + (isDarkTheme ? "#2d2d2d" : "#e3f2fd") + ";\n" + - " margin-left: 20%;\n" + + ".message.assistant { " + + "background-color: " + (isDarkTheme ? "#1e1e1e" : "#f5f5f5") + "; " + + "margin-right: 20%; " + "}\n" + - ".message.assistant {\n" + - " background-color: " + (isDarkTheme ? "#1e1e1e" : "#f5f5f5") + ";\n" + - " margin-right: 20%;\n" + + ".message.system { " + + "background-color: " + (isDarkTheme ? "#2d2d2d" : "#e8f5e9") + "; " + + "text-align: center; " + + "font-style: italic; " + "}\n" + - ".message.system {\n" + - " background-color: " + (isDarkTheme ? "#2d2d2d" : "#e8f5e9") + ";\n" + - " text-align: center;\n" + - " font-style: italic;\n" + + ".message-header { " + + "font-weight: bold; " + + "margin-bottom: 4px; " + "}\n" + - ".message-header {\n" + - " font-weight: bold;\n" + - " margin-bottom: 4px;\n" + - " color: " + textColor + ";\n" + + ".message-content { " + + "white-space: pre-wrap; " + "}\n" + - ".message-content {\n" + - " white-space: pre-wrap;\n" + + ".message-separator { " + + "border-top: 1px solid " + separatorColor + "; " + + "margin: 10px 0; " + "}\n" + - ".message-separator {\n" + - " height: 1px;\n" + - " background-color: " + separatorColor + ";\n" + - " margin: 10px 0;\n" + + "pre { " + + "background-color: " + codeBackground + "; " + + "padding: 16px; " + + "margin: 1em 0; " + + "border: 1px solid " + codeBorder + "; " + "}\n" + - "pre {\n" + - " background-color: " + codeBackground + ";\n" + - " padding: 16px;\n" + - " border-radius: 6px;\n" + - " margin: 1em 0;\n" + - " border: 1px solid " + codeBorder + ";\n" + - " overflow: auto;\n" + + "code { " + + "font-family: monospace; " + + "font-size: 12pt; " + "}\n" + - "code {\n" + - " font-family: \"JetBrains Mono\", \"Fira Code\", Consolas, Monaco, \"Courier New\", monospace;\n" + - " font-size: 12pt;\n" + - " color: " + textColor + ";\n" + - "}\n" + - "a { color: " + linkColor + "; }\n"; + "a { color: " + linkColor + "; }"; } private String repeatString(String str, int count) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java index bfce0887..ea99077a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; -import com.github.jaksonlin.testcraft.viewmodels.LLMSuggestionUIComponentViewModel; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.presentation.viewmodels.LLMSuggestionUIComponentViewModel; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.ui.ComboBox; import com.intellij.util.ui.JBUI; @@ -16,7 +16,7 @@ import java.util.List; import java.util.Map; import java.util.ResourceBundle; -import com.github.jaksonlin.testcraft.services.LLMService; +import com.github.jaksonlin.testcraft.core.services.LLMService; public class LLMSuggestionUIComponent implements BasicEventObserver { private static final String BUNDLE = "messages.MyBundle"; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java index 6df22983..b6a73646 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/MutationToolWindowUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.MyBundle; -import com.github.jaksonlin.testcraft.viewmodels.MutationToolWindowViewModel; +import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.presentation.viewmodels.MutationToolWindowViewModel; import com.intellij.openapi.project.Project; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java index e95e9512..b00182b0 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.MyBundle; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; import com.github.jaksonlin.testcraft.util.Pair; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java index 454aba20..eab3b291 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/PitestOutputDialog.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; diff --git a/src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java similarity index 85% rename from src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java index d1c4ae32..ccb3d781 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/components/PremiumSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.components; +package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.license.PremiumManager; +import com.github.jaksonlin.testcraft.infrastructure.license.PremiumManager; import javax.swing.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java similarity index 90% rename from src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java index eb9acc2d..cabce616 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/inspectors/UnittestInspector.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.inspectors; +package com.github.jaksonlin.testcraft.presentation.inspectors; -import com.github.jaksonlin.testcraft.MyBundle; -import com.github.jaksonlin.testcraft.commands.testscan.UnittestFileInspectorCommand; -import com.github.jaksonlin.testcraft.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestFileInspectorCommand; +import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; import com.intellij.codeInspection.AbstractBaseJavaLocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java similarity index 83% rename from src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java index a2da3180..94617ebf 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/toolWindow/LLMSuggestionsToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.toolWindow; +package com.github.jaksonlin.testcraft.presentation.toolWindow; -import com.github.jaksonlin.testcraft.components.LLMSuggestionUIComponent; -import com.github.jaksonlin.testcraft.services.LLMService; -import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.presentation.components.LLMSuggestionUIComponent; +import com.github.jaksonlin.testcraft.core.services.LLMService; +import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; diff --git a/src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java similarity index 86% rename from src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java index d52f1507..6ba9b5c1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/toolWindow/MutationToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.toolWindow; +package com.github.jaksonlin.testcraft.presentation.toolWindow; -import com.github.jaksonlin.testcraft.components.MutationToolWindowUIComponent; +import com.github.jaksonlin.testcraft.presentation.components.MutationToolWindowUIComponent; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; import com.intellij.openapi.wm.ToolWindowFactory; diff --git a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java similarity index 85% rename from src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java index d7c67749..dbad525f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/LLMSuggestionUIComponentViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.viewmodels; +package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.observers.BasicEventObserver; -import com.github.jaksonlin.testcraft.observers.ObserverBase; -import com.github.jaksonlin.testcraft.services.LLMService; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; +import com.github.jaksonlin.testcraft.core.services.LLMService; public class LLMSuggestionUIComponentViewModel extends ObserverBase implements BasicEventObserver { diff --git a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java similarity index 83% rename from src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java index 2a967692..38164ab7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.viewmodels; +package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.mediators.IMutationMediator; -import com.github.jaksonlin.testcraft.mediators.MutationMediatorImpl; -import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; -import com.github.jaksonlin.testcraft.components.ObservableTree; +import com.github.jaksonlin.testcraft.messaging.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.messaging.mediators.MutationMediatorImpl; +import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.presentation.components.ObservableTree; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java index 827d6194..bc489226 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.viewmodels; +package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.context.PitestContext; -import com.github.jaksonlin.testcraft.mediators.IMutationMediator; -import com.github.jaksonlin.testcraft.mediators.IMutationReportUI; -import com.github.jaksonlin.testcraft.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.messaging.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.messaging.mediators.IMutationReportUI; +import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; import com.intellij.icons.AllIcons; @@ -29,7 +29,6 @@ import javax.swing.*; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.TreePath; -import java.nio.file.Paths; import java.util.HashMap; import java.util.List; import java.util.Map; diff --git a/src/main/java/com/github/jaksonlin/testcraft/MyBundle.java b/src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/MyBundle.java rename to src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java index b3b149f3..62d020a2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/MyBundle.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft; +package com.github.jaksonlin.testcraft.util; import com.intellij.DynamicBundle; import org.jetbrains.annotations.NonNls; diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index afaf5743..008a892b 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -94,46 +94,46 @@ messages.MyBundle - + + factoryClass="com.github.jaksonlin.testcraft.presentation.toolWindow.LLMSuggestionsToolWindowFactory"/> + instance="com.github.jaksonlin.testcraft.infrastructure.settings.TestCraftSettingsConfigurable"/> - - - + + + + implementationClass="com.github.jaksonlin.testcraft.presentation.completions.AnnotationCompletionContributor"/> - + @@ -164,22 +164,22 @@ - - - From c6c216893ab1fbf9cf4350604efb7c65f6d05447 Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 09:22:48 +0800 Subject: [PATCH 14/25] refact system layout, not tested --- build.gradle.kts | 2 +- .../actions/CheckInvalidTestCasesAction.java | 6 +- .../GenerateAnnotationCommandAction.java | 6 +- .../actions/RunCaseAnnoationCheckAction.java | 6 +- .../actions/RunPitestAction.java} | 47 ++++-- .../RunTestFileAnnoationCheckAction.java | 6 +- .../commands/testscan/CollectScanCommand.java | 4 - .../AnnotationCompletionContributor.java | 10 +- ...stomAnnotationCompletionLookupElement.java | 4 +- .../inspectors/UnittestInspector.java | 6 +- .../application/processors/LLMProcessor.java | 21 +++ .../processors/UnittestMethodProcessor.java | 24 --- .../settings/AnnotationSettingsComponent.java | 2 +- .../AnnotationSettingsConfigurable.java | 6 +- .../InvalidTestCaseSettingsComponent.java | 2 +- .../InvalidTestCaseSettingsConfigurable.java | 4 +- .../settings/OllamaSettingsComponent.java | 2 +- .../settings/OllamaSettingsConfigurable.java | 14 +- .../TestCraftSettingsConfigurable.java | 4 +- .../annotations/AnnotationFieldConfig.java | 2 +- .../annotations/AnnotationFieldType.java | 2 +- .../annotations/AnnotationParser.java | 4 +- .../annotations/AnnotationSchema.java | 2 +- .../annotations/AnnotationValidator.java | 2 +- .../annotations/DefaultValue.java | 2 +- .../annotations/FieldValidation.java | 2 +- .../annotations/UnittestAnnotationConfig.java | 2 +- .../annotations/ValidationMode.java | 2 +- .../annotations/ValueProvider.java | 2 +- .../annotations/ValueProviderType.java | 2 +- .../context/CaseCheckContext.java | 10 +- .../context/PitestContext.java | 2 +- .../{core => domain}/context/TestPoints.java | 2 +- .../context/UnittestCase.java | 2 +- .../context/UnittestCaseInfoContext.java | 4 +- .../context/UnittestCaseStatus.java | 2 +- .../context/UnittestMethodContext.java | 2 +- .../CommandCancellationException.java | 2 +- .../pitest/BuildPitestCommandCommand.java | 4 +- .../pitest/HandlePitestResultCommand.java | 4 +- .../commands/pitest/PitestCommand.java | 8 +- .../pitest/PrepareEnvironmentCommand.java | 6 +- .../commands/pitest/RunPitestCommand.java | 4 +- .../commands/pitest/StoreHistoryCommand.java | 4 +- .../commands/testscan/CollectScanCommand.java | 4 + .../testscan/UnittestCaseCheckCommand.java | 8 +- .../UnittestFileBatchScanCommand.java | 4 +- .../UnittestFileInspectorCommand.java | 8 +- .../CheckAnnotationCommand.java | 12 +- .../CheckMethodDataCommand.java | 6 +- .../GenerateAnnotationCommand.java | 18 +-- .../messaging/events/BaseEvent.java | 27 ++++ .../messaging/events/BasicEventObserver.java | 16 ++ .../messaging/events/ChatEvent.java | 17 ++ .../messaging/events/LLMConfigEvent.java | 10 ++ .../messaging/events/RunHistoryEvent.java | 10 ++ .../MyApplicationActivationListener.java | 2 +- .../messaging/mediators/ILLMChatClient.java | 2 +- .../messaging/mediators/ILLMChatMediator.java | 3 +- .../mediators/IMutationMediator.java | 2 +- .../mediators/IMutationReportUI.java | 2 +- .../mediators/LLMChatMediatorImpl.java | 61 ++++--- .../mediators/MutationMediatorImpl.java | 2 +- .../AnnotationValueProviderService.java | 8 +- .../services/business/PitestService.java | 9 ++ .../business}/RunHistoryManagerService.java | 43 ++--- .../config}/AnnotationConfigService.java | 4 +- .../config}/InvalidTestCaseConfigService.java | 2 +- .../services/config/LLMConfigService.java} | 52 +++--- .../services/system/EventBusService.java | 30 ++++ .../observers/BasicEventObserver.java | 5 - .../messaging/observers/ObserverBase.java | 22 --- .../presentation/actions/RunPitestAction.java | 34 ---- .../presentation/components/ChatPanel.java | 15 +- .../components/LLMResponsePanel.java | 153 ++++++++---------- .../components/LLMSuggestionUIComponent.java | 38 ++--- .../components/ObservableTree.java | 47 +++--- .../LLMSuggestionsToolWindowFactory.java | 12 +- .../LLMSuggestionUIComponentViewModel.java | 47 +++--- .../MutationToolWindowViewModel.java | 10 +- .../MutationTreeMediatorViewModel.java | 8 +- .../testcraft/util/OllamaClient.java | 67 ++++---- src/main/resources/META-INF/plugin.xml | 42 ++--- 83 files changed, 579 insertions(+), 539 deletions(-) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/actions/CheckInvalidTestCasesAction.java (81%) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/actions/GenerateAnnotationCommandAction.java (80%) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/actions/RunCaseAnnoationCheckAction.java (80%) rename src/main/java/com/github/jaksonlin/testcraft/{core/services/PitestService.java => application/actions/RunPitestAction.java} (69%) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/actions/RunTestFileAnnoationCheckAction.java (89%) delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/completions/AnnotationCompletionContributor.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/completions/CustomAnnotationCompletionLookupElement.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{presentation => application}/inspectors/UnittestInspector.java (92%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/application/processors/LLMProcessor.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/AnnotationSettingsComponent.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/AnnotationSettingsConfigurable.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/InvalidTestCaseSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/InvalidTestCaseSettingsConfigurable.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/OllamaSettingsComponent.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/OllamaSettingsConfigurable.java (85%) rename src/main/java/com/github/jaksonlin/testcraft/{infrastructure => application}/settings/TestCraftSettingsConfigurable.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/AnnotationFieldConfig.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/AnnotationFieldType.java (52%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/AnnotationParser.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/AnnotationSchema.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/AnnotationValidator.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/DefaultValue.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/FieldValidation.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/UnittestAnnotationConfig.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/ValidationMode.java (64%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/ValueProvider.java (93%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/annotations/ValueProviderType.java (81%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/CaseCheckContext.java (82%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/PitestContext.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/TestPoints.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/UnittestCase.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/UnittestCaseInfoContext.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/UnittestCaseStatus.java (56%) rename src/main/java/com/github/jaksonlin/testcraft/{core => domain}/context/UnittestMethodContext.java (88%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/CommandCancellationException.java (70%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/BuildPitestCommandCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/HandlePitestResultCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/PitestCommand.java (88%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/PrepareEnvironmentCommand.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/RunPitestCommand.java (94%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/pitest/StoreHistoryCommand.java (69%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/CollectScanCommand.java rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/testscan/UnittestCaseCheckCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/testscan/UnittestFileBatchScanCommand.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/testscan/UnittestFileInspectorCommand.java (95%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/unittestannotations/CheckAnnotationCommand.java (87%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/unittestannotations/CheckMethodDataCommand.java (84%) rename src/main/java/com/github/jaksonlin/testcraft/{application => infrastructure}/commands/unittestannotations/GenerateAnnotationCommand.java (95%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BaseEvent.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BasicEventObserver.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/LLMConfigEvent.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/RunHistoryEvent.java rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/listeners/MyApplicationActivationListener.java (87%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/ILLMChatClient.java (59%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/ILLMChatMediator.java (83%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/IMutationMediator.java (77%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/IMutationReportUI.java (75%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/LLMChatMediatorImpl.java (86%) rename src/main/java/com/github/jaksonlin/testcraft/{ => infrastructure}/messaging/mediators/MutationMediatorImpl.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/{core/services => infrastructure/services/business}/AnnotationValueProviderService.java (96%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/PitestService.java rename src/main/java/com/github/jaksonlin/testcraft/{core/services => infrastructure/services/business}/RunHistoryManagerService.java (68%) rename src/main/java/com/github/jaksonlin/testcraft/{core/services => infrastructure/services/config}/AnnotationConfigService.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/{core/services => infrastructure/services/config}/InvalidTestCaseConfigService.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{core/services/LLMService.java => infrastructure/services/config/LLMConfigService.java} (70%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java diff --git a/build.gradle.kts b/build.gradle.kts index 11d3d0b7..f1695862 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -55,7 +55,7 @@ dependencies { implementation("com.fasterxml.jackson.core:jackson-databind:2.18.0") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.2") // Use latest version implementation("org.commonmark:commonmark:0.21.0") - + implementation("org.apache.httpcomponents:httpclient:4.5.13") // IntelliJ Platform Gradle Plugin Dependencies Extension - read more: https://plugins.jetbrains.com/docs/intellij/tools-intellij-platform-gradle-plugin-dependencies-extension.html intellijPlatform { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java similarity index 81% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java rename to src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java index 95a3e878..5e4f5532 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/CheckInvalidTestCasesAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.presentation.actions; +package com.github.jaksonlin.testcraft.application.actions; -import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestFileBatchScanCommand; -import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestFileBatchScanCommand; +import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.application.ApplicationManager; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java similarity index 80% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java rename to src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java index beacd48e..4e315ad7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/GenerateAnnotationCommandAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.presentation.actions; +package com.github.jaksonlin.testcraft.application.actions; -import com.github.jaksonlin.testcraft.application.commands.unittestannotations.GenerateAnnotationCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations.GenerateAnnotationCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java similarity index 80% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java index f5db6d49..741fd8d9 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunCaseAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.presentation.actions; +package com.github.jaksonlin.testcraft.application.actions; -import com.github.jaksonlin.testcraft.application.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; import com.intellij.openapi.actionSystem.AnAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java similarity index 69% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java rename to src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java index 3e42c39b..e64110fc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/PitestService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java @@ -1,17 +1,22 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.application.actions; -import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.application.commands.pitest.*; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.infrastructure.commands.pitest.*; +import com.github.jaksonlin.testcraft.infrastructure.services.business.PitestService; +import com.github.jaksonlin.testcraft.util.MyBundle; +import com.intellij.openapi.actionSystem.AnAction; +import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.actionSystem.PlatformDataKeys; import com.intellij.openapi.application.ApplicationManager; -import com.intellij.openapi.components.Service; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.Task; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.ui.components.JBScrollPane; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.util.MyBundle; + import javax.swing.*; import java.awt.*; import java.io.PrintWriter; @@ -19,8 +24,28 @@ import java.util.Arrays; import java.util.List; -@Service(Service.Level.APP) -public final class PitestService { +public class RunPitestAction extends AnAction { + + private final PitestService pitestService; + + public RunPitestAction() { + pitestService = ApplicationManager.getApplication().getService(PitestService.class); + } + + @Override + public void actionPerformed(@NotNull AnActionEvent e) { + Project targetProject = e.getProject(); + if (targetProject == null) { + return; + } + + VirtualFile testVirtualFile = e.getData(PlatformDataKeys.VIRTUAL_FILE); + if (testVirtualFile == null) { + return; + } + + runPitest(targetProject, testVirtualFile.getPath()); + } public void runPitest(Project targetProject, String testFilePath) { PitestContext context = new PitestContext(testFilePath, System.currentTimeMillis()); @@ -40,7 +65,7 @@ public void run(@NotNull ProgressIndicator indicator) { for (PitestCommand command : commands) { if (indicator.isCanceled()) { ApplicationManager.getApplication().invokeLater(() -> - Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) + Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) ); break; } @@ -49,7 +74,7 @@ public void run(@NotNull ProgressIndicator indicator) { } catch (Exception e) { if (e.getCause() instanceof CommandCancellationException) { ApplicationManager.getApplication().invokeLater(() -> - Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) + Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) ); } else { showErrorDialog(e, context); @@ -78,4 +103,4 @@ protected void showErrorDialog(Exception e, PitestContext context) { Messages.showErrorDialog(scrollPane, errorMessage) ); } -} +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunTestFileAnnoationCheckAction.java similarity index 89% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java rename to src/main/java/com/github/jaksonlin/testcraft/application/actions/RunTestFileAnnoationCheckAction.java index 49537f59..d7b3a726 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunTestFileAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunTestFileAnnoationCheckAction.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.presentation.actions; +package com.github.jaksonlin.testcraft.application.actions; -import com.github.jaksonlin.testcraft.application.commands.unittestannotations.CheckAnnotationCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java deleted file mode 100644 index 140ec8f9..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/CollectScanCommand.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.github.jaksonlin.testcraft.application.commands.testscan; - -public class CollectScanCommand { -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java b/src/main/java/com/github/jaksonlin/testcraft/application/completions/AnnotationCompletionContributor.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java rename to src/main/java/com/github/jaksonlin/testcraft/application/completions/AnnotationCompletionContributor.java index 2c75a250..7680a2e7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/AnnotationCompletionContributor.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/completions/AnnotationCompletionContributor.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.presentation.completions; +package com.github.jaksonlin.testcraft.application.completions; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.core.annotations.DefaultValue; -import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.domain.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; import com.intellij.codeInsight.completion.*; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.lang.java.JavaLanguage; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java b/src/main/java/com/github/jaksonlin/testcraft/application/completions/CustomAnnotationCompletionLookupElement.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java rename to src/main/java/com/github/jaksonlin/testcraft/application/completions/CustomAnnotationCompletionLookupElement.java index ac7bf575..21cc180e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/completions/CustomAnnotationCompletionLookupElement.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/completions/CustomAnnotationCompletionLookupElement.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.presentation.completions; +package com.github.jaksonlin.testcraft.application.completions; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationFieldType; import com.intellij.codeInsight.completion.InsertionContext; import com.intellij.codeInsight.lookup.LookupElement; import com.intellij.codeInsight.lookup.LookupElementPresentation; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java b/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java similarity index 92% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java rename to src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java index cabce616..f4e95a31 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/inspectors/UnittestInspector.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.presentation.inspectors; +package com.github.jaksonlin.testcraft.application.inspectors; import com.github.jaksonlin.testcraft.util.MyBundle; -import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestFileInspectorCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestFileInspectorCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.intellij.codeInspection.AbstractBaseJavaLocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/processors/LLMProcessor.java b/src/main/java/com/github/jaksonlin/testcraft/application/processors/LLMProcessor.java new file mode 100644 index 00000000..9a700f8c --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/application/processors/LLMProcessor.java @@ -0,0 +1,21 @@ +package com.github.jaksonlin.testcraft.application.processors; + +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; + +public class LLMProcessor { + + private String readFileContent(String filePath) { + try { + return new String(Files.readAllBytes(Paths.get(filePath)), StandardCharsets.UTF_8); + } catch (IOException e) { + throw new RuntimeException("Failed to read file: " + filePath, e); + } + } + + private String getSourceCode(String sourceCodeFile) { + return readFileContent(sourceCodeFile); + } +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java b/src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java deleted file mode 100644 index da77d491..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/application/processors/UnittestMethodProcessor.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.github.jaksonlin.testcraft.application.processors; - -import com.github.jaksonlin.testcraft.core.context.UnittestMethodContext; -import com.intellij.psi.PsiComment; -import com.intellij.psi.PsiMethod; -import com.intellij.psi.util.PsiTreeUtil; - -import java.util.ArrayList; -import java.util.List; - -public class UnittestMethodProcessor { - public static UnittestMethodContext fromPsiMethod(PsiMethod psiMethod) { - List comments = extractCommentsFromMethodBody(psiMethod); - return new UnittestMethodContext(psiMethod.getName(), comments); - } - - private static List extractCommentsFromMethodBody(PsiMethod psiMethod) { - List comments = new ArrayList<>(); - for (PsiComment comment : PsiTreeUtil.findChildrenOfType(psiMethod, PsiComment.class)) { - comments.add(comment.getText()); - } - return comments; - } -} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java index f4e5cf41..49929991 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; import com.intellij.json.JsonFileType; import com.intellij.openapi.editor.EditorSettings; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java index a5da1a2f..42c50a8e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/AnnotationSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.ConfigurationException; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java index 213c730b..e3a24281 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ex.EditorEx; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java index 52b40bbb..dee1250c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/InvalidTestCaseSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; -import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java index 19e3fb60..62e8e73d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java similarity index 85% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java index 6348712d..88e65689 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/OllamaSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; -import com.github.jaksonlin.testcraft.core.services.LLMService; +import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; import com.github.jaksonlin.testcraft.util.MyBundle; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; @@ -11,7 +11,7 @@ public class OllamaSettingsConfigurable implements Configurable { private OllamaSettingsComponent settingsComponent = new OllamaSettingsComponent(); - private final LLMService llmService = ApplicationManager.getApplication().getService(LLMService.class); + private final LLMConfigService llmConfigService = ApplicationManager.getApplication().getService(LLMConfigService.class); @Nls(capitalization = Nls.Capitalization.Title) @Override @@ -36,7 +36,7 @@ public boolean isModified() { if (settingsComponent == null) { return false; } - LLMService.State state = llmService.getState(); + LLMConfigService.State state = llmConfigService.getState(); boolean modified = !settingsComponent.getHostText().equals(state.ollamaHost); modified |= !settingsComponent.getPortText().equals(String.valueOf(state.ollamaPort)); modified |= !settingsComponent.getModelText().equals(state.ollamaModel); @@ -50,7 +50,7 @@ public boolean isModified() { @Override public void apply() { try { - LLMService.State state = llmService.getState(); + LLMConfigService.State state = llmConfigService.getState(); state.ollamaHost = settingsComponent.getHostText(); state.ollamaPort = Integer.parseInt(settingsComponent.getPortText()); state.maxTokens = Integer.parseInt(settingsComponent.getMaxTokensText()); @@ -59,7 +59,7 @@ public void apply() { state.ollamaModel = settingsComponent.getModelText(); state.copyAsMarkdown = settingsComponent.getCopyAsMarkdown(); - llmService.loadState(state); + llmConfigService.loadState(state); } catch (NumberFormatException e) { // Handle invalid number format throw new IllegalStateException("Invalid number format in settings", e); @@ -69,7 +69,7 @@ public void apply() { @Override public void reset() { // Reset the settings component with the current state of the LLMService - LLMService.State state = llmService.getState(); + LLMConfigService.State state = llmConfigService.getState(); settingsComponent.setHostText(state.ollamaHost); settingsComponent.setPortText(String.valueOf(state.ollamaPort)); settingsComponent.setModelText(state.ollamaModel); diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java rename to src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java index 283ac7f8..be8ce138 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/settings/TestCraftSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.infrastructure.settings; +package com.github.jaksonlin.testcraft.application.settings; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.SearchableConfigurable; @@ -11,7 +11,7 @@ public class TestCraftSettingsConfigurable implements SearchableConfigurable.Parent { @Override public @NotNull String getId() { - return "com.github.jaksonlin.testcraft.infrastructure.settings"; + return "com.github.jaksonlin.testcraft.application.settings"; } @Override diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldConfig.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldConfig.java index 5a894228..d2646199 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldType.java similarity index 52% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldType.java index ad526cc8..159b78c9 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationFieldType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationFieldType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; public enum AnnotationFieldType { STRING, diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationParser.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationParser.java index eecd655b..d019f253 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationParser.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationParser.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; -import com.github.jaksonlin.testcraft.core.context.UnittestCase; +import com.github.jaksonlin.testcraft.domain.context.UnittestCase; import org.jetbrains.annotations.Nullable; import java.util.HashMap; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationSchema.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationSchema.java index 7d54f676..5a2167bf 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationSchema.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationSchema.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import com.fasterxml.jackson.databind.ObjectMapper; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationValidator.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationValidator.java index 9fc68645..bf31da30 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/AnnotationValidator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/AnnotationValidator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/DefaultValue.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/DefaultValue.java index 351d11be..e5de1c7f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/DefaultValue.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/DefaultValue.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/FieldValidation.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/FieldValidation.java index 593cdb7e..9b9ffee7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/FieldValidation.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/FieldValidation.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/UnittestAnnotationConfig.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/UnittestAnnotationConfig.java index efe17649..1fb07e5b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/UnittestAnnotationConfig.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/UnittestAnnotationConfig.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; public class UnittestAnnotationConfig { private String authorField; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValidationMode.java similarity index 64% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValidationMode.java index c850c638..206ac1da 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValidationMode.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValidationMode.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; public enum ValidationMode { EXACT, // Exact string match diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProvider.java similarity index 93% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProvider.java index 49c460e3..2e6788a1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProvider.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProvider.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; import com.fasterxml.jackson.databind.JsonNode; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProviderType.java similarity index 81% rename from src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProviderType.java index 56123a05..8c2e510c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/annotations/ValueProviderType.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/annotations/ValueProviderType.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.annotations; +package com.github.jaksonlin.testcraft.domain.annotations; public enum ValueProviderType { GIT_AUTHOR, diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/CaseCheckContext.java similarity index 82% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/CaseCheckContext.java index 58c0760b..96f45778 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/CaseCheckContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/CaseCheckContext.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationParser; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationParser; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiMethod; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/PitestContext.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/PitestContext.java index dddbfa0d..aede9480 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/PitestContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/PitestContext.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.MutationReportParser; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/TestPoints.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/TestPoints.java index 55ef18cb..c909bf44 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/TestPoints.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/TestPoints.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; import java.util.Arrays; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCase.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCase.java index f048d83e..40a87459 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCase.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCase.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseInfoContext.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseInfoContext.java index edeb48dc..430ea77b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseInfoContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseInfoContext.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; -import com.github.jaksonlin.testcraft.core.annotations.UnittestAnnotationConfig; +import com.github.jaksonlin.testcraft.domain.annotations.UnittestAnnotationConfig; import java.util.Collections; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseStatus.java similarity index 56% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseStatus.java index 79a914de..98411cbb 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestCaseStatus.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestCaseStatus.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; public enum UnittestCaseStatus { TODO, DONE, BROKEN, DEPRECATED diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestMethodContext.java similarity index 88% rename from src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java rename to src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestMethodContext.java index 145d7048..20b30106 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/context/UnittestMethodContext.java +++ b/src/main/java/com/github/jaksonlin/testcraft/domain/context/UnittestMethodContext.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.context; +package com.github.jaksonlin.testcraft.domain.context; import java.util.List; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/CommandCancellationException.java similarity index 70% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/CommandCancellationException.java index 458175d3..5af4d962 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/CommandCancellationException.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/CommandCancellationException.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.application.commands; +package com.github.jaksonlin.testcraft.infrastructure.commands; public class CommandCancellationException extends Exception{ diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/BuildPitestCommandCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/BuildPitestCommandCommand.java index bf028d02..0378ca04 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/BuildPitestCommandCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/BuildPitestCommandCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.intellij.openapi.project.Project; import java.util.ArrayList; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java index 124f7824..d1d12d13 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/HandlePitestResultCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.application.ApplicationManager; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java similarity index 88% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java index e42206f4..3c91a55a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.core.context.PitestContext; -import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.infrastructure.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java index e4152d45..e0b5ddfd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/PrepareEnvironmentCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.application.commands.CommandCancellationException; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.CommandCancellationException; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.util.*; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.application.ReadAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/RunPitestCommand.java similarity index 94% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/RunPitestCommand.java index 36a29d28..46cc79a7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/RunPitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/RunPitestCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.ProcessExecutor; import com.github.jaksonlin.testcraft.util.ProcessResult; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/StoreHistoryCommand.java similarity index 69% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/StoreHistoryCommand.java index 9ccd93ef..ec664965 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/pitest/StoreHistoryCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/StoreHistoryCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.application.commands.pitest; +package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; -import com.github.jaksonlin.testcraft.core.context.PitestContext; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.intellij.openapi.project.Project; public class StoreHistoryCommand extends PitestCommand { diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/CollectScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/CollectScanCommand.java new file mode 100644 index 00000000..a1fc5eaf --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/CollectScanCommand.java @@ -0,0 +1,4 @@ +package com.github.jaksonlin.testcraft.infrastructure.commands.testscan; + +public class CollectScanCommand { +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java index a3b449f0..84c194c6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestCaseCheckCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java @@ -1,9 +1,9 @@ -package com.github.jaksonlin.testcraft.application.commands.testscan; +package com.github.jaksonlin.testcraft.infrastructure.commands.testscan; import com.github.jaksonlin.testcraft.util.MyBundle; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.core.context.UnittestCase; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.domain.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; import com.intellij.psi.*; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileBatchScanCommand.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileBatchScanCommand.java index 68f8c5b3..80c8658b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileBatchScanCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileBatchScanCommand.java @@ -1,6 +1,6 @@ -package com.github.jaksonlin.testcraft.application.commands.testscan; +package com.github.jaksonlin.testcraft.infrastructure.commands.testscan; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.intellij.codeInspection.InspectionManager; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.actionSystem.AnActionEvent; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileInspectorCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileInspectorCommand.java index 24949bc2..1cff7688 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/testscan/UnittestFileInspectorCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestFileInspectorCommand.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.application.commands.testscan; +package com.github.jaksonlin.testcraft.infrastructure.commands.testscan; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.core.services.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; import com.intellij.codeInspection.ProblemHighlightType; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.application.ApplicationManager; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckAnnotationCommand.java similarity index 87% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckAnnotationCommand.java index a0d9d715..aa58be97 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckAnnotationCommand.java @@ -1,10 +1,10 @@ -package com.github.jaksonlin.testcraft.application.commands.unittestannotations; +package com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.core.context.UnittestCase; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.domain.context.UnittestCase; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckMethodDataCommand.java similarity index 84% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckMethodDataCommand.java index bb9ac4cc..b05fbaf8 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/CheckMethodDataCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/CheckMethodDataCommand.java @@ -1,7 +1,7 @@ -package com.github.jaksonlin.testcraft.application.commands.unittestannotations; +package com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations; -import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiAnnotation; import com.intellij.psi.PsiComment; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java similarity index 95% rename from src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java index f691945e..3c0ad29c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/commands/unittestannotations/GenerateAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java @@ -1,14 +1,14 @@ -package com.github.jaksonlin.testcraft.application.commands.unittestannotations; +package com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations; import com.fasterxml.jackson.databind.node.ArrayNode; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldConfig; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationFieldType; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; -import com.github.jaksonlin.testcraft.core.annotations.DefaultValue; -import com.github.jaksonlin.testcraft.application.commands.testscan.UnittestCaseCheckCommand; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; -import com.github.jaksonlin.testcraft.core.services.AnnotationConfigService; -import com.github.jaksonlin.testcraft.core.services.AnnotationValueProviderService; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationFieldConfig; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationFieldType; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.domain.annotations.DefaultValue; +import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestCaseCheckCommand; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.business.AnnotationValueProviderService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ReadAction; import com.intellij.openapi.command.WriteCommandAction; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BaseEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BaseEvent.java new file mode 100644 index 00000000..35e456fd --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BaseEvent.java @@ -0,0 +1,27 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +public abstract class BaseEvent { + private final String eventType; + private final Object payload; + + protected BaseEvent(String eventType, Object payload) { + this.eventType = eventType; + this.payload = payload; + } + + public String getEventType() { + return eventType; + } + + public Object getPayload() { + return payload; + } + + @Override + public String toString() { + return "BaseEvent{" + + "eventType='" + eventType + '\'' + + ", payload=" + payload + + '}'; + } +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BasicEventObserver.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BasicEventObserver.java new file mode 100644 index 00000000..296a8d68 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/BasicEventObserver.java @@ -0,0 +1,16 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BaseEvent; +import com.google.common.eventbus.Subscribe; + +public abstract class BasicEventObserver { + protected BasicEventObserver() { + } + + @Subscribe + public void onEvent(BaseEvent event) { + onEventHappen(event.getEventType(), event.getPayload()); + } + + public abstract void onEventHappen(String eventName, Object eventObj); +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java new file mode 100644 index 00000000..99ba691d --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java @@ -0,0 +1,17 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +public class ChatEvent extends BaseEvent { + public static final String CLEAR_CHAT = "CLEAR_CHAT"; + public static final String CHAT_REQUEST = "CHAT_REQUEST"; + public static final String CHAT_RESPONSE = "CHAT_RESPONSE"; + public static final String START_LOADING = "START_LOADING"; + public static final String STOP_LOADING = "STOP_LOADING"; + public static final String COPY_CHAT_RESPONSE = "COPY_CHAT_RESPONSE"; + public static final String CONFIG_CHANGE_COPY_AS_MARKDOWN = "CONFIG_CHANGE:copyAsMarkdown"; + public static final String DRY_RUN_PROMPT = "DRY_RUN_PROMPT"; + public static final String ERROR = "ERROR"; + + public ChatEvent(String eventType, Object payload) { + super(eventType, payload); + } +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/LLMConfigEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/LLMConfigEvent.java new file mode 100644 index 00000000..19408a34 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/LLMConfigEvent.java @@ -0,0 +1,10 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +public class LLMConfigEvent extends BaseEvent { + public static final String CONFIG_CHANGE = "CONFIG_CHANGE"; + public static final String CONFIG_CHANGE_COPY_AS_MARKDOWN = "CONFIG_CHANGE:copyAsMarkdown"; + + public LLMConfigEvent(String eventType, Object payload) { + super(eventType, payload); + } +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/RunHistoryEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/RunHistoryEvent.java new file mode 100644 index 00000000..cce4d852 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/RunHistoryEvent.java @@ -0,0 +1,10 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +public class RunHistoryEvent extends BaseEvent { + public static final String RUN_HISTORY = "RUN_HISTORY"; + public static final String RUN_HISTORY_LIST = "RUN_HISTORY_LIST"; + + public RunHistoryEvent(String eventType, Object payload) { + super(eventType, payload); + } +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/listeners/MyApplicationActivationListener.java similarity index 87% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/listeners/MyApplicationActivationListener.java index 17822c2e..c2addd07 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/listeners/MyApplicationActivationListener.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/listeners/MyApplicationActivationListener.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.listeners; +package com.github.jaksonlin.testcraft.infrastructure.messaging.listeners; import com.intellij.openapi.application.ApplicationActivationListener; import com.intellij.openapi.diagnostic.Logger; diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java similarity index 59% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java index 810ba34b..e1164863 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatClient.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; public interface ILLMChatClient { diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatMediator.java similarity index 83% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatMediator.java index d6839ddc..3d7199db 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/ILLMChatMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatMediator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; @@ -8,7 +8,6 @@ public interface ILLMChatMediator { void setOllamaClient(OllamaClient ollamaClient); void generateUnittestRequest(String testCodeFile, String sourceCodeFile, List mutationList); - void register(ILLMChatClient chatClient); String dryRunGetPrompt(String testClassName, String sourceClassName, List mutations); void handleChatMessage(String message); void clearChat(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java similarity index 77% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java index 90f1eea7..596fa5d6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java similarity index 75% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java index 110c68af..df1b9280 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/IMutationReportUI.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; import com.github.jaksonlin.testcraft.util.Pair; diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java similarity index 86% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java index 6647ef60..bab53604 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/LLMChatMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java @@ -1,12 +1,15 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.diagnostic.Logger; import javax.swing.*; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; @@ -20,7 +23,7 @@ public class LLMChatMediatorImpl implements ILLMChatMediator { private static final Logger LOG = Logger.getInstance(LLMChatMediatorImpl.class); - private ILLMChatClient chatClient; + private final EventBusService eventBusService = EventBusService.getInstance(); private final ExecutorService executorService = Executors.newSingleThreadExecutor(); private OllamaClient ollamaClient; private final List messageHistory = new ArrayList<>(); @@ -38,7 +41,6 @@ public String getChatHistory() { .map(message -> message.getRole() + ": " + message.getContent()) .collect(Collectors.joining("\n")); } - // generate unittest using mutation result, this will clear the chat history @Override public void generateUnittestRequest(String testCodeFile, String sourceCodeFile, List mutations) { @@ -46,31 +48,26 @@ public void generateUnittestRequest(String testCodeFile, String sourceCodeFile, try { // Test connection before attempting to send message if (!ollamaClient.testConnection()) { - if (chatClient != null) { - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("ERROR", - MyBundle.message("llm.error.connection"))); - } + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, + MyBundle.message("llm.error.connection"))); return; } + List messages = createPromptOnly(testCodeFile, sourceCodeFile, mutations); if (messages.isEmpty()) { - if (chatClient != null) { - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("ERROR", - MyBundle.message("llm.error.no.mutations"))); - } + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, + MyBundle.message("llm.error.no.mutations"))); return; } messageHistory.addAll(messages); String rawResponse = ollamaClient.chatCompletion(messageHistory); messageHistory.add(new OllamaClient.Message("assistant", rawResponse)); String formattedResponse = formatResponse(rawResponse); - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("UNIT_TEST_REQUEST", formattedResponse)); + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, formattedResponse)); } catch (Exception e) { LOG.error("Failed to generate unit test suggestions", e); - if (chatClient != null) { - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("ERROR", "Error: " + e.toString())); - } + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, "Error: " + e.toString())); } }); } @@ -82,10 +79,8 @@ public void handleChatMessage(String message) { try { // Test connection before attempting to send message if (!ollamaClient.testConnection()) { - if (chatClient != null) { - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("ERROR", - MyBundle.message("llm.error.connection"))); - } + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, + MyBundle.message("llm.error.connection"))); return; } messageHistory.add(new OllamaClient.Message("user", message)); @@ -93,12 +88,10 @@ public void handleChatMessage(String message) { messageHistory.add(new OllamaClient.Message("assistant", rawResponse)); // Format the response String formattedResponse = formatResponse(rawResponse); - chatClient.updateChatResponse("CHAT_MESSAGE", formattedResponse); + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, formattedResponse)); } catch (Exception e) { LOG.error("Failed to respond to chat message", e); - if (chatClient != null) { - SwingUtilities.invokeLater(() -> chatClient.updateChatResponse("ERROR", "Error: " + e.toString())); - } + eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, "Error: " + e.toString())); } }); } @@ -199,8 +192,8 @@ private List createPromptOnly(String testCodeFile, String promptOnlyMessages.add(new OllamaClient.Message("system", MyBundle.message("llm.prompt.system"))); // Read source files if needed - String sourceCode = Files.readString(Paths.get(sourceCodeFile)); - String testCode = Files.readString(Paths.get(testCodeFile)); + String sourceCode = readFileContent(sourceCodeFile); + String testCode = readFileContent(testCodeFile); // User message with the structured data String prompt = String.format(MyBundle.message("llm.prompt.user"), @@ -252,6 +245,18 @@ private List createPromptOnlyWithoutCodeContent(String tes return promptOnlyMessages; } + + private String readFileContent(String filePath) { + try { + return new String(Files.readAllBytes(Paths.get(filePath)), StandardCharsets.UTF_8); + } catch (IOException e) { + throw new RuntimeException("Failed to read file: " + filePath, e); + } + } + + private String getSourceCode(String sourceCodeFile) { + return readFileContent(sourceCodeFile); + } @Override public String dryRunGetPrompt(String testClassName, String sourceClassName, List mutations) { try { @@ -293,12 +298,6 @@ public String dryRunGetPrompt(String testClassName, String sourceClassName, List } } - - - @Override - public void register(ILLMChatClient chatClient) { - this.chatClient = chatClient; - } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java index d55029e2..8db4befc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/mediators/MutationMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.messaging.mediators; +package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java index ba27e81b..9a0cf34a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationValueProviderService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.infrastructure.services.business; -import com.github.jaksonlin.testcraft.core.annotations.ValueProvider; -import com.github.jaksonlin.testcraft.core.annotations.ValueProviderType; -import com.github.jaksonlin.testcraft.core.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.domain.annotations.ValueProvider; +import com.github.jaksonlin.testcraft.domain.annotations.ValueProviderType; +import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.GitUtil; import com.intellij.openapi.components.Service; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/PitestService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/PitestService.java new file mode 100644 index 00000000..72ad64d3 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/PitestService.java @@ -0,0 +1,9 @@ +package com.github.jaksonlin.testcraft.infrastructure.services.business; + +import com.intellij.openapi.components.Service; + +@Service(Service.Level.APP) +public final class PitestService { + + +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java similarity index 68% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java index 739e9679..feeee08c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/RunHistoryManagerService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java @@ -1,12 +1,13 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.infrastructure.services.business; -import com.github.jaksonlin.testcraft.core.context.PitestContext; -import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; import com.github.jaksonlin.testcraft.util.Pair; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; import com.google.gson.reflect.TypeToken; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.components.Service; import com.intellij.openapi.project.Project; @@ -24,30 +25,32 @@ import java.util.Map; import java.util.stream.Collectors; -@Service(Service.Level.PROJECT) -public final class RunHistoryManagerService extends ObserverBase { +@Service(Service.Level.APP) +public final class RunHistoryManagerService { private static final Logger log = LoggerFactory.getLogger(RunHistoryManagerService.class); - private final Project project; + private final EventBusService eventBusService = EventBusService.getInstance(); private final Gson gson = new Gson(); private final File historyFile; private final Map history; - public RunHistoryManagerService(@NotNull Project project) { - this.project = project; - this.historyFile = new File(PathManager.getConfigPath(), "run-" + project.getName() + "-history.json"); + public RunHistoryManagerService() { + this.historyFile = new File(PathManager.getConfigPath(), "run-history.json"); this.history = loadRunHistory(); } - @Override - public void addObserver(BasicEventObserver observer) { - super.addObserver(observer); + public static RunHistoryManagerService getInstance() { + return ApplicationManager.getApplication().getService(RunHistoryManagerService.class); + } + + public void register(Object observer) { + + eventBusService.register(observer); // when observer is added, pass current value of history to observer, force it to update - // pass current value of history to observer, List> List> mappedHistory = history.entrySet().stream() .map(entry -> new Pair<>(entry.getValue().getTargetClassPackageName(), entry.getValue().getTargetClassName())) .collect(Collectors.toList()); - observer.onEventHappen("RUN_HISTORY", mappedHistory); - observer.onEventHappen("RUN_HISTORY_LIST", getRunHistory()); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY, mappedHistory)); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY_LIST, getRunHistory())); } @Nullable @@ -70,8 +73,8 @@ public void clearRunHistory() { if (historyFile.exists()) { historyFile.delete(); } - notifyObservers("RUN_HISTORY", null); - notifyObservers("RUN_HISTORY_LIST", null); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY, null)); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY_LIST, null)); } @NotNull @@ -85,8 +88,8 @@ public void saveRunHistory(@NotNull PitestContext entry) { String json = gson.toJson(history); Files.write(historyFile.toPath(), json.getBytes()); // this should be a Pair> - notifyObservers("RUN_HISTORY", new Pair(entry.getTargetClassPackageName(), entry.getTargetClassName())); - notifyObservers("RUN_HISTORY_LIST", getRunHistory()); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY, new Pair(entry.getTargetClassPackageName(), entry.getTargetClassName()))); + eventBusService.post(new RunHistoryEvent(RunHistoryEvent.RUN_HISTORY_LIST, getRunHistory())); } catch (IOException e) { // Handle the exception appropriately, e.g., log an error log.error("Error saving run history", e); diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/AnnotationConfigService.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/AnnotationConfigService.java index 9425c285..dc40bdad 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/AnnotationConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/AnnotationConfigService.java @@ -1,8 +1,8 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.infrastructure.services.config; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; -import com.github.jaksonlin.testcraft.core.annotations.AnnotationSchema; +import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; import com.intellij.openapi.components.State; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/InvalidTestCaseConfigService.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/InvalidTestCaseConfigService.java index 1d4c9e03..b3a1bda1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/InvalidTestCaseConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/InvalidTestCaseConfigService.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.infrastructure.services.config; import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.components.Service; diff --git a/src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java similarity index 70% rename from src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java rename to src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java index 3250c147..60a70406 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/core/services/LLMService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java @@ -1,9 +1,8 @@ -package com.github.jaksonlin.testcraft.core.services; +package com.github.jaksonlin.testcraft.infrastructure.services.config; -import com.github.jaksonlin.testcraft.messaging.mediators.ILLMChatMediator; -import com.github.jaksonlin.testcraft.messaging.mediators.LLMChatMediatorImpl; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; -import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.ILLMChatMediator; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.LLMChatMediatorImpl; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.OllamaClient; import com.intellij.openapi.components.Service; @@ -13,25 +12,32 @@ import java.util.Objects; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.testcraft.messaging.mediators.ILLMChatClient; + +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.LLMConfigEvent; import com.intellij.openapi.components.State; import com.intellij.openapi.components.Storage; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.PersistentStateComponent; @Service(Service.Level.APP) @State( - name = "com.github.jaksonlin.testcraft.core.services.LLMService", + name = "com.github.jaksonlin.testcraft.infrastructure.services.LLMService", storages = @Storage(value = "$APP_CONFIG$/LLMService.xml") ) -public final class LLMService - extends ObserverBase - implements ILLMChatClient, BasicEventObserver, PersistentStateComponent { +public final class LLMConfigService + extends BasicEventObserver + implements PersistentStateComponent { - private static final Logger LOG = Logger.getInstance(LLMService.class); + private static final Logger LOG = Logger.getInstance(LLMConfigService.class); private final ILLMChatMediator llmChatMediator = new LLMChatMediatorImpl(); + public static LLMConfigService getInstance() { + return ApplicationManager.getApplication().getService(LLMConfigService.class); + } - public LLMService() { - llmChatMediator.register(this); + public LLMConfigService() { + EventBusService.getInstance().register(this); } public static class State { @@ -78,7 +84,7 @@ public State getState() { public void loadState(@NotNull State state) { LOG.info("Loading LLMService state: " + state); myState = state; - notifyObservers("CONFIG_CHANGE:copyAsMarkdown", state.copyAsMarkdown); + EventBusService.getInstance().post(new LLMConfigEvent(LLMConfigEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN, state.copyAsMarkdown)); } public void generateUnittestRequest(String testCodeFile, String sourceCodeFile, List mutationList) { @@ -95,15 +101,7 @@ public void generateUnittestRequest(String testCodeFile, String sourceCodeFile, llmChatMediator.generateUnittestRequest(testCodeFile, sourceCodeFile, mutationList); } - // the mediator is dedicated to talk to the LLM, and when the response is ready, the service will propagate the response to the observers - // so that on the UI layer, this is the place to notify all the observers - // the mediator is not responsible for the UI, so it does not know the UI is a Swing UI - @Override - public void updateChatResponse(String responseType, String chatResponse) { - LOG.info("Received chat response: " + chatResponse); - notifyObservers("CHAT_RESPONSE:" + responseType, chatResponse); - } - + public void handleChatMessage(String message) { LOG.info("Received chat message: " + message); llmChatMediator.setOllamaClient(new OllamaClient( @@ -121,10 +119,14 @@ public String dryRunGetPrompt(String testClassName, String sourceClassName, List return llmChatMediator.dryRunGetPrompt(testClassName, sourceClassName, mutations); } + @Override public void onEventHappen(String eventName, Object eventObj) { // Handle events from LLMChatMediator if needed switch (eventName) { - case "CLEAR_CHAT": + case ChatEvent.CHAT_REQUEST: + this.llmChatMediator.handleChatMessage(eventObj.toString()); + break; + case ChatEvent.CLEAR_CHAT: this.llmChatMediator.clearChat(); break; default: @@ -137,6 +139,6 @@ public String getChatHistory() { } public void propagateConfigChange() { - notifyObservers("CONFIG_CHANGE:copyAsMarkdown", myState.copyAsMarkdown); + EventBusService.getInstance().post(new LLMConfigEvent(LLMConfigEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN, myState.copyAsMarkdown)); } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java new file mode 100644 index 00000000..6a37dada --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java @@ -0,0 +1,30 @@ +package com.github.jaksonlin.testcraft.infrastructure.services.system; + +import com.google.common.eventbus.EventBus; +import com.intellij.openapi.components.Service; +import com.intellij.openapi.application.ApplicationManager; + +@Service(Service.Level.APP) +public final class EventBusService { + private final EventBus eventBus; + + public EventBusService() { + this.eventBus = new EventBus("TestCraftEventBus"); + } + + public void register(Object subscriber) { + eventBus.register(subscriber); + } + + public void unregister(Object subscriber) { + eventBus.unregister(subscriber); + } + + public void post(Object event) { + eventBus.post(event); + } + + public static EventBusService getInstance() { + return ApplicationManager.getApplication().getService(EventBusService.class); + } +} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java deleted file mode 100644 index 619c9da6..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/BasicEventObserver.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.github.jaksonlin.testcraft.messaging.observers; - -public interface BasicEventObserver { - void onEventHappen(String eventName, Object eventObj); -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java b/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java deleted file mode 100644 index eb243a1e..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/messaging/observers/ObserverBase.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.github.jaksonlin.testcraft.messaging.observers; - -import java.util.ArrayList; -import java.util.List; - -public class ObserverBase { - private final List observers = new ArrayList<>(); - - public void addObserver(BasicEventObserver observer) { - observers.add(observer); - } - - public void removeObserver(BasicEventObserver observer) { - observers.remove(observer); - } - - protected void notifyObservers(String eventName, Object eventObj) { - for (BasicEventObserver observer : observers) { - observer.onEventHappen(eventName, eventObj); - } - } -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java deleted file mode 100644 index 1c3752b4..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/actions/RunPitestAction.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.github.jaksonlin.testcraft.presentation.actions; - -import com.github.jaksonlin.testcraft.core.services.PitestService; -import com.intellij.openapi.actionSystem.AnAction; -import com.intellij.openapi.actionSystem.AnActionEvent; -import com.intellij.openapi.actionSystem.PlatformDataKeys; -import com.intellij.openapi.application.ApplicationManager; -import com.intellij.openapi.project.Project; -import com.intellij.openapi.vfs.VirtualFile; -import org.jetbrains.annotations.NotNull; - -public class RunPitestAction extends AnAction { - - private final PitestService pitestService; - - public RunPitestAction() { - pitestService = ApplicationManager.getApplication().getService(PitestService.class); - } - - @Override - public void actionPerformed(@NotNull AnActionEvent e) { - Project targetProject = e.getProject(); - if (targetProject == null) { - return; - } - - VirtualFile testVirtualFile = e.getData(PlatformDataKeys.VIRTUAL_FILE); - if (testVirtualFile == null) { - return; - } - - pitestService.runPitest(targetProject, testVirtualFile.getPath()); - } -} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java index faa5e401..585224ff 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java @@ -1,5 +1,7 @@ package com.github.jaksonlin.testcraft.presentation.components; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; @@ -7,19 +9,12 @@ import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyAdapter; -import java.util.ArrayList; -import java.util.List; public class ChatPanel extends JPanel { private final JTextArea inputArea; private final JButton sendButton; - private final List listeners = new ArrayList<>(); private final JPanel inputPanel; - public interface ChatMessageListener { - void onNewMessage(String message); - } - public ChatPanel() { setLayout(new BorderLayout()); @@ -51,9 +46,7 @@ public void keyPressed(KeyEvent e) { }); } - public void addListener(ChatMessageListener listener) { - listeners.add(listener); - } + public JPanel getInputPanel() { return inputPanel; @@ -62,7 +55,7 @@ public JPanel getInputPanel() { private void sendMessage() { String message = inputArea.getText().trim(); if (!message.isEmpty()) { - listeners.forEach(listener -> listener.onNewMessage(message)); + EventBusService.getInstance().post(new ChatEvent(ChatEvent.CHAT_REQUEST, message)); inputArea.setText(""); inputArea.requestFocus(); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java index 457732cd..bddaa945 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java @@ -1,6 +1,8 @@ package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; import org.commonmark.node.Node; @@ -16,28 +18,14 @@ import javax.swing.text.html.HTMLEditorKit; import javax.swing.text.html.StyleSheet; import java.awt.*; -import java.util.ArrayList; import java.util.Timer; import java.util.TimerTask; -import java.util.List; import java.util.ResourceBundle; import javax.swing.text.html.HTMLDocument; -public class LLMResponsePanel extends JPanel implements BasicEventObserver { +public class LLMResponsePanel extends JPanel { private static final String BUNDLE = "messages.MyBundle"; private static ResourceBundle ourBundle; - - public static String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { - return AbstractBundle.message(getBundle(), key, params); - } - - private static ResourceBundle getBundle() { - if (ourBundle == null) { - ourBundle = ResourceBundle.getBundle(BUNDLE); - } - return ourBundle; - } - private final JEditorPane outputArea; private final ChatPanel chatPanel; private boolean isLoading = false; @@ -48,6 +36,18 @@ private static ResourceBundle getBundle() { private final JPanel loadingPanel; private final Timer loadingTimer; private final JLabel loadingLabel; + private final BasicEventObserver eventObserver; + + public static String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { + return AbstractBundle.message(getBundle(), key, params); + } + + private static ResourceBundle getBundle() { + if (ourBundle == null) { + ourBundle = ResourceBundle.getBundle(BUNDLE); + } + return ourBundle; + } private static final String BASE_HTML_TEMPLATE = "\n" + @@ -71,31 +71,13 @@ private static ResourceBundle getBundle() { "\n" + "
      "; - public interface ResponseActionListener { - void onClearButtonClick(); - void onCopyButtonClick(); - } - - private List responseActionListeners = new ArrayList<>(); - - public void addResponseActionListener(ResponseActionListener listener) { - responseActionListeners.add(listener); - } - - public void removeResponseActionListener(ResponseActionListener listener) { - responseActionListeners.remove(listener); - } - + public void notifyClearButtonClick() { - for (ResponseActionListener listener : responseActionListeners) { - listener.onClearButtonClick(); - } + EventBusService.getInstance().post(new ChatEvent(ChatEvent.CLEAR_CHAT, null)); } public void notifyCopyButtonClick() { - for (ResponseActionListener listener : responseActionListeners) { - listener.onCopyButtonClick(); - } + EventBusService.getInstance().post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); } public LLMResponsePanel(ChatPanel chatPanel) { @@ -103,6 +85,50 @@ public LLMResponsePanel(ChatPanel chatPanel) { setLayout(new BorderLayout()); setBorder(JBUI.Borders.empty(10)); + // Create event observer + this.eventObserver = new BasicEventObserver() { + @Override + public void onEventHappen(String eventName, Object eventObj) { + switch (eventName) { + case ChatEvent.START_LOADING: + startLoading(); + break; + case ChatEvent.STOP_LOADING: + stopLoading(); + break; + case ChatEvent.CHAT_REQUEST: + if (!isLoading) { + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", message("llm.user"), eventObj.toString())); + startLoading(); + } + break; + case ChatEvent.CHAT_RESPONSE: + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", message("llm.assistant"), eventObj.toString())); + break; + case ChatEvent.COPY_CHAT_RESPONSE: + copyToClipboard(eventObj); + break; + case ChatEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN: + copyAsMarkdown = (boolean) eventObj; + break; + case ChatEvent.DRY_RUN_PROMPT: + String dryRunPrompt = (String) eventObj; + if (dryRunPrompt.isEmpty()){ + JOptionPane.showMessageDialog(LLMResponsePanel.this, message("llm.dry.run.prompt.empty"), message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); + } else { + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", message("llm.system"), message("llm.dry.run.prompt") + "\n" + eventObj.toString())); + } + break; + case ChatEvent.ERROR: + JOptionPane.showMessageDialog(LLMResponsePanel.this, message("llm.error") + ": " + eventObj.toString(), message("llm.error"), JOptionPane.ERROR_MESSAGE); + break; + } + } + }; + + // Register with event bus + EventBusService.getInstance().register(eventObserver); + // Setup improved JEditorPane for HTML rendering outputArea = new JEditorPane(); outputArea.setEditable(false); @@ -167,10 +193,6 @@ public LLMResponsePanel(ChatPanel chatPanel) { add(centerPanel, BorderLayout.CENTER); add(inputPanel, BorderLayout.SOUTH); - // add the chatPanel to the responsePanel, and notify update on the responsePanel with user message - this.chatPanel.addListener(message -> { - onEventHappen("CHAT_REQUEST", message); - }); // Initialize with empty chat container updateOutputArea(); @@ -324,53 +346,4 @@ private void copyToClipboard(Object eventObj) { StringSelection selection = new StringSelection(currentContentToCopy); Toolkit.getDefaultToolkit().getSystemClipboard().setContents(selection, selection); } - - @Override - public void onEventHappen(String eventName, Object eventObj) { - switch (eventName) { - case "START_LOADING": - startLoading(); - break; - case "STOP_LOADING": - stopLoading(); - break; - case "COPY_CHAT_RESPONSE": - copyToClipboard(eventObj); - break; - case "CONFIG_CHANGE:copyAsMarkdown": - copyAsMarkdown = (boolean) eventObj; - break; - case "CHAT_REQUEST": - if (!isLoading) { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", message("llm.user"), eventObj.toString())); - startLoading(); - } - break; - case "DRY_RUN_PROMPT": - String dryRunPrompt = (String) eventObj; - if (dryRunPrompt.isEmpty()){ - JOptionPane.showMessageDialog(this, message("llm.dry.run.prompt.empty"), message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); - } else { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", message("llm.system"), message("llm.dry.run.prompt") + "\n" + eventObj.toString())); - } - break; - default: - String[] responseType = eventName.split(":"); - if (responseType.length > 1 && responseType[0].equals("CHAT_RESPONSE")) { - switch (responseType[1]) { - case "CHAT_MESSAGE": - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", message("llm.assistant"), eventObj.toString())); - break; - case "ERROR": - JOptionPane.showMessageDialog(this, message("llm.error") + ": " + eventObj.toString(), message("llm.error"), JOptionPane.ERROR_MESSAGE); - break; - case "UNIT_TEST_REQUEST": - clearOutput(); - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", message("llm.system"), message("llm.new.unit.test.suggestion") + "\n" + eventObj.toString())); - break; - } - } - break; - } - } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java index ea99077a..ed9eba97 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java @@ -1,7 +1,9 @@ package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.core.context.PitestContext; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.presentation.viewmodels.LLMSuggestionUIComponentViewModel; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.ui.ComboBox; @@ -16,9 +18,8 @@ import java.util.List; import java.util.Map; import java.util.ResourceBundle; -import com.github.jaksonlin.testcraft.core.services.LLMService; -public class LLMSuggestionUIComponent implements BasicEventObserver { +public class LLMSuggestionUIComponent extends BasicEventObserver { private static final String BUNDLE = "messages.MyBundle"; private static ResourceBundle ourBundle; @@ -43,31 +44,14 @@ private static ResourceBundle getBundle() { private final JButton dryRunButton = new JButton(message("llm.check.prompt")); private List allFileItems = new ArrayList<>(); - public LLMSuggestionUIComponent(LLMService llmService) { + public LLMSuggestionUIComponent() { setupUI(); // setup message routing - viewModel = new LLMSuggestionUIComponentViewModel(llmService); - viewModel.addObserver(this); - viewModel.addObserver(responsePanel); - - // add the chatPanel to the mainPanel - chatPanel.addListener(message -> { - viewModel.handleChatMessage(message); - }); - - // add the reponse listener to the responsePanel - responsePanel.addResponseActionListener(new LLMResponsePanel.ResponseActionListener() { - @Override - public void onClearButtonClick() { - viewModel.clearChat(); - } - - @Override - public void onCopyButtonClick() { - viewModel.copyChat(); - } - }); + viewModel = new LLMSuggestionUIComponentViewModel(); + EventBusService.getInstance().register(this); + EventBusService.getInstance().register(responsePanel); + // propagate the config change viewModel.propagateConfigChange(); } @@ -85,7 +69,7 @@ public void onEventHappen(String eventName, Object eventObj) { generateButton.setEnabled(true); dryRunButton.setEnabled(true); break; - case "RUN_HISTORY_LIST": + case RunHistoryEvent.RUN_HISTORY_LIST: ApplicationManager.getApplication().invokeLater(() -> loadFileHistory(eventObj)); break; default: diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java index b00182b0..cbda26aa 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java @@ -1,7 +1,9 @@ package com.github.jaksonlin.testcraft.presentation.components; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.MyBundle; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; import com.github.jaksonlin.testcraft.util.Pair; import org.jetbrains.annotations.NotNull; @@ -13,30 +15,37 @@ import java.util.List; import java.util.Objects; -public class ObservableTree extends JTree implements BasicEventObserver { +public class ObservableTree extends JTree { - @Override - public void onEventHappen(String eventName,Object eventObj) { - if (!eventName.equals("RUN_HISTORY")) { - return; - } - if (eventObj == null) { - initializeMutationTree(Collections.emptyList()); - } else if (eventObj instanceof Pair) { - Pair pair = (Pair) eventObj; - if (pair.getFirst() instanceof String && pair.getSecond() instanceof String) { - updateMutationTree(new Pair<>((String) pair.getFirst(), (String) pair.getSecond())); + private final BasicEventObserver eventObserver = new BasicEventObserver() { + @Override + public void onEventHappen(String eventName, Object eventObj) { + if (!eventName.equals(RunHistoryEvent.RUN_HISTORY)) { + return; } - } else if (eventObj instanceof List) { - List list = (List) eventObj; - if (list.isEmpty()) { + if (eventObj == null) { initializeMutationTree(Collections.emptyList()); - } else if (list.get(0) instanceof Pair) { - List> nodeList = (List>) list; - initializeMutationTree(nodeList); + } else if (eventObj instanceof Pair) { + Pair pair = (Pair) eventObj; + if (pair.getFirst() instanceof String && pair.getSecond() instanceof String) { + updateMutationTree(new Pair<>((String) pair.getFirst(), (String) pair.getSecond())); + } + } else if (eventObj instanceof List) { + List list = (List) eventObj; + if (list.isEmpty()) { + initializeMutationTree(Collections.emptyList()); + } else if (list.get(0) instanceof Pair) { + List> nodeList = (List>) list; + initializeMutationTree(nodeList); + } } } + }; + + public ObservableTree() { + EventBusService.getInstance().register(eventObserver); } + private void initializeMutationTree(@NotNull List> nodeNameList) { DefaultTreeModel treeModel = buildTreeModel(nodeNameList); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java index 94617ebf..eb8a5b89 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java @@ -1,8 +1,8 @@ package com.github.jaksonlin.testcraft.presentation.toolWindow; import com.github.jaksonlin.testcraft.presentation.components.LLMSuggestionUIComponent; -import com.github.jaksonlin.testcraft.core.services.LLMService; -import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; @@ -18,16 +18,16 @@ public class LLMSuggestionsToolWindowFactory implements ToolWindowFactory { @Override public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindow toolWindow) { // create a new LLMSuggestionUIComponent - LLMService llmService = ApplicationManager.getApplication().getService(LLMService.class); - LLMSuggestionUIComponent uiComponent = new LLMSuggestionUIComponent(llmService); + LLMConfigService llmService = ApplicationManager.getApplication().getService(LLMConfigService.class); + LLMSuggestionUIComponent uiComponent = new LLMSuggestionUIComponent(); // add the uiComponent to the toolWindow through the content manager JPanel toolWindowPanel = uiComponent.getPanel(); ContentManager contentManager = toolWindow.getContentManager(); Content content = new ContentImpl(toolWindowPanel, "TestCraft - LLM Suggestions Tool Window", false); // Directly create ContentImpl contentManager.addContent(content); // register the uiComponent to the runHistoryManagerService to sync the run history - RunHistoryManagerService runHistoryManagerService = project.getService(RunHistoryManagerService.class); - runHistoryManagerService.addObserver(uiComponent); + RunHistoryManagerService runHistoryManagerService = RunHistoryManagerService.getInstance(); + runHistoryManagerService.register(uiComponent); } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java index dbad525f..5aecb0c6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java @@ -1,36 +1,30 @@ package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.core.context.PitestContext; -import com.github.jaksonlin.testcraft.messaging.observers.BasicEventObserver; -import com.github.jaksonlin.testcraft.messaging.observers.ObserverBase; -import com.github.jaksonlin.testcraft.core.services.LLMService; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; -public class LLMSuggestionUIComponentViewModel extends ObserverBase implements BasicEventObserver { - private final LLMService llmService; - - - public LLMSuggestionUIComponentViewModel(LLMService llmService) { - this.llmService = llmService; - llmService.addObserver(this); // as hub to forward events - this.addObserver(llmService); +public class LLMSuggestionUIComponentViewModel extends BasicEventObserver { + private final EventBusService eventBusService = EventBusService.getInstance(); + private final LLMConfigService llmConfigService = LLMConfigService.getInstance(); + public LLMSuggestionUIComponentViewModel() { + eventBusService.register(this); } public void propagateConfigChange() { - llmService.propagateConfigChange(); - } - - public void clearChat() { - notifyObservers("CLEAR_CHAT", null); + llmConfigService.propagateConfigChange(); } public void copyChat() { - String chatHistory = llmService.getChatHistory(); + String chatHistory = llmConfigService.getChatHistory(); // when chatHistory is empty, use the lastDryRunPrompt if (chatHistory.isEmpty()) { chatHistory = lastDryRunPrompt; } - notifyObservers("COPY_CHAT_RESPONSE", chatHistory); + eventBusService.post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); } @@ -42,27 +36,26 @@ public void onEventHappen(String eventName, Object eventObj) { default: // if have chat response, stop loading if (eventName.contains("CHAT_RESPONSE:")) { - notifyObservers("STOP_LOADING", null); + eventBusService.post(new ChatEvent(ChatEvent.STOP_LOADING, null)); } - notifyObservers(eventName, eventObj); - break; + eventBusService.post(new ChatEvent(eventName, eventObj)); } } public void generateSuggestions(PitestContext context) { - notifyObservers("START_LOADING", null); - llmService.generateUnittestRequest(context.getTestFilePath(), context.getTargetClassFilePath(), context.getMutationResults()); + eventBusService.post(new ChatEvent(ChatEvent.START_LOADING, null)); + llmConfigService.generateUnittestRequest(context.getTestFilePath(), context.getTargetClassFilePath(), context.getMutationResults()); } private String lastDryRunPrompt = ""; public void dryRunGetPrompt(PitestContext context) { - lastDryRunPrompt = llmService.dryRunGetPrompt(context.getFullyQualifiedTargetTestClassName(), context.getTargetClassFullyQualifiedName(), context.getMutationResults()); - notifyObservers("DRY_RUN_PROMPT", lastDryRunPrompt); + lastDryRunPrompt = llmConfigService.dryRunGetPrompt(context.getFullyQualifiedTargetTestClassName(), context.getTargetClassFullyQualifiedName(), context.getMutationResults()); + eventBusService.post(new ChatEvent(ChatEvent.DRY_RUN_PROMPT, lastDryRunPrompt)); } public void handleChatMessage(String message) { - llmService.handleChatMessage(message); + llmConfigService.handleChatMessage(message); } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java index 38164ab7..04c061a3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java @@ -1,8 +1,8 @@ package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.messaging.mediators.IMutationMediator; -import com.github.jaksonlin.testcraft.messaging.mediators.MutationMediatorImpl; -import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.MutationMediatorImpl; +import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; import com.github.jaksonlin.testcraft.presentation.components.ObservableTree; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.Nullable; @@ -17,9 +17,9 @@ public class MutationToolWindowViewModel { private final MutationTreeMediatorViewModel mutationTreeMediatorVM; public MutationToolWindowViewModel(Project project, ObservableTree mutationTree) { - this.runHistoryManager = project.getService(RunHistoryManagerService.class); + this.runHistoryManager = RunHistoryManagerService.getInstance(); this.mutationTreeMediatorVM = new MutationTreeMediatorViewModel(project, mutationReportMediator); - runHistoryManager.addObserver(mutationTree); + runHistoryManager.register(mutationTree); } public void handleOpenSelectedNode(DefaultMutableTreeNode selectedNode) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java index bc489226..f0bd68fc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java @@ -1,9 +1,9 @@ package com.github.jaksonlin.testcraft.presentation.viewmodels; -import com.github.jaksonlin.testcraft.core.context.PitestContext; -import com.github.jaksonlin.testcraft.messaging.mediators.IMutationMediator; -import com.github.jaksonlin.testcraft.messaging.mediators.IMutationReportUI; -import com.github.jaksonlin.testcraft.core.services.RunHistoryManagerService; +import com.github.jaksonlin.testcraft.domain.context.PitestContext; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationMediator; +import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationReportUI; +import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; import com.intellij.icons.AllIcons; diff --git a/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java b/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java index 42dac18c..ee49f253 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/OllamaClient.java @@ -2,13 +2,17 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.intellij.openapi.diagnostic.Logger; +import org.apache.http.HttpEntity; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.util.EntityUtils; import java.io.IOException; -import java.net.URI; -import java.net.http.HttpClient; -import java.net.http.HttpRequest; -import java.net.http.HttpResponse; -import java.time.Duration; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -17,13 +21,12 @@ public class OllamaClient { private static final Logger LOG = Logger.getInstance(OllamaClient.class); private final String baseUrl; private final ObjectMapper objectMapper; - private final HttpClient httpClient; + private final CloseableHttpClient httpClient; private final int timeoutSeconds; private final String model; private final int maxTokens; private final float temperature; - public OllamaClient(String host, String model, int maxTokens, float temperature, int port, int timeoutSeconds) { this.baseUrl = String.format("http://%s:%d", host, port); this.objectMapper = new ObjectMapper(); @@ -31,28 +34,31 @@ public OllamaClient(String host, String model, int maxTokens, float temperature, this.model = model; this.maxTokens = maxTokens; this.temperature = temperature; - this.httpClient = HttpClient.newBuilder() - .connectTimeout(Duration.ofSeconds(timeoutSeconds)) + + RequestConfig config = RequestConfig.custom() + .setConnectTimeout(timeoutSeconds * 1000) + .setConnectionRequestTimeout(timeoutSeconds * 1000) + .setSocketTimeout(timeoutSeconds * 1000) + .build(); + + this.httpClient = HttpClients.custom() + .setDefaultRequestConfig(config) .build(); } public boolean testConnection() { try { - HttpRequest request = HttpRequest.newBuilder() - .uri(URI.create(baseUrl)) - .timeout(Duration.ofSeconds(timeoutSeconds)) - .GET() - .build(); - - HttpResponse response = httpClient.send(request, HttpResponse.BodyHandlers.ofString()); - return response.statusCode() == 200; + HttpGet request = new HttpGet(baseUrl); + try (CloseableHttpResponse response = httpClient.execute(request)) { + return response.getStatusLine().getStatusCode() == 200; + } } catch (Exception e) { LOG.warn("Failed to test connection to Ollama server", e); return false; } } - public String chatCompletion(List messages) throws IOException, InterruptedException { + public String chatCompletion(List messages) throws IOException { Map requestBody = new HashMap<>(); requestBody.put("model", model); requestBody.put("messages", messages); @@ -60,22 +66,21 @@ public String chatCompletion(List messages) throws IOException, Interru requestBody.put("temperature", temperature); requestBody.put("num_predict", maxTokens); - HttpRequest request = HttpRequest.newBuilder() - .uri(URI.create(baseUrl + "/api/chat")) - .header("Content-Type", "application/json") - .timeout(Duration.ofSeconds(timeoutSeconds)) - .POST(HttpRequest.BodyPublishers.ofString(objectMapper.writeValueAsString(requestBody))) - .build(); + HttpPost request = new HttpPost(baseUrl + "/api/chat"); + request.setHeader("Content-Type", "application/json"); + request.setEntity(new StringEntity(objectMapper.writeValueAsString(requestBody), "UTF-8")); - HttpResponse response = httpClient.send(request, HttpResponse.BodyHandlers.ofString()); + try (CloseableHttpResponse response = httpClient.execute(request)) { + if (response.getStatusLine().getStatusCode() != 200) { + String errorBody = EntityUtils.toString(response.getEntity()); + LOG.error("Error from Ollama API: " + errorBody); + throw new IOException("Failed to get response from Ollama API: " + response.getStatusLine().getStatusCode()); + } - if (response.statusCode() != 200) { - LOG.error("Error from Ollama API: " + response.body()); - throw new IOException("Failed to get response from Ollama API: " + response.statusCode()); + String responseBody = EntityUtils.toString(response.getEntity()); + Map responseMap = objectMapper.readValue(responseBody, Map.class); + return ((Map) responseMap.get("message")).get("content"); } - - Map responseMap = objectMapper.readValue(response.body(), Map.class); - return ((Map) responseMap.get("message")).get("content"); } public static class Message { diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 008a892b..924a4a62 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -104,36 +104,36 @@ + instance="com.github.jaksonlin.testcraft.application.settings.TestCraftSettingsConfigurable"/> - - - + + + + implementationClass="com.github.jaksonlin.testcraft.application.completions.AnnotationCompletionContributor"/> - + @@ -164,22 +164,22 @@ - - - From 23cdba3ecaccdc44a4f0f82a46eeb8ff3e5420e2 Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 15:37:29 +0800 Subject: [PATCH 15/25] refact event bus --- .../messaging/events/EventHandler.java | 8 ++ .../messaging/events/MutationEvent.java | 11 ++ .../messaging/events/TypedEventObserver.java | 28 +++++ .../mediators/MutationMediatorImpl.java | 5 +- .../business/RunHistoryManagerService.java | 15 ++- .../services/system/EventBusService.java | 27 ++++- .../services/system/I18nService.java | 28 +++++ ...ChatPanel.java => ChatPanelComponent.java} | 53 ++++++--- ...sePanel.java => LLMResponseComponent.java} | 81 +++++++------- .../components/LLMSuggestionUIComponent.java | 102 +++++++++--------- .../components/ObservableTree.java | 18 ++-- .../components/PitestOutputDialog.java | 3 +- .../LLMSuggestionsToolWindowFactory.java | 4 +- .../LLMSuggestionUIComponentViewModel.java | 24 +---- .../MutationToolWindowViewModel.java | 2 +- .../MutationTreeMediatorViewModel.java | 12 ++- .../resources/messages/MyBundle.properties | 6 +- .../messages/MyBundle_en_US.properties | 3 + .../messages/MyBundle_zh_CN.properties | 3 + 19 files changed, 275 insertions(+), 158 deletions(-) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/EventHandler.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/MutationEvent.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/TypedEventObserver.java create mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ChatPanel.java => ChatPanelComponent.java} (53%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{LLMResponsePanel.java => LLMResponseComponent.java} (81%) diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/EventHandler.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/EventHandler.java new file mode 100644 index 00000000..eb3aed6c --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/EventHandler.java @@ -0,0 +1,8 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + + +@FunctionalInterface +public interface EventHandler { + void handle(T event); +} + diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/MutationEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/MutationEvent.java new file mode 100644 index 00000000..018bbaea --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/MutationEvent.java @@ -0,0 +1,11 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +public class MutationEvent extends BaseEvent { + public static final String MUTATION_RESULT = "MUTATION_RESULT"; + + public MutationEvent(String eventType, Object payload) { + super(eventType, payload); + } + + +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/TypedEventObserver.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/TypedEventObserver.java new file mode 100644 index 00000000..c67884cc --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/TypedEventObserver.java @@ -0,0 +1,28 @@ +package com.github.jaksonlin.testcraft.infrastructure.messaging.events; + +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; +import com.google.common.eventbus.Subscribe; + +public abstract class TypedEventObserver { + private final Class eventType; + private final EventBusService eventBus; + + protected TypedEventObserver(Class eventType) { + this.eventType = eventType; + this.eventBus = EventBusService.getInstance(); + this.eventBus.register(this); + } + + @Subscribe + public void onEvent(BaseEvent event) { + if (eventType.isInstance(event)) { + onTypedEvent(eventType.cast(event)); + } + } + + protected abstract void onTypedEvent(T event); + + public void unregister() { + eventBus.unregister(this); + } +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java index 8db4befc..70cb27fd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java @@ -1,5 +1,7 @@ package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.MutationEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; @@ -14,13 +16,14 @@ public class MutationMediatorImpl implements IMutationMediator { protected IMutationReportUI clientUI; private final ExecutorService executorService = Executors.newSingleThreadExecutor(); + private final EventBusService eventBusService = EventBusService.getInstance(); @Override public void processMutationResult(String mutationTargetClassFilePath, List mutations) { executorService.submit(() -> { Map> renderedFormat = convertResultToUIRenderFormat(mutations); if (clientUI != null) { - SwingUtilities.invokeLater(() -> clientUI.updateMutationResult(mutationTargetClassFilePath, renderedFormat)); + eventBusService.post(new MutationEvent(MutationEvent.MUTATION_RESULT, new Pair>>(mutationTargetClassFilePath, renderedFormat))); } }); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java index feeee08c..ac9c1369 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/RunHistoryManagerService.java @@ -1,8 +1,8 @@ package com.github.jaksonlin.testcraft.infrastructure.services.business; import com.github.jaksonlin.testcraft.domain.context.PitestContext; -import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.Pair; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; @@ -10,7 +10,6 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.components.Service; -import com.intellij.openapi.project.Project; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.slf4j.Logger; @@ -33,17 +32,17 @@ public final class RunHistoryManagerService { private final File historyFile; private final Map history; - public RunHistoryManagerService() { - this.historyFile = new File(PathManager.getConfigPath(), "run-history.json"); - this.history = loadRunHistory(); - } - public static RunHistoryManagerService getInstance() { return ApplicationManager.getApplication().getService(RunHistoryManagerService.class); } - public void register(Object observer) { + public RunHistoryManagerService() { + this.historyFile = new File(PathManager.getConfigPath(), "run-history.json"); + this.history = loadRunHistory(); + } + + public void addObserver(Object observer) { eventBusService.register(observer); // when observer is added, pass current value of history to observer, force it to update List> mappedHistory = history.entrySet().stream() diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java index 6a37dada..f68ffebc 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/EventBusService.java @@ -1,27 +1,48 @@ package com.github.jaksonlin.testcraft.infrastructure.services.system; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BaseEvent; import com.google.common.eventbus.EventBus; import com.intellij.openapi.components.Service; import com.intellij.openapi.application.ApplicationManager; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; @Service(Service.Level.APP) public final class EventBusService { private final EventBus eventBus; + private final Logger logger = LoggerFactory.getLogger(EventBusService.class); public EventBusService() { this.eventBus = new EventBus("TestCraftEventBus"); } public void register(Object subscriber) { - eventBus.register(subscriber); + try { + eventBus.register(subscriber); + logger.debug("Registered subscriber: {}", subscriber.getClass().getSimpleName()); + } catch (Exception e) { + logger.error("Failed to register subscriber: " + subscriber, e); + } } public void unregister(Object subscriber) { - eventBus.unregister(subscriber); + try { + eventBus.unregister(subscriber); + logger.debug("Unregistered subscriber: {}", subscriber.getClass().getSimpleName()); + } catch (Exception e) { + logger.error("Failed to unregister subscriber: " + subscriber, e); + } } public void post(Object event) { - eventBus.post(event); + try { + if (event instanceof BaseEvent) { + logger.debug("Posting event: {}", ((BaseEvent) event).getEventType()); + } + eventBus.post(event); + } catch (Exception e) { + logger.error("Failed to post event: " + event, e); + } } public static EventBusService getInstance() { diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java new file mode 100644 index 00000000..282155e6 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java @@ -0,0 +1,28 @@ +package com.github.jaksonlin.testcraft.infrastructure.services.system; + +import java.util.ResourceBundle; + +import org.jetbrains.annotations.PropertyKey; + +import com.intellij.AbstractBundle; +import com.intellij.openapi.components.Service; +import com.intellij.openapi.application.ApplicationManager; + +@Service(Service.Level.APP) +public class I18nService { + private final String BUNDLE = "messages.MyBundle"; + private ResourceBundle ourBundle; + public String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { + return AbstractBundle.message(getBundle(), key, params); + } + private ResourceBundle getBundle() { + if (ourBundle == null) { + ourBundle = ResourceBundle.getBundle(BUNDLE); + } + return ourBundle; + } + + public static I18nService getInstance() { + return ApplicationManager.getApplication().getService(I18nService.class); + } +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java similarity index 53% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java index 585224ff..8ad709b1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java @@ -1,22 +1,27 @@ package com.github.jaksonlin.testcraft.presentation.components; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; -import javax.swing.*; -import java.awt.*; +import javax.swing.JButton; +import javax.swing.JPanel; +import javax.swing.JTextArea; +import java.awt.BorderLayout; import java.awt.event.KeyEvent; import java.awt.event.KeyAdapter; -public class ChatPanel extends JPanel { +public class ChatPanelComponent { + + private final TypedEventObserver chatObserver; private final JTextArea inputArea; private final JButton sendButton; - private final JPanel inputPanel; - - public ChatPanel() { - setLayout(new BorderLayout()); + private final JPanel masterPanel; + + public ChatPanelComponent() { // Input area inputArea = new JTextArea(3, 40); @@ -25,14 +30,14 @@ public ChatPanel() { JBScrollPane inputScrollPane = new JBScrollPane(inputArea); // Send button - sendButton = new JButton("Send"); + sendButton = new JButton(I18nService.getInstance().message("chat.send.button")); sendButton.addActionListener(e -> sendMessage()); // Input panel (input area + send button) - inputPanel = new JPanel(new BorderLayout()); - inputPanel.setBorder(JBUI.Borders.empty(5)); - inputPanel.add(inputScrollPane, BorderLayout.CENTER); - inputPanel.add(sendButton, BorderLayout.EAST); + masterPanel = new JPanel(new BorderLayout()); + masterPanel.setBorder(JBUI.Borders.empty(5)); + masterPanel.add(inputScrollPane, BorderLayout.CENTER); + masterPanel.add(sendButton, BorderLayout.EAST); // Add key listener for Ctrl+Enter to send inputArea.addKeyListener(new KeyAdapter() { @@ -44,12 +49,28 @@ public void keyPressed(KeyEvent e) { } } }); - } + chatObserver = new TypedEventObserver(ChatEvent.class) { + @Override + protected void onTypedEvent(ChatEvent event) { + // Handle the chat event + switch (event.getEventType()) { + case ChatEvent.START_LOADING: + // disable input area and send button + setInputEnabled(false); + break; + case ChatEvent.STOP_LOADING: + // enable input area and send button + setInputEnabled(true); + break; + } + } + }; + } public JPanel getInputPanel() { - return inputPanel; + return masterPanel; } private void sendMessage() { @@ -72,4 +93,8 @@ public void setInputEnabled(boolean enabled) { inputArea.requestFocus(); } } + + public void dispose() { + chatObserver.unregister(); + } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java similarity index 81% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java index bddaa945..e79d76a5 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponsePanel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java @@ -1,8 +1,9 @@ package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.ui.components.JBScrollPane; import com.intellij.util.ui.JBUI; import org.commonmark.node.Node; @@ -11,8 +12,6 @@ import com.intellij.ui.JBColor; import java.awt.datatransfer.StringSelection; import java.awt.Toolkit; -import com.intellij.AbstractBundle; -import org.jetbrains.annotations.PropertyKey; import javax.swing.*; import javax.swing.text.html.HTMLEditorKit; @@ -20,34 +19,29 @@ import java.awt.*; import java.util.Timer; import java.util.TimerTask; -import java.util.ResourceBundle; import javax.swing.text.html.HTMLDocument; -public class LLMResponsePanel extends JPanel { - private static final String BUNDLE = "messages.MyBundle"; - private static ResourceBundle ourBundle; +public class LLMResponseComponent { + private final TypedEventObserver eventObserver; + private final JEditorPane outputArea; - private final ChatPanel chatPanel; private boolean isLoading = false; private boolean copyAsMarkdown = false; - private final StringBuilder chatHistory = new StringBuilder(); + private final HTMLEditorKit htmlKit; private final StyleSheet styleSheet; + private final JPanel masterPanel; private final JPanel loadingPanel; private final Timer loadingTimer; private final JLabel loadingLabel; - private final BasicEventObserver eventObserver; + + + private final StringBuilder chatHistory = new StringBuilder(); - public static String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { - return AbstractBundle.message(getBundle(), key, params); + public JPanel getMasterPanel() { + return masterPanel; } - private static ResourceBundle getBundle() { - if (ourBundle == null) { - ourBundle = ResourceBundle.getBundle(BUNDLE); - } - return ourBundle; - } private static final String BASE_HTML_TEMPLATE = "\n" + @@ -80,16 +74,15 @@ public void notifyCopyButtonClick() { EventBusService.getInstance().post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); } - public LLMResponsePanel(ChatPanel chatPanel) { - this.chatPanel = chatPanel; - setLayout(new BorderLayout()); - setBorder(JBUI.Borders.empty(10)); + public LLMResponseComponent(ChatPanelComponent chatPanelComponent) { + masterPanel = new JPanel(new BorderLayout()); + masterPanel.setBorder(JBUI.Borders.empty(10)); // Create event observer - this.eventObserver = new BasicEventObserver() { + this.eventObserver = new TypedEventObserver(ChatEvent.class) { @Override - public void onEventHappen(String eventName, Object eventObj) { - switch (eventName) { + public void onTypedEvent(ChatEvent event) { + switch (event.getEventType()) { case ChatEvent.START_LOADING: startLoading(); break; @@ -98,29 +91,32 @@ public void onEventHappen(String eventName, Object eventObj) { break; case ChatEvent.CHAT_REQUEST: if (!isLoading) { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", message("llm.user"), eventObj.toString())); + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", I18nService.getInstance().message("llm.user"), event.getPayload().toString())); startLoading(); } break; case ChatEvent.CHAT_RESPONSE: - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", message("llm.assistant"), eventObj.toString())); + if (isLoading) { + stopLoading(); + } + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", I18nService.getInstance().message("llm.assistant"), event.getPayload().toString())); break; case ChatEvent.COPY_CHAT_RESPONSE: - copyToClipboard(eventObj); + copyToClipboard(event.getPayload()); break; case ChatEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN: - copyAsMarkdown = (boolean) eventObj; + copyAsMarkdown = (boolean) event.getPayload(); break; case ChatEvent.DRY_RUN_PROMPT: - String dryRunPrompt = (String) eventObj; + String dryRunPrompt = (String) event.getPayload(); if (dryRunPrompt.isEmpty()){ - JOptionPane.showMessageDialog(LLMResponsePanel.this, message("llm.dry.run.prompt.empty"), message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.dry.run.prompt.empty"), I18nService.getInstance().message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); } else { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", message("llm.system"), message("llm.dry.run.prompt") + "\n" + eventObj.toString())); + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", I18nService.getInstance().message("llm.system"), I18nService.getInstance().message("llm.dry.run.prompt") + "\n" + event.getPayload().toString())); } break; case ChatEvent.ERROR: - JOptionPane.showMessageDialog(LLMResponsePanel.this, message("llm.error") + ": " + eventObj.toString(), message("llm.error"), JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.error") + ": " + event.getPayload().toString(), I18nService.getInstance().message("llm.error"), JOptionPane.ERROR_MESSAGE); break; } } @@ -151,7 +147,7 @@ public void onEventHappen(String eventName, Object eventObj) { // Create loading panel loadingPanel = new JPanel(new FlowLayout(FlowLayout.LEFT)); loadingPanel.setVisible(false); - loadingLabel = new JLabel(message("llm.thinking")); + loadingLabel = new JLabel(I18nService.getInstance().message("llm.thinking")); loadingPanel.add(loadingLabel); loadingPanel.setBorder(BorderFactory.createEmptyBorder(5, 10, 5, 10)); loadingPanel.setBackground(JBColor.background()); @@ -166,13 +162,13 @@ public void onEventHappen(String eventName, Object eventObj) { toolbar.setFloatable(false); toolbar.setBorder(JBUI.Borders.empty(2, 2)); - JButton copyButton = new JButton(message("llm.copy.to.clipboard")); + JButton copyButton = new JButton(I18nService.getInstance().message("llm.copy.to.clipboard")); copyButton.addActionListener(e -> { notifyCopyButtonClick(); }); toolbar.add(copyButton); - JButton clearButton = new JButton(message("llm.clear")); + JButton clearButton = new JButton(I18nService.getInstance().message("llm.clear")); clearButton.addActionListener(e -> { clearOutput(); notifyClearButtonClick(); @@ -181,7 +177,7 @@ public void onEventHappen(String eventName, Object eventObj) { // Create input panel at the bottom JPanel inputPanel = new JPanel(new BorderLayout()); - inputPanel.add(chatPanel.getInputPanel(), BorderLayout.CENTER); + inputPanel.add(chatPanelComponent.getInputPanel(), BorderLayout.CENTER); // Create center panel to hold toolbar, output area, and loading panel JPanel centerPanel = new JPanel(new BorderLayout()); @@ -190,8 +186,8 @@ public void onEventHappen(String eventName, Object eventObj) { centerPanel.add(loadingPanel, BorderLayout.SOUTH); // Add components - add(centerPanel, BorderLayout.CENTER); - add(inputPanel, BorderLayout.SOUTH); + masterPanel.add(centerPanel, BorderLayout.CENTER); + masterPanel.add(inputPanel, BorderLayout.SOUTH); // Initialize with empty chat container @@ -278,13 +274,11 @@ public void run() { } SwingUtilities.invokeLater(() -> { dots = (dots + 1) % 4; - loadingLabel.setText(message("llm.thinking") + repeatString(".", dots)); + loadingLabel.setText(I18nService.getInstance().message("llm.thinking") + repeatString(".", dots)); }); } }, 0, 500); - // Disable input while loading - chatPanel.setInputEnabled(false); } private void stopLoading() { @@ -294,9 +288,6 @@ private void stopLoading() { isLoading = false; loadingPanel.setVisible(false); loadingTimer.purge(); - - // Re-enable input after loading - chatPanel.setInputEnabled(true); } private void updateOutputArea() { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java index ed9eba97..fb0268ca 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java @@ -1,81 +1,85 @@ package com.github.jaksonlin.testcraft.presentation.components; import com.github.jaksonlin.testcraft.domain.context.PitestContext; -import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; -import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.presentation.viewmodels.LLMSuggestionUIComponentViewModel; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.ui.ComboBox; import com.intellij.util.ui.JBUI; -import com.intellij.AbstractBundle; -import org.jetbrains.annotations.PropertyKey; -import javax.swing.*; +import javax.swing.JPanel; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.JTextField; +import javax.swing.JComboBox; import javax.swing.plaf.basic.BasicComboBoxEditor; -import java.awt.*; +import javax.swing.DefaultComboBoxModel; +import javax.swing.ComboBoxEditor; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.FlowLayout; + import java.util.ArrayList; import java.util.List; import java.util.Map; -import java.util.ResourceBundle; -public class LLMSuggestionUIComponent extends BasicEventObserver { - private static final String BUNDLE = "messages.MyBundle"; - private static ResourceBundle ourBundle; +public class LLMSuggestionUIComponent { + + private final TypedEventObserver chatEventObserver; + private final TypedEventObserver runHistoryEventObserver; + - public static String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { - return AbstractBundle.message(getBundle(), key, params); - } - - private static ResourceBundle getBundle() { - if (ourBundle == null) { - ourBundle = ResourceBundle.getBundle(BUNDLE); - } - return ourBundle; - } + private final ChatPanelComponent chatPanel = new ChatPanelComponent(); + private final LLMResponseComponent responsePanel = new LLMResponseComponent(chatPanel); private final LLMSuggestionUIComponentViewModel viewModel; - private final ChatPanel chatPanel = new ChatPanel(); - private final LLMResponsePanel responsePanel = new LLMResponsePanel(chatPanel); + private final JPanel mainPanel = new JPanel(new BorderLayout()); private final DefaultComboBoxModel fileListModel = new DefaultComboBoxModel<>(); private final JComboBox fileSelector = new ComboBox<>(fileListModel); - private final JButton generateButton = new JButton(message("llm.generate.suggestions")); - private final JButton dryRunButton = new JButton(message("llm.check.prompt")); + private final JButton generateButton = new JButton(I18nService.getInstance().message("llm.generate.suggestions")); + private final JButton dryRunButton = new JButton(I18nService.getInstance().message("llm.check.prompt")); private List allFileItems = new ArrayList<>(); public LLMSuggestionUIComponent() { setupUI(); + + chatEventObserver = new TypedEventObserver(ChatEvent.class) { + @Override + public void onTypedEvent(ChatEvent event) { + switch (event.getEventType()) { + case ChatEvent.START_LOADING: + generateButton.setEnabled(false); + dryRunButton.setEnabled(false); + break; + case ChatEvent.STOP_LOADING: + generateButton.setEnabled(true); + dryRunButton.setEnabled(true); + break; + } + } + }; + runHistoryEventObserver = new TypedEventObserver(RunHistoryEvent.class) { + @Override + public void onTypedEvent(RunHistoryEvent event) { + switch (event.getEventType()) { + case RunHistoryEvent.RUN_HISTORY_LIST: + ApplicationManager.getApplication().invokeLater(() -> loadFileHistory(event.getPayload())); + break; + } + } + }; // setup message routing viewModel = new LLMSuggestionUIComponentViewModel(); - EventBusService.getInstance().register(this); - EventBusService.getInstance().register(responsePanel); - // propagate the config change viewModel.propagateConfigChange(); - } - - @Override - public void onEventHappen(String eventName, Object eventObj) { - switch (eventName) { - case "START_LOADING": - generateButton.setEnabled(false); - dryRunButton.setEnabled(false); - break; - case "STOP_LOADING": - generateButton.setEnabled(true); - dryRunButton.setEnabled(true); - break; - case RunHistoryEvent.RUN_HISTORY_LIST: - ApplicationManager.getApplication().invokeLater(() -> loadFileHistory(eventObj)); - break; - default: - break; - } - } public JPanel getPanel() { return this.mainPanel; @@ -129,14 +133,14 @@ public Component getEditorComponent() { // Add components to top panel JPanel selectorPanel = new JPanel(new BorderLayout()); - selectorPanel.add(new JLabel(message("llm.select.file") + ": "), BorderLayout.WEST); + selectorPanel.add(new JLabel(I18nService.getInstance().message("llm.select.file") + ": "), BorderLayout.WEST); selectorPanel.add(fileSelector, BorderLayout.CENTER); topPanel.add(selectorPanel, BorderLayout.CENTER); topPanel.add(buttonPanel, BorderLayout.EAST); // Add panels to main panel mainPanel.add(topPanel, BorderLayout.NORTH); - mainPanel.add(responsePanel, BorderLayout.CENTER); + mainPanel.add(responsePanel.getMasterPanel(), BorderLayout.CENTER); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java index cbda26aa..a19f86d4 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java @@ -1,7 +1,7 @@ package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.MyBundle; import com.github.jaksonlin.testcraft.util.Pair; @@ -17,21 +17,21 @@ public class ObservableTree extends JTree { - private final BasicEventObserver eventObserver = new BasicEventObserver() { + private final TypedEventObserver eventObserver = new TypedEventObserver(RunHistoryEvent.class) { @Override - public void onEventHappen(String eventName, Object eventObj) { - if (!eventName.equals(RunHistoryEvent.RUN_HISTORY)) { + public void onTypedEvent(RunHistoryEvent event) { + if (!event.getEventType().equals(RunHistoryEvent.RUN_HISTORY)) { return; } - if (eventObj == null) { + if (event.getPayload() == null) { initializeMutationTree(Collections.emptyList()); - } else if (eventObj instanceof Pair) { - Pair pair = (Pair) eventObj; + } else if (event.getPayload() instanceof Pair) { + Pair pair = (Pair) event.getPayload(); if (pair.getFirst() instanceof String && pair.getSecond() instanceof String) { updateMutationTree(new Pair<>((String) pair.getFirst(), (String) pair.getSecond())); } - } else if (eventObj instanceof List) { - List list = (List) eventObj; + } else if (event.getPayload() instanceof List) { + List list = (List) event.getPayload(); if (list.isEmpty()) { initializeMutationTree(Collections.emptyList()); } else if (list.get(0) instanceof Pair) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java index eab3b291..06301025 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java @@ -1,5 +1,6 @@ package com.github.jaksonlin.testcraft.presentation.components; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; @@ -38,7 +39,7 @@ protected JComponent createCenterPanel() { panel.add(scrollPane, BorderLayout.CENTER); if (reportFile != null) { - JButton viewReportButton = new JButton("HTML Report"); + JButton viewReportButton = new JButton(I18nService.getInstance().message("pitest.view.report")); viewReportButton.addActionListener(e -> { try { Desktop.getDesktop().browse(reportFile.toURI()); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java index eb8a5b89..429b8005 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java @@ -18,7 +18,6 @@ public class LLMSuggestionsToolWindowFactory implements ToolWindowFactory { @Override public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindow toolWindow) { // create a new LLMSuggestionUIComponent - LLMConfigService llmService = ApplicationManager.getApplication().getService(LLMConfigService.class); LLMSuggestionUIComponent uiComponent = new LLMSuggestionUIComponent(); // add the uiComponent to the toolWindow through the content manager JPanel toolWindowPanel = uiComponent.getPanel(); @@ -26,8 +25,7 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo Content content = new ContentImpl(toolWindowPanel, "TestCraft - LLM Suggestions Tool Window", false); // Directly create ContentImpl contentManager.addContent(content); // register the uiComponent to the runHistoryManagerService to sync the run history - RunHistoryManagerService runHistoryManagerService = RunHistoryManagerService.getInstance(); - runHistoryManagerService.register(uiComponent); + RunHistoryManagerService.getInstance().addObserver(uiComponent); } } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java index 5aecb0c6..c7815bcd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java @@ -1,18 +1,14 @@ package com.github.jaksonlin.testcraft.presentation.viewmodels; import com.github.jaksonlin.testcraft.domain.context.PitestContext; -import com.github.jaksonlin.testcraft.infrastructure.messaging.events.BasicEventObserver; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; -public class LLMSuggestionUIComponentViewModel extends BasicEventObserver { - private final EventBusService eventBusService = EventBusService.getInstance(); +public class LLMSuggestionUIComponentViewModel { private final LLMConfigService llmConfigService = LLMConfigService.getInstance(); - public LLMSuggestionUIComponentViewModel() { - eventBusService.register(this); - } + private final EventBusService eventBusService = EventBusService.getInstance(); public void propagateConfigChange() { llmConfigService.propagateConfigChange(); @@ -27,22 +23,6 @@ public void copyChat() { eventBusService.post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); } - - - @Override - public void onEventHappen(String eventName, Object eventObj) { - // Handle events from LLMService/UIComponent if needed - switch (eventName) { - default: - // if have chat response, stop loading - if (eventName.contains("CHAT_RESPONSE:")) { - eventBusService.post(new ChatEvent(ChatEvent.STOP_LOADING, null)); - } - eventBusService.post(new ChatEvent(eventName, eventObj)); - } - } - - public void generateSuggestions(PitestContext context) { eventBusService.post(new ChatEvent(ChatEvent.START_LOADING, null)); llmConfigService.generateUnittestRequest(context.getTestFilePath(), context.getTargetClassFilePath(), context.getMutationResults()); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java index 04c061a3..45e350d2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java @@ -19,7 +19,7 @@ public class MutationToolWindowViewModel { public MutationToolWindowViewModel(Project project, ObservableTree mutationTree) { this.runHistoryManager = RunHistoryManagerService.getInstance(); this.mutationTreeMediatorVM = new MutationTreeMediatorViewModel(project, mutationReportMediator); - runHistoryManager.register(mutationTree); + runHistoryManager.addObserver(mutationTree); } public void handleOpenSelectedNode(DefaultMutableTreeNode selectedNode) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java index f0bd68fc..0616e097 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java @@ -33,6 +33,8 @@ import java.util.List; import java.util.Map; import java.util.Objects; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.MutationEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; public class MutationTreeMediatorViewModel implements IMutationReportUI { private static final Logger log = LoggerFactory.getLogger(MutationTreeMediatorViewModel.class); @@ -40,6 +42,15 @@ public class MutationTreeMediatorViewModel implements IMutationReportUI { private final IMutationMediator mediator; private final RunHistoryManagerService runHistoryManager; protected final HashMap annotatedNodes = new HashMap<>(); + private final TypedEventObserver mutationObserver = new TypedEventObserver(MutationEvent.class) { + @Override + public void onTypedEvent(MutationEvent event) { + if (event.getEventType().equals(MutationEvent.MUTATION_RESULT)) { + Pair>> payload = (Pair>>) event.getPayload(); + SwingUtilities.invokeLater(() -> updateMutationResult(payload.getFirst(), payload.getSecond())); + } + } + }; public MutationTreeMediatorViewModel(@NotNull Project project, @NotNull IMutationMediator mediator) { this.project = project; @@ -62,7 +73,6 @@ public void fileClosed(@NotNull FileEditorManager source, @NotNull VirtualFile f }); } - @Override public void updateMutationResult(String mutationClassFilePath, Map> mutationTestResult) { VirtualFile virtualFile = LocalFileSystem.getInstance().findFileByPath(mutationClassFilePath); if (virtualFile != null) { diff --git a/src/main/resources/messages/MyBundle.properties b/src/main/resources/messages/MyBundle.properties index 85312a4c..109ac78c 100644 --- a/src/main/resources/messages/MyBundle.properties +++ b/src/main/resources/messages/MyBundle.properties @@ -142,4 +142,8 @@ test.annotation.exists.title=Annotation Already Exists # Pitest Run Messages pitest.run.canceled=Pitest run was canceled pitest.run.canceled.title=Canceled -pitest.run.error=Error executing Pitest command: %s +pitest.run.error=Error executing Pitest command: % +pitest.view.report=View HTML Report + +# Chat +chat.send.button=Send diff --git a/src/main/resources/messages/MyBundle_en_US.properties b/src/main/resources/messages/MyBundle_en_US.properties index 4e0dfc19..ada35522 100644 --- a/src/main/resources/messages/MyBundle_en_US.properties +++ b/src/main/resources/messages/MyBundle_en_US.properties @@ -142,3 +142,6 @@ test.annotation.exists.title=Annotation Already Exists pitest.run.canceled=Pitest run was canceled pitest.run.canceled.title=Canceled pitest.run.error=Error executing Pitest command: %s +pitest.view.report=View HTML Report +# Chat +chat.send.button=Send diff --git a/src/main/resources/messages/MyBundle_zh_CN.properties b/src/main/resources/messages/MyBundle_zh_CN.properties index 367b05f9..1fd1b8a4 100644 --- a/src/main/resources/messages/MyBundle_zh_CN.properties +++ b/src/main/resources/messages/MyBundle_zh_CN.properties @@ -150,3 +150,6 @@ test.annotation.exists.title=注解已存在 pitest.run.canceled=Pitest 运行已取消 pitest.run.canceled.title=已取消 pitest.run.error=执行 Pitest 命令时出错:%s +pitest.view.report=查看 HTML 报告 +# Chat +chat.send.button=发送 From b1273813a648b090f48ad9d91746b87db0869c9d Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 15:47:55 +0800 Subject: [PATCH 16/25] bugfix servcie matching --- .../testcraft/infrastructure/services/system/I18nService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java index 282155e6..6c9c3032 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/system/I18nService.java @@ -9,7 +9,7 @@ import com.intellij.openapi.application.ApplicationManager; @Service(Service.Level.APP) -public class I18nService { +public final class I18nService { private final String BUNDLE = "messages.MyBundle"; private ResourceBundle ourBundle; public String message(@PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { From 2242474ec5a6e664a2aef8ee95e9a876e0ee9b8d Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 16:27:43 +0800 Subject: [PATCH 17/25] bugfix runhistorymanager init incorrect --- .../infrastructure/commands/pitest/PitestCommand.java | 2 +- .../presentation/viewmodels/MutationToolWindowViewModel.java | 3 +-- .../presentation/viewmodels/MutationTreeMediatorViewModel.java | 3 +-- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java index 3c91a55a..7bbcd002 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java @@ -22,7 +22,7 @@ public abstract class PitestCommand { public PitestCommand(Project project, PitestContext context) { this.project = project; this.context = context; - this.runHistoryManager = project.getService(RunHistoryManagerService.class); + this.runHistoryManager = RunHistoryManagerService.getInstance(); } public abstract void execute(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java index 45e350d2..58eaba40 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java @@ -12,12 +12,11 @@ import java.util.Enumeration; public class MutationToolWindowViewModel { - private final RunHistoryManagerService runHistoryManager; + private final RunHistoryManagerService runHistoryManager = RunHistoryManagerService.getInstance(); private final IMutationMediator mutationReportMediator = new MutationMediatorImpl(); private final MutationTreeMediatorViewModel mutationTreeMediatorVM; public MutationToolWindowViewModel(Project project, ObservableTree mutationTree) { - this.runHistoryManager = RunHistoryManagerService.getInstance(); this.mutationTreeMediatorVM = new MutationTreeMediatorViewModel(project, mutationReportMediator); runHistoryManager.addObserver(mutationTree); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java index 0616e097..88e878a9 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java @@ -40,7 +40,7 @@ public class MutationTreeMediatorViewModel implements IMutationReportUI { private static final Logger log = LoggerFactory.getLogger(MutationTreeMediatorViewModel.class); private final Project project; private final IMutationMediator mediator; - private final RunHistoryManagerService runHistoryManager; + private final RunHistoryManagerService runHistoryManager = RunHistoryManagerService.getInstance(); protected final HashMap annotatedNodes = new HashMap<>(); private final TypedEventObserver mutationObserver = new TypedEventObserver(MutationEvent.class) { @Override @@ -55,7 +55,6 @@ public void onTypedEvent(MutationEvent event) { public MutationTreeMediatorViewModel(@NotNull Project project, @NotNull IMutationMediator mediator) { this.project = project; this.mediator = mediator; - this.runHistoryManager = project.getService(RunHistoryManagerService.class); mediator.register(this); registerEditorListener(project); } From 13738f1bea822bf584021aa5c4d26c64e2e7a05a Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 17:01:07 +0800 Subject: [PATCH 18/25] bugfix copied as markdown --- .../messaging/events/ChatEvent.java | 2 +- .../components/LLMResponseComponent.java | 101 +++++++++--------- .../components/LLMSuggestionUIComponent.java | 57 +++++----- .../components/ObservableTree.java | 3 - .../LLMSuggestionUIComponentViewModel.java | 27 +++-- 5 files changed, 98 insertions(+), 92 deletions(-) diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java index 99ba691d..2a467d4f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/events/ChatEvent.java @@ -6,8 +6,8 @@ public class ChatEvent extends BaseEvent { public static final String CHAT_RESPONSE = "CHAT_RESPONSE"; public static final String START_LOADING = "START_LOADING"; public static final String STOP_LOADING = "STOP_LOADING"; + public static final String REQUEST_COPY_CHAT_RESPONSE = "REQUEST_COPY_CHAT_RESPONSE"; public static final String COPY_CHAT_RESPONSE = "COPY_CHAT_RESPONSE"; - public static final String CONFIG_CHANGE_COPY_AS_MARKDOWN = "CONFIG_CHANGE:copyAsMarkdown"; public static final String DRY_RUN_PROMPT = "DRY_RUN_PROMPT"; public static final String ERROR = "ERROR"; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java index e79d76a5..9b9cfb1f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java @@ -1,6 +1,7 @@ package com.github.jaksonlin.testcraft.presentation.components; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.LLMConfigEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; @@ -22,8 +23,56 @@ import javax.swing.text.html.HTMLDocument; public class LLMResponseComponent { - private final TypedEventObserver eventObserver; - + private final TypedEventObserver eventObserver = new TypedEventObserver(ChatEvent.class) { + @Override + public void onTypedEvent(ChatEvent event) { + switch (event.getEventType()) { + case ChatEvent.START_LOADING: + startLoading(); + break; + case ChatEvent.STOP_LOADING: + stopLoading(); + break; + case ChatEvent.CHAT_REQUEST: + if (!isLoading) { + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", I18nService.getInstance().message("llm.user"), event.getPayload().toString())); + startLoading(); + } + break; + case ChatEvent.CHAT_RESPONSE: + if (isLoading) { + stopLoading(); + } + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", I18nService.getInstance().message("llm.assistant"), event.getPayload().toString())); + break; + case ChatEvent.COPY_CHAT_RESPONSE: + copyToClipboard(event.getPayload()); + break; + case ChatEvent.DRY_RUN_PROMPT: + String dryRunPrompt = (String) event.getPayload(); + if (dryRunPrompt.isEmpty()){ + JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.dry.run.prompt.empty"), I18nService.getInstance().message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); + } else { + appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", I18nService.getInstance().message("llm.system"), I18nService.getInstance().message("llm.dry.run.prompt") + "\n" + event.getPayload().toString())); + } + break; + case ChatEvent.ERROR: + JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.error") + ": " + event.getPayload().toString(), I18nService.getInstance().message("llm.error"), JOptionPane.ERROR_MESSAGE); + break; + } + } + }; + + private final TypedEventObserver llmConfigObserver = new TypedEventObserver(LLMConfigEvent.class) { + @Override + public void onTypedEvent(LLMConfigEvent event) { + switch (event.getEventType()) { + case LLMConfigEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN: + copyAsMarkdown = (boolean) event.getPayload(); + break; + } + } + }; private final JEditorPane outputArea; private boolean isLoading = false; private boolean copyAsMarkdown = false; @@ -71,59 +120,13 @@ public void notifyClearButtonClick() { } public void notifyCopyButtonClick() { - EventBusService.getInstance().post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); + EventBusService.getInstance().post(new ChatEvent(ChatEvent.REQUEST_COPY_CHAT_RESPONSE, null)); } public LLMResponseComponent(ChatPanelComponent chatPanelComponent) { masterPanel = new JPanel(new BorderLayout()); masterPanel.setBorder(JBUI.Borders.empty(10)); - // Create event observer - this.eventObserver = new TypedEventObserver(ChatEvent.class) { - @Override - public void onTypedEvent(ChatEvent event) { - switch (event.getEventType()) { - case ChatEvent.START_LOADING: - startLoading(); - break; - case ChatEvent.STOP_LOADING: - stopLoading(); - break; - case ChatEvent.CHAT_REQUEST: - if (!isLoading) { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "user", I18nService.getInstance().message("llm.user"), event.getPayload().toString())); - startLoading(); - } - break; - case ChatEvent.CHAT_RESPONSE: - if (isLoading) { - stopLoading(); - } - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", I18nService.getInstance().message("llm.assistant"), event.getPayload().toString())); - break; - case ChatEvent.COPY_CHAT_RESPONSE: - copyToClipboard(event.getPayload()); - break; - case ChatEvent.CONFIG_CHANGE_COPY_AS_MARKDOWN: - copyAsMarkdown = (boolean) event.getPayload(); - break; - case ChatEvent.DRY_RUN_PROMPT: - String dryRunPrompt = (String) event.getPayload(); - if (dryRunPrompt.isEmpty()){ - JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.dry.run.prompt.empty"), I18nService.getInstance().message("llm.dry.run.prompt"), JOptionPane.INFORMATION_MESSAGE); - } else { - appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "system", I18nService.getInstance().message("llm.system"), I18nService.getInstance().message("llm.dry.run.prompt") + "\n" + event.getPayload().toString())); - } - break; - case ChatEvent.ERROR: - JOptionPane.showMessageDialog(masterPanel, I18nService.getInstance().message("llm.error") + ": " + event.getPayload().toString(), I18nService.getInstance().message("llm.error"), JOptionPane.ERROR_MESSAGE); - break; - } - } - }; - - // Register with event bus - EventBusService.getInstance().register(eventObserver); // Setup improved JEditorPane for HTML rendering outputArea = new JEditorPane(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java index fb0268ca..a2acd67e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java @@ -29,14 +29,37 @@ public class LLMSuggestionUIComponent { - private final TypedEventObserver chatEventObserver; - private final TypedEventObserver runHistoryEventObserver; + private final TypedEventObserver chatEventObserver = new TypedEventObserver(ChatEvent.class) { + @Override + public void onTypedEvent(ChatEvent event) { + switch (event.getEventType()) { + case ChatEvent.START_LOADING: + generateButton.setEnabled(false); + dryRunButton.setEnabled(false); + break; + case ChatEvent.STOP_LOADING: + generateButton.setEnabled(true); + dryRunButton.setEnabled(true); + break; + } + } + }; + private final TypedEventObserver runHistoryEventObserver = new TypedEventObserver(RunHistoryEvent.class) { + @Override + public void onTypedEvent(RunHistoryEvent event) { + switch (event.getEventType()) { + case RunHistoryEvent.RUN_HISTORY_LIST: + ApplicationManager.getApplication().invokeLater(() -> loadFileHistory(event.getPayload())); + break; + } + } + };; private final ChatPanelComponent chatPanel = new ChatPanelComponent(); private final LLMResponseComponent responsePanel = new LLMResponseComponent(chatPanel); - private final LLMSuggestionUIComponentViewModel viewModel; + private final LLMSuggestionUIComponentViewModel viewModel = new LLMSuggestionUIComponentViewModel(); private final JPanel mainPanel = new JPanel(new BorderLayout()); private final DefaultComboBoxModel fileListModel = new DefaultComboBoxModel<>(); @@ -47,34 +70,6 @@ public class LLMSuggestionUIComponent { public LLMSuggestionUIComponent() { setupUI(); - - chatEventObserver = new TypedEventObserver(ChatEvent.class) { - @Override - public void onTypedEvent(ChatEvent event) { - switch (event.getEventType()) { - case ChatEvent.START_LOADING: - generateButton.setEnabled(false); - dryRunButton.setEnabled(false); - break; - case ChatEvent.STOP_LOADING: - generateButton.setEnabled(true); - dryRunButton.setEnabled(true); - break; - } - } - }; - runHistoryEventObserver = new TypedEventObserver(RunHistoryEvent.class) { - @Override - public void onTypedEvent(RunHistoryEvent event) { - switch (event.getEventType()) { - case RunHistoryEvent.RUN_HISTORY_LIST: - ApplicationManager.getApplication().invokeLater(() -> loadFileHistory(event.getPayload())); - break; - } - } - }; - // setup message routing - viewModel = new LLMSuggestionUIComponentViewModel(); // propagate the config change viewModel.propagateConfigChange(); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java index a19f86d4..d407cf51 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java @@ -42,9 +42,6 @@ public void onTypedEvent(RunHistoryEvent event) { } }; - public ObservableTree() { - EventBusService.getInstance().register(eventObserver); - } private void initializeMutationTree(@NotNull List> nodeNameList) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java index c7815bcd..52e95e5b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/LLMSuggestionUIComponentViewModel.java @@ -2,6 +2,7 @@ import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; +import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; @@ -10,18 +11,28 @@ public class LLMSuggestionUIComponentViewModel { private final LLMConfigService llmConfigService = LLMConfigService.getInstance(); private final EventBusService eventBusService = EventBusService.getInstance(); + private final TypedEventObserver chatObserver = new TypedEventObserver(ChatEvent.class) { + @Override + public void onTypedEvent(ChatEvent event) { + switch (event.getEventType()) { + case ChatEvent.REQUEST_COPY_CHAT_RESPONSE: + String chatHistory = llmConfigService.getChatHistory(); + // when chatHistory is empty, use the lastDryRunPrompt + if (chatHistory.isEmpty()) { + chatHistory = lastDryRunPrompt; + } + eventBusService.post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); + break; + default: + break; + } + } + }; + public void propagateConfigChange() { llmConfigService.propagateConfigChange(); } - public void copyChat() { - String chatHistory = llmConfigService.getChatHistory(); - // when chatHistory is empty, use the lastDryRunPrompt - if (chatHistory.isEmpty()) { - chatHistory = lastDryRunPrompt; - } - eventBusService.post(new ChatEvent(ChatEvent.COPY_CHAT_RESPONSE, chatHistory)); - } public void generateSuggestions(PitestContext context) { eventBusService.post(new ChatEvent(ChatEvent.START_LOADING, null)); From 4c20742422f5a53966c7620d0c6f9dd503331bc8 Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 17:41:04 +0800 Subject: [PATCH 19/25] update i18n service --- .../application/actions/RunPitestAction.java | 8 +-- .../inspectors/UnittestInspector.java | 6 +- .../settings/AnnotationSettingsComponent.java | 68 +++++++++---------- .../InvalidTestCaseSettingsComponent.java | 27 ++++---- .../settings/OllamaSettingsComponent.java | 62 +++++++++-------- .../settings/OllamaSettingsConfigurable.java | 6 +- .../TestCraftSettingsConfigurable.java | 16 +++-- .../commands/pitest/PitestCommand.java | 6 +- .../pitest/PrepareEnvironmentCommand.java | 8 ++- .../testscan/UnittestCaseCheckCommand.java | 18 ++--- .../mediators/LLMChatMediatorImpl.java | 16 ++--- .../services/config/LLMConfigService.java | 2 +- .../components/ChatPanelComponent.java | 36 +++++----- .../components/LLMResponseComponent.java | 4 +- .../components/LLMSuggestionUIComponent.java | 2 + .../MutationToolWindowUIComponent.java | 8 ++- .../components/ObservableTree.java | 4 +- .../jaksonlin/testcraft/util/MyBundle.java | 30 -------- 18 files changed, 158 insertions(+), 169 deletions(-) delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java index e64110fc..bafc428a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java @@ -4,7 +4,7 @@ import com.github.jaksonlin.testcraft.infrastructure.commands.CommandCancellationException; import com.github.jaksonlin.testcraft.infrastructure.commands.pitest.*; import com.github.jaksonlin.testcraft.infrastructure.services.business.PitestService; -import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.PlatformDataKeys; @@ -65,7 +65,7 @@ public void run(@NotNull ProgressIndicator indicator) { for (PitestCommand command : commands) { if (indicator.isCanceled()) { ApplicationManager.getApplication().invokeLater(() -> - Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) + Messages.showInfoMessage(I18nService.getInstance().message("pitest.run.canceled"), I18nService.getInstance().message("pitest.run.canceled.title")) ); break; } @@ -74,7 +74,7 @@ public void run(@NotNull ProgressIndicator indicator) { } catch (Exception e) { if (e.getCause() instanceof CommandCancellationException) { ApplicationManager.getApplication().invokeLater(() -> - Messages.showInfoMessage(MyBundle.message("pitest.run.canceled"), MyBundle.message("pitest.run.canceled.title")) + Messages.showInfoMessage(I18nService.getInstance().message("pitest.run.canceled"), I18nService.getInstance().message("pitest.run.canceled.title")) ); } else { showErrorDialog(e, context); @@ -89,7 +89,7 @@ protected void showErrorDialog(Exception e, PitestContext context) { e.printStackTrace(new PrintWriter(sw)); String stackTrace = sw.toString(); String contextInformation = PitestContext.dumpPitestContext(context); - String errorMessage = MyBundle.message("error.pitest.general.title") + ": " + e.getMessage() + "; " + contextInformation + "\n" + stackTrace; + String errorMessage = I18nService.getInstance().message("error.pitest.general.title") + ": " + e.getMessage() + "; " + contextInformation + "\n" + stackTrace; JTextArea textArea = new JTextArea(errorMessage); textArea.setEditable(false); diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java b/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java index f4e95a31..969e6789 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/inspectors/UnittestInspector.java @@ -1,8 +1,8 @@ package com.github.jaksonlin.testcraft.application.inspectors; -import com.github.jaksonlin.testcraft.util.MyBundle; import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestFileInspectorCommand; import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.codeInspection.AbstractBaseJavaLocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.project.Project; @@ -18,12 +18,12 @@ public class UnittestInspector extends AbstractBaseJavaLocalInspectionTool { @Override public @NotNull String getGroupDisplayName() { - return MyBundle.message("inspection.group.name"); + return I18nService.getInstance().message("inspection.group.name"); } @Override public @NotNull String getDisplayName() { - return MyBundle.message("inspection.display.name"); + return I18nService.getInstance().message("inspection.display.name"); } @Override diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java index 49929991..aed0aa62 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java @@ -1,5 +1,6 @@ package com.github.jaksonlin.testcraft.application.settings; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.json.JsonFileType; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ScrollType; @@ -8,7 +9,6 @@ import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.util.MyBundle; import javax.swing.*; import java.awt.*; @@ -20,7 +20,7 @@ public class AnnotationSettingsComponent { private final JCheckBox autoImportCheckBox; private final JCheckBox enableValidationCheckBox; private static final int EDITOR_HEIGHT = 300; - + private static final String EXAMPLE_JSON = "{\n" + " \"fields\": [\n" + " {\n" + @@ -96,29 +96,29 @@ public AnnotationSettingsComponent() { c.gridx = 0; c.gridy = 0; c.weighty = 0.0; - JLabel importSettingsLabel = new JBLabel("" + MyBundle.message("settings.annotation.import.title") + ""); + JLabel importSettingsLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.import.title") + ""); contentPanel.add(importSettingsLabel, c); // Package input - addLabelAndField(contentPanel, MyBundle.message("settings.annotation.package.label"), packageTextField, 1, - MyBundle.message("settings.annotation.package.tooltip")); + addLabelAndField(contentPanel, I18nService.getInstance().message("settings.annotation.package.label"), packageTextField, 1, + I18nService.getInstance().message("settings.annotation.package.tooltip")); // Checkboxes c.gridy = 2; c.gridwidth = 2; - autoImportCheckBox = new JCheckBox(MyBundle.message("settings.annotation.autoImport")); - autoImportCheckBox.setToolTipText(MyBundle.message("settings.annotation.autoImport.tooltip")); + autoImportCheckBox = new JCheckBox(I18nService.getInstance().message("settings.annotation.autoImport")); + autoImportCheckBox.setToolTipText(I18nService.getInstance().message("settings.annotation.autoImport.tooltip")); contentPanel.add(autoImportCheckBox, c); c.gridy = 3; - enableValidationCheckBox = new JCheckBox(MyBundle.message("settings.annotation.enableValidation")); - enableValidationCheckBox.setToolTipText(MyBundle.message("settings.annotation.enableValidation.tooltip")); + enableValidationCheckBox = new JCheckBox(I18nService.getInstance().message("settings.annotation.enableValidation")); + enableValidationCheckBox.setToolTipText(I18nService.getInstance().message("settings.annotation.enableValidation.tooltip")); contentPanel.add(enableValidationCheckBox, c); // Schema Configuration section c.gridy = 4; c.insets = new Insets(15, 5, 5, 5); - JLabel schemaLabel = new JBLabel("" + MyBundle.message("settings.annotation.schema.title") + ""); + JLabel schemaLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.schema.title") + ""); contentPanel.add(schemaLabel, c); // Schema editor @@ -129,7 +129,7 @@ public AnnotationSettingsComponent() { // Wrap editor in a panel to ensure it expands properly JPanel editorPanel = new JPanel(new BorderLayout()); - editorPanel.add(new JBLabel(MyBundle.message("settings.annotation.schema.label")), BorderLayout.NORTH); + editorPanel.add(new JBLabel(I18nService.getInstance().message("settings.annotation.schema.label")), BorderLayout.NORTH); editorPanel.add(schemaEditor, BorderLayout.CENTER); contentPanel.add(editorPanel, c); @@ -143,44 +143,44 @@ public AnnotationSettingsComponent() { helpPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); JLabel helpText = new JBLabel("" + - "

      " + MyBundle.message("settings.annotation.schema.help.title") + "

      " + - "

      " + MyBundle.message("settings.annotation.schema.help.intro") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.intro") + "

      " + - "

      " + MyBundle.message("settings.annotation.schema.help.structure.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.structure.title") + "

      " + "
        " + - "
      • " + MyBundle.message("settings.annotation.schema.help.structure.1") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.structure.2") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.structure.3") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.structure.1") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.structure.2") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.structure.3") + "
      • " + "
      " + - "

      " + MyBundle.message("settings.annotation.schema.help.validation.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.validation.title") + "

      " + "
        " + - "
      • " + MyBundle.message("settings.annotation.schema.help.validation.1") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.validation.2") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.validation.3") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.validation.4") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.validation.5") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.validation.1") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.validation.2") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.validation.3") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.validation.4") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.validation.5") + "
      • " + "
      " + - "

      " + MyBundle.message("settings.annotation.schema.help.valueProvider.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.title") + "

      " + "
        " + - "
      • " + MyBundle.message("settings.annotation.schema.help.valueProvider.1") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.valueProvider.2") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.valueProvider.3") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.1") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.2") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.3") + "
      • " + "
      " + - "

      " + MyBundle.message("settings.annotation.schema.help.example.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.example.title") + "

      " + "
      " + EXAMPLE_JSON.replace("<", "<").replace(">", ">").replace("\n", "
      ").replace(" ", " ") + "
      " + - "

      " + MyBundle.message("settings.annotation.schema.help.notes.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.notes.title") + "

      " + "
        " + - "
      • " + MyBundle.message("settings.annotation.schema.help.notes.1") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.notes.2") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.notes.3") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.notes.4") + "
      • " + - "
      • " + MyBundle.message("settings.annotation.schema.help.notes.5") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.1") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.2") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.3") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.4") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.5") + "
      • " + "
      " + ""); diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java index e3a24281..2489042a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java @@ -1,12 +1,13 @@ package com.github.jaksonlin.testcraft.application.settings; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.editor.EditorSettings; import com.intellij.openapi.editor.ex.EditorEx; import com.intellij.ui.EditorTextField; import com.intellij.ui.components.JBCheckBox; import com.intellij.ui.components.JBLabel; import org.jetbrains.annotations.NotNull; -import com.github.jaksonlin.testcraft.util.MyBundle; + import javax.swing.*; import java.awt.*; @@ -36,30 +37,30 @@ public InvalidTestCaseSettingsComponent() { c.gridx = 0; c.gridy = 0; c.weighty = 0.0; - JLabel validationLabel = new JBLabel("" + MyBundle.message("settings.invalidTestCase.title") + ""); + JLabel validationLabel = new JBLabel("" + I18nService.getInstance().message("settings.invalidTestCase.title") + ""); contentPanel.add(validationLabel, c); // Checkboxes c.gridy = 1; - enableCheckbox = new JBCheckBox(MyBundle.message("settings.invalidTestCase.enableCheck")); - enableCheckbox.setToolTipText(MyBundle.message("settings.invalidTestCase.enableCheck.tooltip")); + enableCheckbox = new JBCheckBox(I18nService.getInstance().message("settings.invalidTestCase.enableCheck")); + enableCheckbox.setToolTipText(I18nService.getInstance().message("settings.invalidTestCase.enableCheck.tooltip")); contentPanel.add(enableCheckbox, c); c.gridy = 2; - enableCommentCheckbox = new JBCheckBox(MyBundle.message("settings.invalidTestCase.enableCommentCheck")); - enableCommentCheckbox.setToolTipText(MyBundle.message("settings.invalidTestCase.enableCommentCheck.tooltip")); + enableCommentCheckbox = new JBCheckBox(I18nService.getInstance().message("settings.invalidTestCase.enableCommentCheck")); + enableCommentCheckbox.setToolTipText(I18nService.getInstance().message("settings.invalidTestCase.enableCommentCheck.tooltip")); contentPanel.add(enableCommentCheckbox, c); // Invalid Assertions section c.gridy = 3; c.insets = new Insets(15, 5, 5, 5); - JLabel assertionsLabel = new JBLabel("" + MyBundle.message("settings.invalidTestCase.assertions.title") + ""); + JLabel assertionsLabel = new JBLabel("" + I18nService.getInstance().message("settings.invalidTestCase.assertions.title") + ""); contentPanel.add(assertionsLabel, c); // Editor description c.gridy = 4; c.insets = new Insets(5, 5, 5, 5); - JLabel editorDesc = new JBLabel(MyBundle.message("settings.invalidTestCase.assertions.description")); + JLabel editorDesc = new JBLabel(I18nService.getInstance().message("settings.invalidTestCase.assertions.description")); contentPanel.add(editorDesc, c); // Assertion editor @@ -73,11 +74,11 @@ public InvalidTestCaseSettingsComponent() { c.weighty = 0.0; // Reset vertical weight c.insets = new Insets(10, 5, 5, 5); JLabel helpText = new JBLabel("" + - "" + MyBundle.message("settings.invalidTestCase.assertions.examples.title") + "
      " + - MyBundle.message("settings.invalidTestCase.assertions.examples.1") + "
      " + - MyBundle.message("settings.invalidTestCase.assertions.examples.2") + "
      " + - MyBundle.message("settings.invalidTestCase.assertions.examples.3") + "
      " + - MyBundle.message("settings.invalidTestCase.assertions.examples.4") + + "" + I18nService.getInstance().message("settings.invalidTestCase.assertions.examples.title") + "
      " + + I18nService.getInstance().message("settings.invalidTestCase.assertions.examples.1") + "
      " + + I18nService.getInstance().message("settings.invalidTestCase.assertions.examples.2") + "
      " + + I18nService.getInstance().message("settings.invalidTestCase.assertions.examples.3") + "
      " + + I18nService.getInstance().message("settings.invalidTestCase.assertions.examples.4") + ""); contentPanel.add(helpText, c); diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java index 62e8e73d..ef86cacd 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java @@ -6,10 +6,14 @@ import org.jetbrains.annotations.NotNull; import com.github.jaksonlin.testcraft.util.OllamaClient; -import com.github.jaksonlin.testcraft.util.MyBundle; + import javax.swing.*; import java.awt.*; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public class OllamaSettingsComponent { private final JPanel mainPanel; private final JBTextField hostField = new JBTextField(); @@ -30,49 +34,49 @@ public OllamaSettingsComponent() { contentPanel.setLayout(new BoxLayout(contentPanel, BoxLayout.Y_AXIS)); // Connection Settings Section - JPanel connectionPanel = createSectionPanel(MyBundle.message("llm.settings.connection.title")); + JPanel connectionPanel = createSectionPanel(I18nService.getInstance().message("llm.settings.connection.title")); GridBagConstraints c = new GridBagConstraints(); c.insets = JBUI.insets(5); c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.LINE_START; // Host field - addLabelAndField(connectionPanel, MyBundle.message("llm.settings.host.label"), hostField, - MyBundle.message("llm.settings.host.tooltip")); + addLabelAndField(connectionPanel, I18nService.getInstance().message("llm.settings.host.label"), hostField, + I18nService.getInstance().message("llm.settings.host.tooltip")); // Port field - addLabelAndField(connectionPanel, MyBundle.message("llm.settings.port.label"), portField, - MyBundle.message("llm.settings.port.tooltip")); + addLabelAndField(connectionPanel, I18nService.getInstance().message("llm.settings.port.label"), portField, + I18nService.getInstance().message("llm.settings.port.tooltip")); contentPanel.add(connectionPanel); contentPanel.add(Box.createVerticalStrut(10)); // Model Settings Section - JPanel modelPanel = createSectionPanel(MyBundle.message("llm.settings.model.title")); + JPanel modelPanel = createSectionPanel(I18nService.getInstance().message("llm.settings.model.title")); // Model field - addLabelAndField(modelPanel, MyBundle.message("llm.settings.model.label"), modelField, - MyBundle.message("llm.settings.model.tooltip")); + addLabelAndField(modelPanel, I18nService.getInstance().message("llm.settings.model.label"), modelField, + I18nService.getInstance().message("llm.settings.model.tooltip")); // Max Tokens field - addLabelAndField(modelPanel, MyBundle.message("llm.settings.maxTokens.label"), maxTokensField, - MyBundle.message("llm.settings.maxTokens.tooltip")); + addLabelAndField(modelPanel, I18nService.getInstance().message("llm.settings.maxTokens.label"), maxTokensField, + I18nService.getInstance().message("llm.settings.maxTokens.tooltip")); // Temperature field - addLabelAndField(modelPanel, MyBundle.message("llm.settings.temperature.label"), temperatureField, - MyBundle.message("llm.settings.temperature.tooltip")); + addLabelAndField(modelPanel, I18nService.getInstance().message("llm.settings.temperature.label"), temperatureField, + I18nService.getInstance().message("llm.settings.temperature.tooltip")); // Timeout field - addLabelAndField(modelPanel, MyBundle.message("llm.settings.timeout.label"), timeoutField, - MyBundle.message("llm.settings.timeout.tooltip")); + addLabelAndField(modelPanel, I18nService.getInstance().message("llm.settings.timeout.label"), timeoutField, + I18nService.getInstance().message("llm.settings.timeout.tooltip")); contentPanel.add(modelPanel); contentPanel.add(Box.createVerticalStrut(10)); // Output Settings Section - JPanel outputPanel = createSectionPanel(MyBundle.message("llm.settings.output.title")); - copyAsMarkdownCheckbox = new JCheckBox(MyBundle.message("llm.settings.copyMarkdown.label")); - copyAsMarkdownCheckbox.setToolTipText(MyBundle.message("llm.settings.copyMarkdown.tooltip")); + JPanel outputPanel = createSectionPanel(I18nService.getInstance().message("llm.settings.output.title")); + copyAsMarkdownCheckbox = new JCheckBox(I18nService.getInstance().message("llm.settings.copyMarkdown.label")); + copyAsMarkdownCheckbox.setToolTipText(I18nService.getInstance().message("llm.settings.copyMarkdown.tooltip")); copyAsMarkdownCheckbox.setAlignmentX(Component.LEFT_ALIGNMENT); outputPanel.add(copyAsMarkdownCheckbox); @@ -80,18 +84,18 @@ public OllamaSettingsComponent() { contentPanel.add(Box.createVerticalStrut(10)); // Test Connection Section - JPanel testPanel = createSectionPanel(MyBundle.message("llm.settings.test.title")); - JButton testConnectionButton = new JButton(MyBundle.message("llm.settings.test.button")); + JPanel testPanel = createSectionPanel(I18nService.getInstance().message("llm.settings.test.title")); + JButton testConnectionButton = new JButton(I18nService.getInstance().message("llm.settings.test.button")); testConnectionButton.setAlignmentX(Component.LEFT_ALIGNMENT); testPanel.add(testConnectionButton); // Add help text JLabel helpText = new JBLabel("" + - "

      " + MyBundle.message("llm.settings.help.title") + "

      " + + "

      " + I18nService.getInstance().message("llm.settings.help.title") + "

      " + "
        " + - "
      • " + MyBundle.message("llm.settings.help.running") + "
      • " + - "
      • " + MyBundle.message("llm.settings.help.host") + "
      • " + - "
      • " + MyBundle.message("llm.settings.help.port") + "
      • " + + "
      • " + I18nService.getInstance().message("llm.settings.help.running") + "
      • " + + "
      • " + I18nService.getInstance().message("llm.settings.help.host") + "
      • " + + "
      • " + I18nService.getInstance().message("llm.settings.help.port") + "
      • " + "
      " + ""); helpText.setAlignmentX(Component.LEFT_ALIGNMENT); @@ -152,18 +156,18 @@ private void testConnection() { if (success) { JOptionPane.showMessageDialog(mainPanel, "Successfully connected to Ollama server!", - MyBundle.message("llm.settings.test.title"), + I18nService.getInstance().message("llm.settings.test.title"), JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(mainPanel, - MyBundle.message("llm.error.connection"), - MyBundle.message("llm.settings.test.title"), + I18nService.getInstance().message("llm.error.connection"), + I18nService.getInstance().message("llm.settings.test.title"), JOptionPane.ERROR_MESSAGE); } } catch (Exception e) { JOptionPane.showMessageDialog(mainPanel, - MyBundle.message("llm.error.connection") + ": " + e.getMessage(), - MyBundle.message("llm.settings.test.title"), + I18nService.getInstance().message("llm.error.connection") + ": " + e.getMessage(), + I18nService.getInstance().message("llm.settings.test.title"), JOptionPane.ERROR_MESSAGE); } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java index 88e65689..3c71c95f 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java @@ -1,7 +1,7 @@ package com.github.jaksonlin.testcraft.application.settings; import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; -import com.github.jaksonlin.testcraft.util.MyBundle; + import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nls; @@ -9,6 +9,8 @@ import javax.swing.*; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public class OllamaSettingsConfigurable implements Configurable { private OllamaSettingsComponent settingsComponent = new OllamaSettingsComponent(); private final LLMConfigService llmConfigService = ApplicationManager.getApplication().getService(LLMConfigService.class); @@ -16,7 +18,7 @@ public class OllamaSettingsConfigurable implements Configurable { @Nls(capitalization = Nls.Capitalization.Title) @Override public String getDisplayName() { - return MyBundle.message("settings.testcraft.llm"); + return I18nService.getInstance().message("settings.testcraft.llm"); } @Override diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java index be8ce138..c9a5534a 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/TestCraftSettingsConfigurable.java @@ -5,9 +5,11 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import com.github.jaksonlin.testcraft.util.MyBundle; + import javax.swing.*; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public class TestCraftSettingsConfigurable implements SearchableConfigurable.Parent { @Override public @NotNull String getId() { @@ -16,7 +18,7 @@ public class TestCraftSettingsConfigurable implements SearchableConfigurable.Par @Override public String getDisplayName() { - return MyBundle.message("settings.testcraft.title"); + return I18nService.getInstance().message("settings.testcraft.title"); } @Override @@ -24,12 +26,12 @@ public String getDisplayName() { // Create a panel with a brief description of TestCraft settings JPanel panel = new JPanel(); panel.add(new JLabel("" + - "

      " + MyBundle.message("settings.testcraft.title") + "

      " + - "

      " + MyBundle.message("settings.testcraft.description") + "

      " + + "

      " + I18nService.getInstance().message("settings.testcraft.title") + "

      " + + "

      " + I18nService.getInstance().message("settings.testcraft.description") + "

      " + "
        " + - "
      • " + MyBundle.message("settings.testcraft.annotations") + " - " + MyBundle.message("settings.testcraft.annotations.description") + "
      • " + - "
      • " + MyBundle.message("settings.testcraft.asserts") + " - " + MyBundle.message("settings.testcraft.asserts.description") + "
      • " + - "
      • " + MyBundle.message("settings.testcraft.llm") + " - " + MyBundle.message("settings.testcraft.llm.description") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.testcraft.annotations") + " - " + I18nService.getInstance().message("settings.testcraft.annotations.description") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.testcraft.asserts") + " - " + I18nService.getInstance().message("settings.testcraft.asserts.description") + "
      • " + + "
      • " + I18nService.getInstance().message("settings.testcraft.llm") + " - " + I18nService.getInstance().message("settings.testcraft.llm.description") + "
      • " + "
      " + "")); return panel; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java index 7bbcd002..eae8eb76 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java @@ -9,11 +9,13 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.Messages; -import com.github.jaksonlin.testcraft.util.MyBundle; + import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicReference; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public abstract class PitestCommand { private final Project project; private final PitestContext context; @@ -65,7 +67,7 @@ protected void showError(String message) { ApplicationManager.getApplication().invokeLater(() -> { String contextState = PitestContext.dumpPitestContext(context); String messageWithContextState = message + "\n\n" + contextState; - Messages.showErrorDialog(project, messageWithContextState, MyBundle.message("error.pitest.general.title")); + Messages.showErrorDialog(project, messageWithContextState, I18nService.getInstance().message("error.pitest.general.title")); }); } } diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java index e0b5ddfd..bb69a44d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PrepareEnvironmentCommand.java @@ -13,7 +13,7 @@ import com.intellij.openapi.ui.Messages; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; -import com.github.jaksonlin.testcraft.util.MyBundle; + import java.io.File; import java.nio.file.Path; @@ -21,6 +21,8 @@ import java.util.ArrayList; import java.util.List; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public class PrepareEnvironmentCommand extends PitestCommand { private final JavaFileProcessor javaFileProcessor = new JavaFileProcessor(); @@ -144,7 +146,7 @@ private void collectResourceDirectories() { } private void collectTargetClassThatWeTest(List sourceRoots) { - String targetClass = showInputDialog(MyBundle.message("dialog.target.class.message"), MyBundle.message("dialog.target.class.title")); + String targetClass = showInputDialog(I18nService.getInstance().message("dialog.target.class.message"), I18nService.getInstance().message("dialog.target.class.title")); if (targetClass == null || targetClass.isEmpty()) { try { throw new CommandCancellationException("User cancelled the operation"); @@ -234,7 +236,7 @@ private void setupPitestLibDependencies(List resourceDirectories) { } dependencies.addAll(resourceDirectories); if (dependencies.isEmpty()) { - Messages.showErrorDialog(MyBundle.message("error.pitest.dependencies"), MyBundle.message("error.pitest.title")); + Messages.showErrorDialog(I18nService.getInstance().message("error.pitest.dependencies"), I18nService.getInstance().message("error.pitest.title")); throw new IllegalStateException("Cannot find pitest dependencies"); } getContext().setPitestDependencies(String.join(File.pathSeparator, dependencies)); diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java index 84c194c6..4c83b36d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/testscan/UnittestCaseCheckCommand.java @@ -1,6 +1,6 @@ package com.github.jaksonlin.testcraft.infrastructure.commands.testscan; -import com.github.jaksonlin.testcraft.util.MyBundle; + import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.domain.context.UnittestCase; @@ -14,6 +14,8 @@ import java.util.List; import java.util.Map; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public abstract class UnittestCaseCheckCommand { private final Project project; private final CaseCheckContext context; @@ -37,7 +39,7 @@ public void showSuccessMessage(Project project, String message) { Messages.showMessageDialog( project, message, - MyBundle.message("test.annotation.details.title"), + I18nService.getInstance().message("test.annotation.details.title"), Messages.getInformationIcon() ); } @@ -46,7 +48,7 @@ public void showErrorMessage(Project project, String message) { Messages.showMessageDialog( project, "Error parsing annotation: " + message, - MyBundle.message("test.file.action.title"), + I18nService.getInstance().message("test.file.action.title"), Messages.getErrorIcon() ); } @@ -55,7 +57,7 @@ public void showNoAnnotationMessage(Project project, String annotationName) { Messages.showMessageDialog( project, "No " + annotationName + " annotation found on this method", - MyBundle.message("test.file.action.title"), + I18nService.getInstance().message("test.file.action.title"), Messages.getWarningIcon() ); } @@ -64,7 +66,7 @@ public void showNotJunitTestMethodMessage(Project project) { Messages.showMessageDialog( project, "This method is not a JUnit test method", - MyBundle.message("test.annotation.generation.title"), + I18nService.getInstance().message("test.annotation.generation.title"), Messages.getWarningIcon() ); } @@ -73,7 +75,7 @@ public void showNoMethodMessage(Project project) { Messages.showMessageDialog( project, "No methods found in this class", - MyBundle.message("test.methods.not.found.title"), + I18nService.getInstance().message("test.methods.not.found.title"), Messages.getWarningIcon() ); } @@ -82,7 +84,7 @@ public void showNoTestMethodCanAddMessage(Project project) { Messages.showMessageDialog( project, "No test methods found in the class that can add annotation.", - MyBundle.message("test.methods.no.annotation.title"), + I18nService.getInstance().message("test.methods.no.annotation.title"), Messages.getInformationIcon() ); } @@ -91,7 +93,7 @@ public void showAnnotationAlreadyExistMessage(Project project, String annotation Messages.showMessageDialog( project, annotationName + " already exist on this method", - MyBundle.message("test.annotation.exists.title"), + I18nService.getInstance().message("test.annotation.exists.title"), Messages.getWarningIcon() ); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java index bab53604..e685282b 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/LLMChatMediatorImpl.java @@ -1,6 +1,6 @@ package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; -import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.util.Mutation; @@ -49,14 +49,14 @@ public void generateUnittestRequest(String testCodeFile, String sourceCodeFile, // Test connection before attempting to send message if (!ollamaClient.testConnection()) { eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, - MyBundle.message("llm.error.connection"))); + I18nService.getInstance().message("llm.error.connection"))); return; } List messages = createPromptOnly(testCodeFile, sourceCodeFile, mutations); if (messages.isEmpty()) { eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, - MyBundle.message("llm.error.no.mutations"))); + I18nService.getInstance().message("llm.error.no.mutations"))); return; } messageHistory.addAll(messages); @@ -80,7 +80,7 @@ public void handleChatMessage(String message) { // Test connection before attempting to send message if (!ollamaClient.testConnection()) { eventBusService.post(new ChatEvent(ChatEvent.CHAT_RESPONSE, - MyBundle.message("llm.error.connection"))); + I18nService.getInstance().message("llm.error.connection"))); return; } messageHistory.add(new OllamaClient.Message("user", message)); @@ -189,14 +189,14 @@ private List createPromptOnly(String testCodeFile, String .count(); // System message to set context - promptOnlyMessages.add(new OllamaClient.Message("system", MyBundle.message("llm.prompt.system"))); + promptOnlyMessages.add(new OllamaClient.Message("system", I18nService.getInstance().message("llm.prompt.system"))); // Read source files if needed String sourceCode = readFileContent(sourceCodeFile); String testCode = readFileContent(testCodeFile); // User message with the structured data - String prompt = String.format(MyBundle.message("llm.prompt.user"), + String prompt = String.format(I18nService.getInstance().message("llm.prompt.user"), sourceCode, testCode, totalMutations, @@ -227,10 +227,10 @@ private List createPromptOnlyWithoutCodeContent(String tes .count(); // System message to set context - promptOnlyMessages.add(new OllamaClient.Message("system", MyBundle.message("llm.prompt.system"))); + promptOnlyMessages.add(new OllamaClient.Message("system", I18nService.getInstance().message("llm.prompt.system"))); // User message with the structured data - String prompt = String.format(MyBundle.message("llm.prompt.user.compact"), + String prompt = String.format(I18nService.getInstance().message("llm.prompt.user.compact"), testClassName, sourceClassName, totalMutations, diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java index 60a70406..7530e2f7 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/config/LLMConfigService.java @@ -124,7 +124,7 @@ public void onEventHappen(String eventName, Object eventObj) { // Handle events from LLMChatMediator if needed switch (eventName) { case ChatEvent.CHAT_REQUEST: - this.llmChatMediator.handleChatMessage(eventObj.toString()); + handleChatMessage(eventObj.toString()); break; case ChatEvent.CLEAR_CHAT: this.llmChatMediator.clearChat(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java index 8ad709b1..82fe51de 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java @@ -16,7 +16,24 @@ public class ChatPanelComponent { - private final TypedEventObserver chatObserver; + private final TypedEventObserver chatObserver = new TypedEventObserver(ChatEvent.class) { + @Override + protected void onTypedEvent(ChatEvent event) { + // Handle the chat event + switch (event.getEventType()) { + case ChatEvent.START_LOADING: + // disable input area and send button + setInputEnabled(false); + break; + case ChatEvent.STOP_LOADING: + case ChatEvent.CHAT_RESPONSE: + case ChatEvent.ERROR: + // enable input area and send button + setInputEnabled(true); + break; + } + } + }; private final JTextArea inputArea; private final JButton sendButton; private final JPanel masterPanel; @@ -50,22 +67,7 @@ public void keyPressed(KeyEvent e) { } }); - chatObserver = new TypedEventObserver(ChatEvent.class) { - @Override - protected void onTypedEvent(ChatEvent event) { - // Handle the chat event - switch (event.getEventType()) { - case ChatEvent.START_LOADING: - // disable input area and send button - setInputEnabled(false); - break; - case ChatEvent.STOP_LOADING: - // enable input area and send button - setInputEnabled(true); - break; - } - } - }; + } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java index 9b9cfb1f..176764ac 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java @@ -40,9 +40,7 @@ public void onTypedEvent(ChatEvent event) { } break; case ChatEvent.CHAT_RESPONSE: - if (isLoading) { - stopLoading(); - } + stopLoading(); appendMarkdownToOutput(String.format(MESSAGE_TEMPLATE, "assistant", I18nService.getInstance().message("llm.assistant"), event.getPayload().toString())); break; case ChatEvent.COPY_CHAT_RESPONSE: diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java index a2acd67e..3bf3a0be 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java @@ -38,6 +38,8 @@ public void onTypedEvent(ChatEvent event) { dryRunButton.setEnabled(false); break; case ChatEvent.STOP_LOADING: + case ChatEvent.CHAT_RESPONSE: + case ChatEvent.ERROR: generateButton.setEnabled(true); dryRunButton.setEnabled(true); break; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java index b6a73646..86eba297 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java @@ -1,6 +1,6 @@ package com.github.jaksonlin.testcraft.presentation.components; -import com.github.jaksonlin.testcraft.util.MyBundle; + import com.github.jaksonlin.testcraft.presentation.viewmodels.MutationToolWindowViewModel; import com.intellij.openapi.project.Project; @@ -13,8 +13,10 @@ import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; + public class MutationToolWindowUIComponent { - private final JButton clearButton = new JButton(MyBundle.message("clear.button")); + private final JButton clearButton = new JButton(I18nService.getInstance().message("clear.button")); private final JTextField searchInput = new JTextField(20); protected final ObservableTree resultTree = new ObservableTree(); private final MutationToolWindowViewModel vm; @@ -24,7 +26,7 @@ public MutationToolWindowUIComponent(Project project) { this.vm = new MutationToolWindowViewModel(project, resultTree); this.toolWindowPanel = createToolWindowPanel(); registerListeners(); - searchInput.setToolTipText(MyBundle.message("search.placeholder")); + searchInput.setToolTipText(I18nService.getInstance().message("search.placeholder")); } private void registerListeners() { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java index d407cf51..c296bdeb 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java @@ -3,7 +3,7 @@ import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; -import com.github.jaksonlin.testcraft.util.MyBundle; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.util.Pair; import org.jetbrains.annotations.NotNull; @@ -50,7 +50,7 @@ private void initializeMutationTree(@NotNull List> nodeName } private DefaultTreeModel buildTreeModel(@NotNull List> nodeNameList) { - DefaultMutableTreeNode root = new DefaultMutableTreeNode(MyBundle.message("mutation.tree.root")); + DefaultMutableTreeNode root = new DefaultMutableTreeNode(I18nService.getInstance().message("mutation.tree.root")); for (Pair pair : nodeNameList) { String packageName = pair.getFirst(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java b/src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java deleted file mode 100644 index 62d020a2..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/util/MyBundle.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.github.jaksonlin.testcraft.util; - -import com.intellij.DynamicBundle; -import org.jetbrains.annotations.NonNls; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.PropertyKey; - -import java.util.function.Supplier; - -public final class MyBundle extends DynamicBundle { - @NonNls - private static final String BUNDLE = "messages.MyBundle"; - private static final MyBundle INSTANCE = new MyBundle(); - - private MyBundle() { - super(BUNDLE); - } - - public static @NotNull String message(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { - return INSTANCE.getMessage(key, params); - } - - public static @NotNull Supplier messagePointer(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, Object... params) { - return INSTANCE.getLazyMessage(key, params); - } - - public static MyBundle getInstance() { - return INSTANCE; - } -} \ No newline at end of file From a65aefe49909214ccdaaa2722ab32671882c824f Mon Sep 17 00:00:00 2001 From: zhislin Date: Mon, 5 May 2025 23:18:05 +0800 Subject: [PATCH 20/25] fix i18n action text --- .../application/actions/CheckInvalidTestCasesAction.java | 7 +++++++ .../actions/GenerateAnnotationCommandAction.java | 7 +++++++ .../application/actions/RunCaseAnnoationCheckAction.java | 7 +++++++ .../testcraft/application/actions/RunPitestAction.java | 9 +++++++++ 4 files changed, 30 insertions(+) diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java index 5e4f5532..9d00bbcf 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/CheckInvalidTestCasesAction.java @@ -2,6 +2,7 @@ import com.github.jaksonlin.testcraft.infrastructure.commands.testscan.UnittestFileBatchScanCommand; import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.application.ApplicationManager; @@ -11,6 +12,12 @@ public class CheckInvalidTestCasesAction extends AnAction { + @Override + public void update(@NotNull AnActionEvent e) { + super.update(e); + e.getPresentation().setText(I18nService.getInstance().message("action.CheckInvalidTestCasesAction.text")); + } + @Override public void actionPerformed(@NotNull AnActionEvent e) { diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java index 4e315ad7..80d849de 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/GenerateAnnotationCommandAction.java @@ -1,6 +1,7 @@ package com.github.jaksonlin.testcraft.application.actions; import com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations.GenerateAnnotationCommand; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; @@ -13,6 +14,12 @@ public class GenerateAnnotationCommandAction extends AnAction { + @Override + public void update(@NotNull AnActionEvent e) { + super.update(e); + e.getPresentation().setText(I18nService.getInstance().message("action.GenerateAnnotationCommandAction.text")); + } + @Override public void actionPerformed(@NotNull AnActionEvent e) { Pair psiMethodInfo = PsiUtil.findMethodAtCaret(e); // Call the static method diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java index 741fd8d9..33c678e9 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunCaseAnnoationCheckAction.java @@ -1,6 +1,7 @@ package com.github.jaksonlin.testcraft.application.actions; import com.github.jaksonlin.testcraft.infrastructure.commands.unittestannotations.CheckAnnotationCommand; +import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.Pair; import com.github.jaksonlin.testcraft.util.PsiUtil; @@ -28,4 +29,10 @@ public void actionPerformed(@NotNull AnActionEvent e) { } } + @Override + public void update(@NotNull AnActionEvent e) { + super.update(e); + e.getPresentation().setText(I18nService.getInstance().message("action.RunCaseAnnoationCheckAction.text")); + } + } \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java index bafc428a..995906d2 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/actions/RunPitestAction.java @@ -32,6 +32,15 @@ public RunPitestAction() { pitestService = ApplicationManager.getApplication().getService(PitestService.class); } + @Override + public void update(@NotNull AnActionEvent e) { + super.update(e); + // You can change the text here + e.getPresentation().setText(I18nService.getInstance().message("action.RunPitestAction.text")); + + + } + @Override public void actionPerformed(@NotNull AnActionEvent e) { Project targetProject = e.getProject(); From 6d4425b51f4723fc1ce70e4415a8e5c981df537d Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 6 May 2025 10:06:13 +0800 Subject: [PATCH 21/25] will hang --- .../GenerateAnnotationCommand.java | 13 +- .../AnnotationValueProviderService.java | 64 ++-- .../AnnotationClassSelectionComponent.java | 4 + .../jaksonlin/testcraft/util/GitUtil.java | 290 +++++++++++++----- 4 files changed, 252 insertions(+), 119 deletions(-) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java index 3c0ad29c..b84d3b51 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/unittestannotations/GenerateAnnotationCommand.java @@ -152,7 +152,6 @@ protected JComponent createCenterPanel() { } } if (selectedMethodCount > 0) { - CountDownLatch latch = new CountDownLatch(selectedMethodCount); ProgressManager.getInstance().run(new Task.Backgroundable(getProject(), "Applying annotations") { @Override public void run(@NotNull ProgressIndicator indicator) { @@ -160,22 +159,16 @@ public void run(@NotNull ProgressIndicator indicator) { for (int i = 0; i < testMethods.size(); i++) { if (selected[i]) { int finalI = i; - ApplicationManager.getApplication().executeOnPooledThread(() -> { + try { generateAnnotation(testMethods.get(finalI), getContext().getSchema()); } catch (Exception e) { LOG.error("Failed to generate annotation", e); - } finally { - latch.countDown(); } - }); + } } - try { - latch.await(); - } catch (InterruptedException e) { - LOG.error("Interrupted while waiting for latch", e); - } + } }); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java index 9a0cf34a..d8afef86 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/services/business/AnnotationValueProviderService.java @@ -4,8 +4,10 @@ import com.github.jaksonlin.testcraft.domain.annotations.ValueProviderType; import com.github.jaksonlin.testcraft.domain.context.CaseCheckContext; import com.github.jaksonlin.testcraft.util.GitUtil; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.Service; import com.intellij.openapi.project.Project; +import com.intellij.openapi.util.Computable; import com.intellij.psi.*; import com.intellij.psi.search.GlobalSearchScope; import org.jetbrains.annotations.NotNull; @@ -29,37 +31,39 @@ public AnnotationValueProviderService(Project project) { @Nullable public Object provideValue(@NotNull ValueProvider provider, @NotNull CaseCheckContext context) { - ValueProviderType type = provider.getType(); - if (type != null) { - switch (type) { - case GIT_AUTHOR: - return getGitAuthor(); - case LAST_MODIFIER_AUTHOR: - return getLastModifierAuthor(context.getPsiMethod()); - case LAST_MODIFIER_TIME: - return getLastModifierTime(context.getPsiMethod()); - case CURRENT_DATE: - return getCurrentDate(provider.getFormat()); - case METHOD_NAME_BASED: - return generateDescription(context.getPsiMethod()); - case FIXED_VALUE: - return provider.getValue(); - case CLASS_NAME: - return guessClassUnderTestClassName(context.getPsiClass()); - case METHOD_NAME: - return guessMethodUnderTestMethodName(context.getPsiMethod()); - case METHOD_SIGNATURE: - String signature = tryGetMethodUnderTestSignature(context.getPsiClass(), context.getPsiMethod()); - return signature != null ? signature : ""; - case FIRST_CREATOR_AUTHOR: - return getFirstCreatorAuthor(context.getPsiMethod()); - case FIRST_CREATOR_TIME: - return getFirstCreatorTime(context.getPsiMethod()); - default: - return null; + return ApplicationManager.getApplication().runReadAction((Computable)() -> { + ValueProviderType type = provider.getType(); + if (type != null) { + switch (type) { + case GIT_AUTHOR: + return getGitAuthor(); + case LAST_MODIFIER_AUTHOR: + return getLastModifierAuthor(context.getPsiMethod()); + case LAST_MODIFIER_TIME: + return getLastModifierTime(context.getPsiMethod()); + case CURRENT_DATE: + return getCurrentDate(provider.getFormat()); + case METHOD_NAME_BASED: + return generateDescription(context.getPsiMethod()); + case FIXED_VALUE: + return provider.getValue(); + case CLASS_NAME: + return guessClassUnderTestClassName(context.getPsiClass()); + case METHOD_NAME: + return guessMethodUnderTestMethodName(context.getPsiMethod()); + case METHOD_SIGNATURE: + String signature = tryGetMethodUnderTestSignature(context.getPsiClass(), context.getPsiMethod()); + return signature != null ? signature : ""; + case FIRST_CREATOR_AUTHOR: + return getFirstCreatorAuthor(context.getPsiMethod()); + case FIRST_CREATOR_TIME: + return getFirstCreatorTime(context.getPsiMethod()); + default: + return null; + } } - } - return null; + return null; + }); } private String getGitAuthor() { diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java new file mode 100644 index 00000000..67f3380d --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java @@ -0,0 +1,4 @@ +package com.github.jaksonlin.testcraft.presentation.components; + +public class AnnotationClassSelectionComponent { +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java b/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java index e43514bf..6dd7c0e9 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java +++ b/src/main/java/com/github/jaksonlin/testcraft/util/GitUtil.java @@ -1,6 +1,7 @@ package com.github.jaksonlin.testcraft.util; import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.editor.Document; import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.openapi.project.Project; @@ -15,11 +16,44 @@ import git4idea.repo.GitRepository; import git4idea.repo.GitRepositoryManager; +import java.util.ArrayList; import java.util.List; +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.TimeoutException; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.Executors; public class GitUtil { + private static final Logger logger = Logger.getInstance(GitUtil.class); + private static final ThreadPoolExecutor gitThreadPool = new ThreadPoolExecutor( + 4, // core pool size + 8, // max pool size + 10L, // reduced keep alive time to release threads faster + TimeUnit.SECONDS, + new LinkedBlockingQueue<>(50), + new ThreadFactory() { + private final AtomicInteger counter = new AtomicInteger(1); + @Override + public Thread newThread(Runnable r) { + Thread thread = new Thread(r, "GitCommandThread-" + counter.getAndIncrement()); + thread.setDaemon(true); + return thread; + } + }, + new ThreadPoolExecutor.AbortPolicy() + ) { + @Override + protected void afterExecute(Runnable r, Throwable t) { + super.afterExecute(r, t); + purge(); + allowCoreThreadTimeOut(true); + } + }; + private static final long GIT_COMMAND_TIMEOUT = 30; // seconds public static GitRepositoryManager getRepositoryManager(Project project) { return GitRepositoryManager.getInstance(project); @@ -35,30 +69,63 @@ public static GitRepository getRepositoryForFile(Project project, VirtualFile fi return GitRepositoryManager.getInstance(project).getRepositoryForFile(file); } - public static GitUserInfo getGitUserInfo(Project project) { - GitRepositoryManager repositoryManager = getRepositoryManager(project); - List repositories = repositoryManager.getRepositories(); - GitRepository repository = repositories.isEmpty() ? null : repositories.get(0); - - if (repository != null) { + private static CompletableFuture> runGitCommandAsync(GitLineHandler handler) { + Git git = Git.getInstance(); + boolean inDispatchThread = ApplicationManager.getApplication().isDispatchThread(); + + Callable> runCommandCallable = () -> { try { - Callable getNameCallable = () -> GitConfigUtil.getValue(project, repository.getRoot(), GitConfigUtil.USER_NAME); - String name = ApplicationManager.getApplication().executeOnPooledThread(getNameCallable).get(); + logger.info("Starting git command execution in thread: " + Thread.currentThread().getName()); + List result = git.runCommand(handler).getOutput(); + logger.info("Completed git command execution in thread: " + Thread.currentThread().getName()); + return result; + } catch (Exception e) { + logger.error("Error executing git command in thread " + Thread.currentThread().getName(), e); + throw e; + } finally { + gitThreadPool.purge(); + } + }; - Callable getEmailCallable = () -> GitConfigUtil.getValue(project, repository.getRoot(), GitConfigUtil.USER_EMAIL); - String email = ApplicationManager.getApplication().executeOnPooledThread(getEmailCallable).get(); + CompletableFuture> future = new CompletableFuture<>(); + + try { + logger.info("Submitting git command to thread pool. Current active threads: " + + gitThreadPool.getActiveCount() + ", Queue size: " + gitThreadPool.getQueue().size()); + + gitThreadPool.submit(() -> { + try { + List result = runCommandCallable.call(); + future.complete(result); + } catch (Exception e) { + future.completeExceptionally(e); + } + }); + + // Set a timeout + long timeout = inDispatchThread ? 5 : GIT_COMMAND_TIMEOUT; + ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor(); + scheduler.schedule(() -> { + if (!future.isDone()) { + future.completeExceptionally(new TimeoutException("Git command timed out after " + timeout + " seconds")); + } + scheduler.shutdown(); + }, timeout, TimeUnit.SECONDS); + + } catch (Exception e) { + future.completeExceptionally(e); + } + + return future; + } - return new GitUserInfo( - name != null ? name : "Unknown", - email != null ? email : "unknown@email.com" - ); - } catch (InterruptedException | ExecutionException e) { - // Handle exception appropriately, maybe log it - e.printStackTrace(); - return new GitUserInfo("Unknown", "unknown@email.com"); - } + private static List runGitCommand(GitLineHandler handler) { + try { + return runGitCommandAsync(handler).get(); + } catch (InterruptedException | ExecutionException e) { + logger.error("Failed to execute git command", e); + throw new RuntimeException("Git command execution failed: " + e.getMessage(), e); } - return new GitUserInfo("Unknown", "unknown@email.com"); } public static GitCommitInfo getLastCommitInfo(Project project, PsiFile file) { @@ -67,20 +134,24 @@ public static GitCommitInfo getLastCommitInfo(Project project, PsiFile file) { if (repository == null) { return null; } - Git git = Git.getInstance(); GitLineHandler handler = new GitLineHandler(project, repository.getRoot(), GitCommand.LOG); - handler.addParameters( - "--max-count=1", - "--pretty=format:%an|%ae|%ad|%s", - "--date=format:%Y-%m-%d %H:%M:%S", - "--", - virtualFile.getPath() - ); + + List gitCommandArgs = new ArrayList<>(); + gitCommandArgs.add("--max-count=1"); + gitCommandArgs.add("--pretty=format:%an|%ae|%ad|%s"); + gitCommandArgs.add("--date=format:%Y-%m-%d %H:%M:%S"); + gitCommandArgs.add("--"); + gitCommandArgs.add(virtualFile.getPath()); + handler.addParameters(gitCommandArgs); + StringBuilder command = new StringBuilder(); + + for (String arg : gitCommandArgs) { + command.append(arg).append(" "); + } + logger.info("Running git command: " + command.toString()); - try { - Callable> runCommandCallable = () -> git.runCommand(handler).getOutput(); - List output = ApplicationManager.getApplication().executeOnPooledThread(runCommandCallable).get(); + List output = runGitCommand(handler); String firstLine = output.isEmpty() ? null : output.get(0); if (firstLine != null) { String[] parts = firstLine.split("\\|"); @@ -93,10 +164,7 @@ public static GitCommitInfo getLastCommitInfo(Project project, PsiFile file) { ); } } - } catch (InterruptedException | ExecutionException e) { - // Handle exception appropriately, maybe log it - e.printStackTrace(); - } + return null; } @@ -110,7 +178,6 @@ public static GitUserInfo getFirstCreatorInfo(Project project, PsiMethod psiMeth if (repository == null) { return null; } - Git git = Git.getInstance(); Document document = FileDocumentManager.getInstance().getDocument(file); if (document == null) { @@ -122,15 +189,21 @@ public static GitUserInfo getFirstCreatorInfo(Project project, PsiMethod psiMeth int endLine = document.getLineNumber(endOffset) + 1; GitLineHandler handler = new GitLineHandler(project, repository.getRoot(), GitCommand.BLAME); - handler.addParameters( - "-L", startLine + "," + endLine, - "--porcelain", - file.getPath() - ); + + List gitCommandArgs = new ArrayList<>(); + gitCommandArgs.add("-L"); + gitCommandArgs.add(startLine + "," + endLine); + gitCommandArgs.add("--porcelain"); + gitCommandArgs.add(file.getPath()); + handler.addParameters(gitCommandArgs); + StringBuilder command = new StringBuilder(); + for (String arg : gitCommandArgs) { + command.append(arg).append(" "); + } + logger.info("Running git command: " + command.toString()); - try { - Callable> runCommandCallable = () -> git.runCommand(handler).getOutput(); - List output = ApplicationManager.getApplication().executeOnPooledThread(runCommandCallable).get(); + + List output = runGitCommand(handler); String authorName = null; String email = null; @@ -169,43 +242,55 @@ public static GitUserInfo getFirstCreatorInfo(Project project, PsiMethod psiMeth timestamp != null ? timestamp : System.currentTimeMillis() ); } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); - } + return null; } public static GitUserInfo getLastModifyInfo(Project project, PsiMethod psiMethod) { - PsiFile containingFile = psiMethod.getContainingFile(); - VirtualFile file = containingFile != null ? containingFile.getVirtualFile() : null; - if (file == null) { - return null; - } - GitRepository repository = getRepositoryForFile(project, file); - if (repository == null) { - return null; - } - Git git = Git.getInstance(); - - Document document = FileDocumentManager.getInstance().getDocument(file); - if (document == null) { - return null; - } - int startOffset = psiMethod.getTextRange().getStartOffset(); - int endOffset = psiMethod.getTextRange().getEndOffset(); - int startLine = document.getLineNumber(startOffset) + 1; - int endLine = document.getLineNumber(endOffset) + 1; + try { + PsiFile containingFile = psiMethod.getContainingFile(); + VirtualFile file = containingFile != null ? containingFile.getVirtualFile() : null; + if (file == null) { + logger.error("Cannot get virtual file for method: " + psiMethod.getName()); + return getGitUserInfo(project); + } + + GitRepository repository = getRepositoryForFile(project, file); + if (repository == null) { + logger.error("Cannot find git repository for file: " + file.getPath()); + return getGitUserInfo(project); + } - GitLineHandler handler = new GitLineHandler(project, repository.getRoot(), GitCommand.BLAME); - handler.addParameters( - "-L", startLine + "," + endLine, - "--porcelain", - file.getPath() - ); + Document document = FileDocumentManager.getInstance().getDocument(file); + if (document == null) { + logger.error("Cannot get document for file: " + file.getPath()); + return getGitUserInfo(project); + } + + int startOffset = psiMethod.getTextRange().getStartOffset(); + int endOffset = psiMethod.getTextRange().getEndOffset(); + int startLine = document.getLineNumber(startOffset) + 1; + int endLine = document.getLineNumber(endOffset) + 1; + + GitLineHandler handler = new GitLineHandler(project, repository.getRoot(), GitCommand.BLAME); + + List gitCommandArgs = new ArrayList<>(); + gitCommandArgs.add("-L"); + gitCommandArgs.add(startLine + "," + endLine); + gitCommandArgs.add("--porcelain"); + gitCommandArgs.add(file.getPath()); + handler.addParameters(gitCommandArgs); + StringBuilder command = new StringBuilder(); + for (String arg : gitCommandArgs) { + command.append(arg).append(" "); + } + logger.info("Running git command: " + command.toString()); - try { - Callable> runCommandCallable = () -> git.runCommand(handler).getOutput(); - List output = ApplicationManager.getApplication().executeOnPooledThread(runCommandCallable).get(); + List output = runGitCommand(handler); + if (output == null || output.isEmpty()) { + logger.info("No output from git blame command"); + return getGitUserInfo(project); + } BlameInfo latestCommit = null; BlameInfo currentCommit = null; @@ -247,7 +332,7 @@ public static GitUserInfo getLastModifyInfo(Project project, PsiMethod psiMethod latestCommit = currentCommit; } } catch (NumberFormatException e) { - e.printStackTrace(); + logger.error("Error parsing timestamp from git blame output", e); } currentCommit = null; } @@ -260,10 +345,57 @@ public static GitUserInfo getLastModifyInfo(Project project, PsiMethod psiMethod latestCommit.getTimestamp() != null ? latestCommit.getTimestamp() : System.currentTimeMillis() ); } - } catch (InterruptedException | ExecutionException e) { - e.printStackTrace(); + + // If we couldn't get the last modify info, return current user info + logger.info("Could not determine last modifier, using current user info"); + return getGitUserInfo(project); + + } catch (Exception e) { + logger.error("Error getting last modify info", e); + return getGitUserInfo(project); + } + } + + public static CompletableFuture getGitUserInfoAsync(Project project) { + GitRepositoryManager repositoryManager = getRepositoryManager(project); + List repositories = repositoryManager.getRepositories(); + GitRepository repository = repositories.isEmpty() ? null : repositories.get(0); + + if (repository != null) { + CompletableFuture nameFuture = CompletableFuture.supplyAsync(() -> { + try { + return GitConfigUtil.getValue(project, repository.getRoot(), GitConfigUtil.USER_NAME); + } catch (Exception e) { + logger.error("Error getting git user name", e); + return "Unknown"; + } + }, gitThreadPool); + + CompletableFuture emailFuture = CompletableFuture.supplyAsync(() -> { + try { + return GitConfigUtil.getValue(project, repository.getRoot(), GitConfigUtil.USER_EMAIL); + } catch (Exception e) { + logger.error("Error getting git user email", e); + return "unknown@email.com"; + } + }, gitThreadPool); + + return CompletableFuture.allOf(nameFuture, emailFuture) + .thenApply(v -> new GitUserInfo( + nameFuture.join() != null ? nameFuture.join() : "Unknown", + emailFuture.join() != null ? emailFuture.join() : "unknown@email.com" + )); + } + return CompletableFuture.completedFuture(new GitUserInfo("Unknown", "unknown@email.com")); + } + + public static GitUserInfo getGitUserInfo(Project project) { + try { + return getGitUserInfoAsync(project).get(5, TimeUnit.SECONDS); + } catch (Exception e) { + logger.error("Failed to get git user info", e); + return new GitUserInfo("Unknown", "unknown@email.com"); } - return null; } private static class BlameInfo { From b0ed021d2c455dc8176d595dbf23145383fc23ee Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 6 May 2025 10:29:22 +0800 Subject: [PATCH 22/25] fix annotation generation stuck --- CHANGELOG.md | 3 +++ src/main/resources/META-INF/plugin.xml | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a9a2f6d..7ce67ad6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -71,3 +71,6 @@ ## 1.0.9 - 2025-04-30 - bugfix, backward compatibility to JDK1.8 support to run in older IntelliJ IDEA version - upload to pitest-gradle also, for pitest-gradle user, please uninstall pitest-gradle plugin and reinstall the new one manged in [testcraft](https://plugins.jetbrains.com/plugin/27221-testcraft-pro). + +## 1.0.10 - 2025-05-06 +- bugfix, git command execution in a separate thread to avoid UI blocking diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 924a4a62..6c80e353 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -31,6 +31,10 @@ Change Notes +

      1.0.10 - 2025-05-06

      +
        +
      • bugfix, git command execution in a separate thread to avoid UI blocking
      • +

      1.0.9 - 2025-04-30

      • bugfix, backward compatibility to JDK1.8 support to run in older IntelliJ IDEA version
      • @@ -78,7 +82,7 @@
      ]]>
      - 1.0.7 + 1.0.10 Jason Lam com.github.jaksonlin.testcraftpro @@ -129,7 +133,7 @@ - + Date: Tue, 6 May 2025 10:30:37 +0800 Subject: [PATCH 23/25] update version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 859c401f..214d6a97 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ pluginName = TestCraft-Pro pluginRepositoryUrl = https://github.com/jaksonlin/testcraft-pro # SemVer format -> https://semver.org -pluginVersion = 1.0.9 +pluginVersion = 1.0.10 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html From 73845611ebbcb1f5dbdfa08f969217978c63b0e1 Mon Sep 17 00:00:00 2001 From: zhislin Date: Tue, 6 May 2025 13:27:12 +0800 Subject: [PATCH 24/25] update message --- .../settings/AnnotationSettingsComponent.java | 32 +++---------------- 1 file changed, 5 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java index aed0aa62..16ca40ac 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java @@ -96,7 +96,7 @@ public AnnotationSettingsComponent() { c.gridx = 0; c.gridy = 0; c.weighty = 0.0; - JLabel importSettingsLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.import.title") + ""); + JLabel importSettingsLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.import.title") + ""); contentPanel.add(importSettingsLabel, c); // Package input @@ -118,7 +118,7 @@ public AnnotationSettingsComponent() { // Schema Configuration section c.gridy = 4; c.insets = new Insets(15, 5, 5, 5); - JLabel schemaLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.schema.title") + ""); + JLabel schemaLabel = new JBLabel("" + I18nService.getInstance().message("settings.annotation.schema.title") + ""); contentPanel.add(schemaLabel, c); // Schema editor @@ -142,7 +142,7 @@ public AnnotationSettingsComponent() { JPanel helpPanel = new JPanel(new BorderLayout()); helpPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); - JLabel helpText = new JBLabel("" + + JLabel helpText = new JBLabel("" + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.title") + "

      " + "

      " + I18nService.getInstance().message("settings.annotation.schema.help.intro") + "

      " + @@ -165,32 +165,10 @@ public AnnotationSettingsComponent() { "

      " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.title") + "

      " + "
        " + "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.1") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.2") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.valueProvider.3") + "
      • " + "
      " + - - "

      " + I18nService.getInstance().message("settings.annotation.schema.help.example.title") + "

      " + - "
      " + - EXAMPLE_JSON.replace("<", "<").replace(">", ">").replace("\n", "
      ").replace(" ", " ") + - "
      " + - - "

      " + I18nService.getInstance().message("settings.annotation.schema.help.notes.title") + "

      " + - "
        " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.1") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.2") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.3") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.4") + "
      • " + - "
      • " + I18nService.getInstance().message("settings.annotation.schema.help.notes.5") + "
      • " + - "
      " + - ""); - - // Create a scroll pane for the help text - JScrollPane scrollPane = new JScrollPane(helpText); - scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED); - scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); - scrollPane.setBorder(BorderFactory.createEmptyBorder()); + ""); - helpPanel.add(scrollPane, BorderLayout.CENTER); + helpPanel.add(helpText, BorderLayout.CENTER); contentPanel.add(helpPanel, c); // Add content panel to main panel From 0794c69d4c46d4d7e053b0b1a3f59a4891d638f5 Mon Sep 17 00:00:00 2001 From: zhislin Date: Wed, 7 May 2025 08:59:48 +0800 Subject: [PATCH 25/25] refact layout --- .../settings/AnnotationSettingsConfigurable.java | 1 + .../settings/InvalidTestCaseSettingsConfigurable.java | 1 + .../settings/OllamaSettingsConfigurable.java | 1 + .../commands/pitest/HandlePitestResultCommand.java | 2 +- .../infrastructure/commands/pitest/PitestCommand.java | 2 +- .../messaging/mediators/ILLMChatClient.java | 6 ------ .../messaging/mediators/IMutationMediator.java | 1 - .../messaging/mediators/IMutationReportUI.java | 9 --------- .../messaging/mediators/MutationMediatorImpl.java | 10 ++-------- .../components/AnnotationClassSelectionComponent.java | 4 ---- .../configuration}/AnnotationSettingsComponent.java | 2 +- .../InvalidTestCaseSettingsComponent.java | 2 +- .../configuration}/OllamaSettingsComponent.java | 4 +--- .../components/{ => llmchat}/ChatPanelComponent.java | 2 +- .../components/{ => llmchat}/LLMResponseComponent.java | 2 +- .../{ => llmchat}/LLMSuggestionUIComponent.java | 2 +- .../{ => mutation}/MutationToolWindowUIComponent.java | 2 +- .../components/{ => mutation}/ObservableTree.java | 3 +-- .../components/{ => mutation}/PitestOutputDialog.java | 2 +- .../{ => premium}/PremiumSettingsComponent.java | 2 +- .../AnnotationClassSelectionComponent.java | 4 ++++ .../toolWindow/LLMSuggestionsToolWindowFactory.java | 4 +--- .../toolWindow/MutationToolWindowFactory.java | 2 +- .../viewmodels/MutationToolWindowViewModel.java | 2 +- .../viewmodels/MutationTreeMediatorViewModel.java | 5 ++--- 25 files changed, 26 insertions(+), 51 deletions(-) delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java delete mode 100644 src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java rename src/main/java/com/github/jaksonlin/testcraft/{application/settings => presentation/components/configuration}/AnnotationSettingsComponent.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/{application/settings => presentation/components/configuration}/InvalidTestCaseSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/{application/settings => presentation/components/configuration}/OllamaSettingsComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => llmchat}/ChatPanelComponent.java (97%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => llmchat}/LLMResponseComponent.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => llmchat}/LLMSuggestionUIComponent.java (99%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => mutation}/MutationToolWindowUIComponent.java (98%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => mutation}/ObservableTree.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => mutation}/PitestOutputDialog.java (96%) rename src/main/java/com/github/jaksonlin/testcraft/presentation/components/{ => premium}/PremiumSettingsComponent.java (92%) create mode 100644 src/main/java/com/github/jaksonlin/testcraft/presentation/components/testannotation/AnnotationClassSelectionComponent.java diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java index 42c50a8e..db88648d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsConfigurable.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.json.JsonMapper; import com.github.jaksonlin.testcraft.domain.annotations.AnnotationSchema; import com.github.jaksonlin.testcraft.infrastructure.services.config.AnnotationConfigService; +import com.github.jaksonlin.testcraft.presentation.components.configuration.AnnotationSettingsComponent; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import com.intellij.openapi.options.ConfigurationException; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java index dee1250c..d24876c5 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsConfigurable.java @@ -1,6 +1,7 @@ package com.github.jaksonlin.testcraft.application.settings; import com.github.jaksonlin.testcraft.infrastructure.services.config.InvalidTestCaseConfigService; +import com.github.jaksonlin.testcraft.presentation.components.configuration.InvalidTestCaseSettingsComponent; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java index 3c71c95f..5e6562b6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java +++ b/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsConfigurable.java @@ -2,6 +2,7 @@ import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; +import com.github.jaksonlin.testcraft.presentation.components.configuration.OllamaSettingsComponent; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.options.Configurable; import org.jetbrains.annotations.Nls; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java index d1d12d13..3f06dd49 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/HandlePitestResultCommand.java @@ -1,7 +1,7 @@ package com.github.jaksonlin.testcraft.infrastructure.commands.pitest; import com.github.jaksonlin.testcraft.domain.context.PitestContext; -import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.presentation.components.mutation.PitestOutputDialog; import com.github.jaksonlin.testcraft.util.ProcessResult; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java index eae8eb76..932bc1f3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/commands/pitest/PitestCommand.java @@ -3,7 +3,7 @@ import com.github.jaksonlin.testcraft.infrastructure.commands.CommandCancellationException; import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; -import com.github.jaksonlin.testcraft.presentation.components.PitestOutputDialog; +import com.github.jaksonlin.testcraft.presentation.components.mutation.PitestOutputDialog; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java deleted file mode 100644 index e1164863..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/ILLMChatClient.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; - - -public interface ILLMChatClient { - void updateChatResponse(String responseType,String chatResponse); -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java index 596fa5d6..4a7ebcdb 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationMediator.java @@ -6,5 +6,4 @@ public interface IMutationMediator { void processMutationResult(String mutationTargetClassFilePath, List mutationList); - void register(IMutationReportUI clientUI); } diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java deleted file mode 100644 index df1b9280..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/IMutationReportUI.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.github.jaksonlin.testcraft.infrastructure.messaging.mediators; - -import com.github.jaksonlin.testcraft.util.Pair; - -import java.util.Map; - -public interface IMutationReportUI { - void updateMutationResult(String mutationClassFilePath, Map> mutationTestResult); -} \ No newline at end of file diff --git a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java index 70cb27fd..620602d0 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java +++ b/src/main/java/com/github/jaksonlin/testcraft/infrastructure/messaging/mediators/MutationMediatorImpl.java @@ -14,7 +14,6 @@ import java.util.concurrent.Executors; public class MutationMediatorImpl implements IMutationMediator { - protected IMutationReportUI clientUI; private final ExecutorService executorService = Executors.newSingleThreadExecutor(); private final EventBusService eventBusService = EventBusService.getInstance(); @@ -22,9 +21,7 @@ public class MutationMediatorImpl implements IMutationMediator { public void processMutationResult(String mutationTargetClassFilePath, List mutations) { executorService.submit(() -> { Map> renderedFormat = convertResultToUIRenderFormat(mutations); - if (clientUI != null) { - eventBusService.post(new MutationEvent(MutationEvent.MUTATION_RESULT, new Pair>>(mutationTargetClassFilePath, renderedFormat))); - } + eventBusService.post(new MutationEvent(MutationEvent.MUTATION_RESULT, new Pair>>(mutationTargetClassFilePath, renderedFormat))); }); } @@ -65,8 +62,5 @@ private String mutationMessageFormat(Mutation mutation, int groupNumber) { return groupNumber + " " + mutation.getDescription() + " -> " + mutation.getStatus(); } - @Override - public void register(IMutationReportUI clientUI) { - this.clientUI = clientUI; - } + } diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java deleted file mode 100644 index 67f3380d..00000000 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/AnnotationClassSelectionComponent.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.github.jaksonlin.testcraft.presentation.components; - -public class AnnotationClassSelectionComponent { -} diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/AnnotationSettingsComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/AnnotationSettingsComponent.java index 16ca40ac..6c0a7c3c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/AnnotationSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/AnnotationSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.application.settings; +package com.github.jaksonlin.testcraft.presentation.components.configuration; import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.json.JsonFileType; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/InvalidTestCaseSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/InvalidTestCaseSettingsComponent.java index 2489042a..9b58ed9e 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/InvalidTestCaseSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/InvalidTestCaseSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.application.settings; +package com.github.jaksonlin.testcraft.presentation.components.configuration; import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.editor.EditorSettings; diff --git a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/OllamaSettingsComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/OllamaSettingsComponent.java index ef86cacd..3fbfb9f3 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/application/settings/OllamaSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/configuration/OllamaSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.application.settings; +package com.github.jaksonlin.testcraft.presentation.components.configuration; import com.intellij.ui.components.JBLabel; import com.intellij.ui.components.JBTextField; @@ -12,8 +12,6 @@ import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; -import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; - public class OllamaSettingsComponent { private final JPanel mainPanel; private final JBTextField hostField = new JBTextField(); diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/ChatPanelComponent.java similarity index 97% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/ChatPanelComponent.java index 82fe51de..a0c32568 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ChatPanelComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/ChatPanelComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.llmchat; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMResponseComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMResponseComponent.java index 176764ac..49451490 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMResponseComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMResponseComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.llmchat; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.ChatEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.LLMConfigEvent; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMSuggestionUIComponent.java similarity index 99% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMSuggestionUIComponent.java index 3bf3a0be..061209d6 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/LLMSuggestionUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/llmchat/LLMSuggestionUIComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.llmchat; import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/MutationToolWindowUIComponent.java similarity index 98% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/MutationToolWindowUIComponent.java index 86eba297..dddfc08c 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/MutationToolWindowUIComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/MutationToolWindowUIComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.mutation; import com.github.jaksonlin.testcraft.presentation.viewmodels.MutationToolWindowViewModel; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/ObservableTree.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/ObservableTree.java index c296bdeb..9c6af23d 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/ObservableTree.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/ObservableTree.java @@ -1,8 +1,7 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.mutation; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.RunHistoryEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; -import com.github.jaksonlin.testcraft.infrastructure.services.system.EventBusService; import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.github.jaksonlin.testcraft.util.Pair; import org.jetbrains.annotations.NotNull; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/PitestOutputDialog.java similarity index 96% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/PitestOutputDialog.java index 06301025..cc4b14a4 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PitestOutputDialog.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/mutation/PitestOutputDialog.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.mutation; import com.github.jaksonlin.testcraft.infrastructure.services.system.I18nService; import com.intellij.openapi.project.Project; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/premium/PremiumSettingsComponent.java similarity index 92% rename from src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java rename to src/main/java/com/github/jaksonlin/testcraft/presentation/components/premium/PremiumSettingsComponent.java index ccb3d781..6fe8e2b4 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/PremiumSettingsComponent.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/premium/PremiumSettingsComponent.java @@ -1,4 +1,4 @@ -package com.github.jaksonlin.testcraft.presentation.components; +package com.github.jaksonlin.testcraft.presentation.components.premium; import com.github.jaksonlin.testcraft.infrastructure.license.PremiumManager; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/components/testannotation/AnnotationClassSelectionComponent.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/testannotation/AnnotationClassSelectionComponent.java new file mode 100644 index 00000000..fb6da0c3 --- /dev/null +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/components/testannotation/AnnotationClassSelectionComponent.java @@ -0,0 +1,4 @@ +package com.github.jaksonlin.testcraft.presentation.components.testannotation; + +public class AnnotationClassSelectionComponent { +} diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java index 429b8005..7a8d0d62 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/LLMSuggestionsToolWindowFactory.java @@ -1,9 +1,7 @@ package com.github.jaksonlin.testcraft.presentation.toolWindow; -import com.github.jaksonlin.testcraft.presentation.components.LLMSuggestionUIComponent; -import com.github.jaksonlin.testcraft.infrastructure.services.config.LLMConfigService; +import com.github.jaksonlin.testcraft.presentation.components.llmchat.LLMSuggestionUIComponent; import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; -import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; import com.intellij.openapi.wm.ToolWindowFactory; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java index 6ba9b5c1..3f45fe69 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/toolWindow/MutationToolWindowFactory.java @@ -1,6 +1,6 @@ package com.github.jaksonlin.testcraft.presentation.toolWindow; -import com.github.jaksonlin.testcraft.presentation.components.MutationToolWindowUIComponent; +import com.github.jaksonlin.testcraft.presentation.components.mutation.MutationToolWindowUIComponent; import com.intellij.openapi.project.Project; import com.intellij.openapi.wm.ToolWindow; import com.intellij.openapi.wm.ToolWindowFactory; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java index 58eaba40..7df834e1 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationToolWindowViewModel.java @@ -3,7 +3,7 @@ import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationMediator; import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.MutationMediatorImpl; import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; -import com.github.jaksonlin.testcraft.presentation.components.ObservableTree; +import com.github.jaksonlin.testcraft.presentation.components.mutation.ObservableTree; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.Nullable; diff --git a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java index 88e878a9..a2bbe574 100644 --- a/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java +++ b/src/main/java/com/github/jaksonlin/testcraft/presentation/viewmodels/MutationTreeMediatorViewModel.java @@ -2,7 +2,6 @@ import com.github.jaksonlin.testcraft.domain.context.PitestContext; import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationMediator; -import com.github.jaksonlin.testcraft.infrastructure.messaging.mediators.IMutationReportUI; import com.github.jaksonlin.testcraft.infrastructure.services.business.RunHistoryManagerService; import com.github.jaksonlin.testcraft.util.Mutation; import com.github.jaksonlin.testcraft.util.Pair; @@ -36,12 +35,13 @@ import com.github.jaksonlin.testcraft.infrastructure.messaging.events.MutationEvent; import com.github.jaksonlin.testcraft.infrastructure.messaging.events.TypedEventObserver; -public class MutationTreeMediatorViewModel implements IMutationReportUI { +public class MutationTreeMediatorViewModel { private static final Logger log = LoggerFactory.getLogger(MutationTreeMediatorViewModel.class); private final Project project; private final IMutationMediator mediator; private final RunHistoryManagerService runHistoryManager = RunHistoryManagerService.getInstance(); protected final HashMap annotatedNodes = new HashMap<>(); + private final TypedEventObserver mutationObserver = new TypedEventObserver(MutationEvent.class) { @Override public void onTypedEvent(MutationEvent event) { @@ -55,7 +55,6 @@ public void onTypedEvent(MutationEvent event) { public MutationTreeMediatorViewModel(@NotNull Project project, @NotNull IMutationMediator mediator) { this.project = project; this.mediator = mediator; - mediator.register(this); registerEditorListener(project); }