From 37a1ac27f15cb982aee31ae416535df4856615fe Mon Sep 17 00:00:00 2001 From: Stephan Schroevers Date: Sat, 23 Dec 2023 10:41:34 +0100 Subject: [PATCH] This is a squash commit of the following previous commits: --- Introduce `BugPatternTestExtractor` with tests --- Simplify tests --- Further simplify testing setup --- Kill another mutant and drop unused imports --- This actually kills the mutant --- Suggestions --- Suggestions --- Suggestions --- Fix JDK 11 compatibility --- PSM-1717 Pass `ClassLoader` to `ServiceLoader` --- Introduce documentation generation This is a squash commit of the following previous commits: --- Introduce `documentation-support` module to extract website data from source code By adding a compilation `TaskListener` that extracts data from the Bug pattern and Refaster rule collection (test) classes and writing to JSON output files in the target directory. This extraction happens as part of the Maven build using the `docgen` profile. --- Improve website styling Co-authored-by: japborst Co-authored-by: Gijs de Jong --- Generate Markdown files from existing content for the website --- Upgrade dependencies to the latest versions --- Compile and install project jars before docgen --- Run validation in build and exclude self-url --- Reintroduce `htmlproofer`, improve templates, cleanup setup and dependencies --- Delete directory if it exists --- Add SCSS for GitHub button and fix bug pattern sample rendering --- Fix bug pattern GitHub link --- Small styling tweaks (incl. for dark theme) --- Use single mvn command --- Move mustache templates --- Hardcode anchors for headings --- Add supression to bugpatterns --- Remove self ignore for html-proofer --- Add refaster supressions and use callouts --- Use v0.4.1-SNAPSHOT --- Revert "Use single mvn command" This reverts commit 594471d1ed23a1c19d7fe88d925d1b7f828716cd. --- Extract Refaster samples from source code instead of AST --- Skip verification, for now --- Add notes on disabling bugpatterns --- Set default layout and image --- Fix mobile navigation --- Revert "Set default layout and image" This reverts commit 67a4aa7b5b4d14c0f2b783f345f53affe6ef3ec5. --- Add supression for refaster rules --- Post-rebase fixes --- Fix the tests --- Doh --- Version bump --- Exclude ThirdPartyLibraryTest from Bug Pattern test output --- Remove only last occurence of 'Test' in Bug Pattern tests doc generation --- Move `MapRulesTest` resources --- Add exclusion for docgen of `SourceCodeTest` --- Bump version --- Extra fixes after rebase --- Delete custom nav footer and `assets/images/favicon.ico` --- Post rebase fixes with version bump to `0.8.1-SNAPSHOT` --- Use new BugPatternTest extraction method --- Fit Refaster extractors into new documentation support setup --- Drop Docgen Maven profile --- Move new rule collection --- Improve extractor matching and update README --- Move `SuggestedFixRules` test files --- Fix Refaster exclusion regexes --- Disable external link checking until the `website` branch is up-to-date with `master` again --- Post-rebase fix --- Not sure why `-Dverification.skip` fails while `-Dverification.warn` doesn't; won't investigate right now --- Check external links again --- Upgrade dependencies --- WIP: towards dropping Mustache --- WIP: Java doc generator --- WIP: switch over --- WIP: Cleanup --- Polish --- .github/workflows/deploy-website.yml | 14 +- documentation-support/pom.xml | 37 ++ .../documentation/BugPatternExtractor.java | 3 + .../BugPatternTestExtractor.java | 5 +- .../JekyllCollectionGenerator.java | 325 ++++++++++++++++++ .../RefasterTestInputExtractor.java | 70 ++++ .../RefasterTestOutputExtractor.java | 70 ++++ .../RefasterTemplateCollectionData.java | 27 ++ .../RefasterTemplateCollectionTestData.java | 27 ++ .../models/RefasterTemplateData.java | 23 ++ .../models/RefasterTemplateTestData.java | 17 + .../JekyllCollectionGeneratorTest.java | 13 + error-prone-contrib/pom.xml | 30 ++ .../AssertJBigDecimalRulesTestInput.java | 2 +- .../AssertJBigIntegerRulesTestInput.java | 2 +- .../AssertJBooleanRulesTestInput.java | 2 +- .../AssertJByteRulesTestInput.java | 2 +- .../AssertJCharSequenceRulesTestInput.java | 2 +- .../AssertJComparableRulesTestInput.java | 2 +- .../AssertJDoubleRulesTestInput.java | 2 +- .../AssertJEnumerableRulesTestInput.java | 2 +- .../AssertJFloatRulesTestInput.java | 2 +- .../AssertJIntegerRulesTestInput.java | 2 +- .../AssertJLongRulesTestInput.java | 2 +- .../{ => input}/AssertJMapRulesTestInput.java | 2 +- .../AssertJNumberRulesTestInput.java | 2 +- .../AssertJObjectRulesTestInput.java | 2 +- .../AssertJOptionalRulesTestInput.java | 2 +- .../AssertJPrimitiveRulesTestInput.java | 2 +- .../AssertJShortRulesTestInput.java | 2 +- .../AssertJStringRulesTestInput.java | 2 +- ...AssertJThrowingCallableRulesTestInput.java | 2 +- .../{ => input}/AssortedRulesTestInput.java | 2 +- .../{ => input}/BigDecimalRulesTestInput.java | 2 +- .../{ => input}/BugCheckerRulesTestInput.java | 2 +- .../{ => input}/ClassRulesTestInput.java | 2 +- .../{ => input}/CollectionRulesTestInput.java | 2 +- .../{ => input}/ComparatorRulesTestInput.java | 2 +- .../DoubleStreamRulesTestInput.java | 2 +- .../{ => input}/EqualityRulesTestInput.java | 2 +- .../{ => input}/FileRulesTestInput.java | 2 +- .../ImmutableListMultimapRulesTestInput.java | 2 +- .../ImmutableListRulesTestInput.java | 2 +- .../ImmutableMapRulesTestInput.java | 2 +- .../ImmutableMultisetRulesTestInput.java | 2 +- .../ImmutableSetMultimapRulesTestInput.java | 2 +- .../ImmutableSetRulesTestInput.java | 2 +- .../ImmutableSortedMapRulesTestInput.java | 2 +- ...ImmutableSortedMultisetRulesTestInput.java | 2 +- .../ImmutableSortedSetRulesTestInput.java | 2 +- .../{ => input}/IntStreamRulesTestInput.java | 2 +- .../{ => input}/JUnitRulesTestInput.java | 2 +- .../JUnitToAssertJRulesTestInput.java | 2 +- .../{ => input}/LongStreamRulesTestInput.java | 2 +- .../{ => input}/MapEntryRulesTestInput.java | 2 +- .../{ => input}/MapRulesTestInput.java | 2 +- .../{ => input}/MockitoRulesTestInput.java | 2 +- .../{ => input}/MultimapRulesTestInput.java | 2 +- .../{ => input}/NullRulesTestInput.java | 2 +- .../{ => input}/OptionalRulesTestInput.java | 2 +- .../{ => input}/PatternRulesTestInput.java | 2 +- .../PreconditionsRulesTestInput.java | 2 +- .../{ => input}/PrimitiveRulesTestInput.java | 2 +- .../{ => input}/ReactorRulesTestInput.java | 2 +- .../RxJava2AdapterRulesTestInput.java | 2 +- .../{ => input}/StreamRulesTestInput.java | 2 +- .../{ => input}/StringRulesTestInput.java | 2 +- .../SuggestedFixRulesTestInput.java | 2 +- .../TestNGToAssertJRulesTestInput.java | 2 +- .../{ => input}/TimeRulesTestInput.java | 2 +- .../{ => input}/WebClientRulesTestInput.java | 2 +- .../AssertJBigDecimalRulesTestOutput.java | 2 +- .../AssertJBigIntegerRulesTestOutput.java | 2 +- .../AssertJBooleanRulesTestOutput.java | 2 +- .../AssertJByteRulesTestOutput.java | 2 +- .../AssertJCharSequenceRulesTestOutput.java | 2 +- .../AssertJComparableRulesTestOutput.java | 2 +- .../AssertJDoubleRulesTestOutput.java | 2 +- .../AssertJEnumerableRulesTestOutput.java | 2 +- .../AssertJFloatRulesTestOutput.java | 2 +- .../AssertJIntegerRulesTestOutput.java | 2 +- .../AssertJLongRulesTestOutput.java | 2 +- .../AssertJMapRulesTestOutput.java | 2 +- .../AssertJNumberRulesTestOutput.java | 2 +- .../AssertJObjectRulesTestOutput.java | 2 +- .../AssertJOptionalRulesTestOutput.java | 2 +- .../AssertJPrimitiveRulesTestOutput.java | 2 +- .../AssertJShortRulesTestOutput.java | 2 +- .../AssertJStringRulesTestOutput.java | 2 +- ...ssertJThrowingCallableRulesTestOutput.java | 2 +- .../{ => output}/AssortedRulesTestOutput.java | 2 +- .../BigDecimalRulesTestOutput.java | 2 +- .../BugCheckerRulesTestOutput.java | 2 +- .../{ => output}/ClassRulesTestOutput.java | 2 +- .../CollectionRulesTestOutput.java | 2 +- .../ComparatorRulesTestOutput.java | 2 +- .../DoubleStreamRulesTestOutput.java | 2 +- .../{ => output}/EqualityRulesTestOutput.java | 2 +- .../{ => output}/FileRulesTestOutput.java | 2 +- .../ImmutableListMultimapRulesTestOutput.java | 2 +- .../ImmutableListRulesTestOutput.java | 2 +- .../ImmutableMapRulesTestOutput.java | 2 +- .../ImmutableMultisetRulesTestOutput.java | 2 +- .../ImmutableSetMultimapRulesTestOutput.java | 2 +- .../ImmutableSetRulesTestOutput.java | 2 +- .../ImmutableSortedMapRulesTestOutput.java | 2 +- ...mmutableSortedMultisetRulesTestOutput.java | 2 +- .../ImmutableSortedSetRulesTestOutput.java | 2 +- .../IntStreamRulesTestOutput.java | 2 +- .../{ => output}/JUnitRulesTestOutput.java | 2 +- .../JUnitToAssertJRulesTestOutput.java | 2 +- .../LongStreamRulesTestOutput.java | 2 +- .../{ => output}/MapEntryRulesTestOutput.java | 2 +- .../{ => output}/MapRulesTestOutput.java | 2 +- .../{ => output}/MockitoRulesTestOutput.java | 2 +- .../{ => output}/MultimapRulesTestOutput.java | 2 +- .../{ => output}/NullRulesTestOutput.java | 2 +- .../{ => output}/OptionalRulesTestOutput.java | 2 +- .../{ => output}/PatternRulesTestOutput.java | 2 +- .../PreconditionsRulesTestOutput.java | 2 +- .../PrimitiveRulesTestOutput.java | 2 +- .../{ => output}/ReactorRulesTestOutput.java | 2 +- .../RxJava2AdapterRulesTestOutput.java | 2 +- .../{ => output}/StreamRulesTestOutput.java | 2 +- .../{ => output}/StringRulesTestOutput.java | 2 +- .../SuggestedFixRulesTestOutput.java | 2 +- .../TestNGToAssertJRulesTestOutput.java | 2 +- .../{ => output}/TimeRulesTestOutput.java | 2 +- .../WebClientRulesTestOutput.java | 2 +- generate-docs.sh | 27 -- pom.xml | 10 + .../refaster/test/RefasterRuleCollection.java | 22 +- .../MatchInWrongMethodRulesTestInput.java | 2 +- .../MethodWithoutPrefixRulesTestInput.java | 2 +- .../MisnamedTestClassRulesTestInput.java | 2 +- ...MissingTestAndWrongTestRulesTestInput.java | 2 +- .../PartialTestMatchRulesTestInput.java | 2 +- .../RuleWithoutTestRulesTestInput.java | 2 +- .../test/{ => input}/ValidRulesTestInput.java | 2 +- .../MatchInWrongMethodRulesTestOutput.java | 2 +- .../MethodWithoutPrefixRulesTestOutput.java | 2 +- .../MisnamedTestClassRulesTestOutput.java | 2 +- ...issingTestAndWrongTestRulesTestOutput.java | 2 +- .../PartialTestMatchRulesTestOutput.java | 2 +- .../RuleWithoutTestRulesTestOutput.java | 2 +- .../{ => output}/ValidRulesTestOutput.java | 2 +- website/.gitignore | 7 +- website/Gemfile | 17 +- website/Gemfile.lock | 133 +++++++ website/README.md | 24 +- website/_config.yml | 49 ++- website/_data/severities.yml | 6 + website/_layouts/bugpattern.md | 94 +++++ website/_layouts/refasterrule.md | 78 +++++ website/_sass/color_schemes/_variables.scss | 2 +- website/bugpatterns.md | 8 - website/refasterrules.md | 8 - 157 files changed, 1199 insertions(+), 207 deletions(-) create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/JekyllCollectionGenerator.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestInputExtractor.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestOutputExtractor.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionData.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionTestData.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateData.java create mode 100644 documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateTestData.java create mode 100644 documentation-support/src/test/java/tech/picnic/errorprone/documentation/JekyllCollectionGeneratorTest.java rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJBigDecimalRulesTestInput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJBigIntegerRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJBooleanRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJByteRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJCharSequenceRulesTestInput.java (93%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJComparableRulesTestInput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJDoubleRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJEnumerableRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJFloatRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJIntegerRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJLongRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJMapRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJNumberRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJObjectRulesTestInput.java (94%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJOptionalRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJPrimitiveRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJShortRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJStringRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssertJThrowingCallableRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/AssortedRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/BigDecimalRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/BugCheckerRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ClassRulesTestInput.java (94%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/CollectionRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ComparatorRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/DoubleStreamRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/EqualityRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/FileRulesTestInput.java (91%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableListMultimapRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableListRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableMapRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableMultisetRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableSetMultimapRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableSetRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableSortedMapRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableSortedMultisetRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ImmutableSortedSetRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/IntStreamRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/JUnitRulesTestInput.java (89%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/JUnitToAssertJRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/LongStreamRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/MapEntryRulesTestInput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/MapRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/MockitoRulesTestInput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/MultimapRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/NullRulesTestInput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/OptionalRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/PatternRulesTestInput.java (92%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/PreconditionsRulesTestInput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/PrimitiveRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/ReactorRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/RxJava2AdapterRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/StreamRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/StringRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/SuggestedFixRulesTestInput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/TestNGToAssertJRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/TimeRulesTestInput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => input}/WebClientRulesTestInput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJBigDecimalRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJBigIntegerRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJBooleanRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJByteRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJCharSequenceRulesTestOutput.java (93%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJComparableRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJDoubleRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJEnumerableRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJFloatRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJIntegerRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJLongRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJMapRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJNumberRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJObjectRulesTestOutput.java (93%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJOptionalRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJPrimitiveRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJShortRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJStringRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssertJThrowingCallableRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/AssortedRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/BigDecimalRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/BugCheckerRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ClassRulesTestOutput.java (94%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/CollectionRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ComparatorRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/DoubleStreamRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/EqualityRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/FileRulesTestOutput.java (90%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableListMultimapRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableListRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableMapRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableMultisetRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableSetMultimapRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableSetRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableSortedMapRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableSortedMultisetRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ImmutableSortedSetRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/IntStreamRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/JUnitRulesTestOutput.java (90%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/JUnitToAssertJRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/LongStreamRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/MapEntryRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/MapRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/MockitoRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/MultimapRulesTestOutput.java (97%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/NullRulesTestOutput.java (95%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/OptionalRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/PatternRulesTestOutput.java (92%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/PreconditionsRulesTestOutput.java (96%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/PrimitiveRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/ReactorRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/RxJava2AdapterRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/StreamRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/StringRulesTestOutput.java (98%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/SuggestedFixRulesTestOutput.java (94%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/TestNGToAssertJRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/TimeRulesTestOutput.java (99%) rename error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/{ => output}/WebClientRulesTestOutput.java (97%) delete mode 100755 generate-docs.sh rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/MatchInWrongMethodRulesTestInput.java (83%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/MethodWithoutPrefixRulesTestInput.java (89%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/MisnamedTestClassRulesTestInput.java (83%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/MissingTestAndWrongTestRulesTestInput.java (84%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/PartialTestMatchRulesTestInput.java (84%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/RuleWithoutTestRulesTestInput.java (81%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => input}/ValidRulesTestInput.java (94%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/MatchInWrongMethodRulesTestOutput.java (92%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/MethodWithoutPrefixRulesTestOutput.java (91%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/MisnamedTestClassRulesTestOutput.java (87%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/MissingTestAndWrongTestRulesTestOutput.java (94%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/PartialTestMatchRulesTestOutput.java (89%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/RuleWithoutTestRulesTestOutput.java (87%) rename refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/{ => output}/ValidRulesTestOutput.java (93%) create mode 100644 website/Gemfile.lock create mode 100644 website/_data/severities.yml create mode 100644 website/_layouts/bugpattern.md create mode 100644 website/_layouts/refasterrule.md delete mode 100644 website/bugpatterns.md delete mode 100644 website/refasterrules.md diff --git a/.github/workflows/deploy-website.yml b/.github/workflows/deploy-website.yml index cb729d30..b5f82aed 100644 --- a/.github/workflows/deploy-website.yml +++ b/.github/workflows/deploy-website.yml @@ -48,16 +48,22 @@ jobs: bundler-cache: true - name: Configure Github Pages uses: actions/configure-pages@1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d # v4.0.0 + - name: Set up JDK + uses: actions/setup-java@387ac29b308b003ca37ba93a6cab5eb57c8f5f93 # v4.0.0 + with: + java-version: 17.0.8 + distribution: temurin + cache: maven + - name: Compile project and extract data + run: mvn -T1C clean install -DskipTests -Dverification.skip -Pdocgen - name: Generate documentation - run: ./generate-docs.sh + run: mvn exec:java@generate-docs -pl documentation-support - name: Build website with Jekyll working-directory: ./website run: bundle exec jekyll build - name: Validate HTML output working-directory: ./website - # XXX: Drop `--disable_external true` once we fully adopted the - # "Refaster rules" terminology on our website and in the code. - run: bundle exec htmlproofer --disable_external true --check-external-hash false ./_site + run: bundle exec htmlproofer --no-check-external-hash ./_site - name: Upload website as artifact uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1 with: diff --git a/documentation-support/pom.xml b/documentation-support/pom.xml index 373b2ce9..678a0128 100644 --- a/documentation-support/pom.xml +++ b/documentation-support/pom.xml @@ -37,10 +37,18 @@ com.fasterxml.jackson.core jackson-annotations + + com.fasterxml.jackson.core + jackson-core + com.fasterxml.jackson.core jackson-databind + + com.fasterxml.jackson.dataformat + jackson-dataformat-yaml + com.fasterxml.jackson.datatype jackson-datatype-guava @@ -67,6 +75,10 @@ com.google.guava guava + + io.github.java-diff-utils + java-diff-utils + org.assertj assertj-core @@ -95,4 +107,29 @@ test + + + + + + org.codehaus.mojo + exec-maven-plugin + + + generate-docs + + java + + + tech.picnic.errorprone.documentation.JekyllCollectionGenerator + + ${maven.multiModuleProjectDirectory} + + + + + + + + diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/BugPatternExtractor.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/BugPatternExtractor.java index 15e9dad5..d97e2ebe 100644 --- a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/BugPatternExtractor.java +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/BugPatternExtractor.java @@ -93,6 +93,9 @@ public final class BugPatternExtractor implements Extractor { "com.google.errorprone.CompilationTestHelper", "com.google.errorprone.BugCheckerRefactoringTestHelper") .named("newInstance") - .withParameters(Class.class.getCanonicalName(), Class.class.getCanonicalName()); + .withParameters("java.lang.Class", "java.lang.Class"); private static final Matcher IDENTIFICATION_SOURCE_LINES = instanceMethod() .onDescendantOf("com.google.errorprone.CompilationTestHelper") @@ -207,6 +207,9 @@ public final class BugPatternTestExtractor implements Extractor { } } + // XXX: Here and below: Test (serialization round trips. And given that the only "production" + // reader of the serialized data is also defined in this package, perhaps we don't need to + // validate the serialized format. @AutoValue @JsonDeserialize(as = AutoValue_BugPatternTestExtractor_TestCases.class) abstract static class TestCases { diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/JekyllCollectionGenerator.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/JekyllCollectionGenerator.java new file mode 100644 index 00000000..72025e82 --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/JekyllCollectionGenerator.java @@ -0,0 +1,325 @@ +package tech.picnic.errorprone.documentation; + +import static com.google.common.collect.ImmutableList.toImmutableList; +import static com.google.common.collect.ImmutableListMultimap.flatteningToImmutableListMultimap; +import static com.google.common.collect.ImmutableMap.toImmutableMap; +import static com.google.common.collect.ImmutableTable.toImmutableTable; +import static com.google.errorprone.BugPattern.SeverityLevel.SUGGESTION; +import static java.util.Objects.requireNonNull; +import static java.util.stream.Collectors.joining; + +import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.dataformat.yaml.YAMLGenerator; +import com.fasterxml.jackson.dataformat.yaml.YAMLMapper; +import com.fasterxml.jackson.datatype.guava.GuavaModule; +import com.fasterxml.jackson.module.paramnames.ParameterNamesModule; +import com.github.difflib.DiffUtils; +import com.github.difflib.UnifiedDiffUtils; +import com.github.difflib.patch.Patch; +import com.google.auto.value.AutoValue; +import com.google.common.base.Splitter; +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableListMultimap; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableTable; +import com.google.common.collect.Sets; +import com.google.errorprone.BugPattern.SeverityLevel; +import java.io.BufferedWriter; +import java.io.IOException; +import java.nio.file.FileSystems; +import java.nio.file.FileVisitResult; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.PathMatcher; +import java.nio.file.Paths; +import java.nio.file.SimpleFileVisitor; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.ArrayList; +import java.util.List; +import org.jspecify.annotations.Nullable; +import tech.picnic.errorprone.documentation.BugPatternExtractor.BugPatternDocumentation; +import tech.picnic.errorprone.documentation.BugPatternTestExtractor.IdentificationTestEntry; +import tech.picnic.errorprone.documentation.BugPatternTestExtractor.ReplacementTestEntry; +import tech.picnic.errorprone.documentation.BugPatternTestExtractor.TestCase; +import tech.picnic.errorprone.documentation.BugPatternTestExtractor.TestCases; +import tech.picnic.errorprone.documentation.BugPatternTestExtractor.TestEntry; +import tech.picnic.errorprone.documentation.models.RefasterTemplateCollectionTestData; +import tech.picnic.errorprone.documentation.models.RefasterTemplateTestData; + +// XXX: Rename this class. Then also update the reference in `website/.gitignore`. +public final class JekyllCollectionGenerator { + // XXX: Dedup with DocumentationGeneratorTaskListener. + private static final ObjectMapper OBJECT_MAPPER = + new ObjectMapper() + .setVisibility(PropertyAccessor.FIELD, Visibility.ANY) + .registerModules(new GuavaModule(), new ParameterNamesModule()); + // XXX: Find a bette name. Also, externalize this. + private static final PathMatcher PATH_MATCHER = + FileSystems.getDefault().getPathMatcher("glob:**/target/docs/*.json"); + + // XXX: Review class setup. + private JekyllCollectionGenerator() {} + + public static void main(String[] args) throws IOException { + // XXX: Add validation. + Path root = Paths.get(args[0]).toAbsolutePath(); + + // Find all JSON files matching one of the expected file formats. + // Deserialized and collect accordingly. + // Construct the relevant Jekyll collection files. + // Output them to the website's source directory. + + DataCollector dataCollector = new DataCollector(); + + Files.walkFileTree(root, dataCollector); + dataCollector.foo(root); + + try (BufferedWriter writer = + Files.newBufferedWriter(root.resolve("website").resolve("index.md"))) { + writer.write("---"); + writer.newLine(); + writer.write("layout: default"); + writer.newLine(); + writer.write("title: Home"); + writer.newLine(); + writer.write("---"); + writer.newLine(); + writer.write(Files.readString(root.resolve("README.md")).replace("=\"website/", "=\"")); + } + } + + // XXX: Name. + private static final class DataCollector extends SimpleFileVisitor { + // XXX: Rename the data types? + private final List bugPatterns = new ArrayList<>(); + private final List bugPatternTests = new ArrayList<>(); + private final List refasterTemplateCollectionTests = + new ArrayList<>(); + + @Override + public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { + if (!PATH_MATCHER.matches(file)) { + return FileVisitResult.CONTINUE; + } + + // XXX: If we use a consistent ID separator, then this can become a switch statement. Now we + // depend on evaluation order. + // XXX: Alternatively, use polymorphism and let Jackson figure it out. + String fileName = file.getFileName().toString(); + if (fileName.startsWith("bugpattern-test")) { + bugPatternTests.add(OBJECT_MAPPER.readValue(file.toFile(), TestCases.class)); + } else if (fileName.startsWith("bugpattern")) { + bugPatterns.add(OBJECT_MAPPER.readValue(file.toFile(), BugPatternDocumentation.class)); + } else if (fileName.startsWith("refaster-test")) { + refasterTemplateCollectionTests.add( + OBJECT_MAPPER.readValue(file.toFile(), RefasterTemplateCollectionTestData.class)); + } else { + // XXX: Handle differently? + throw new IllegalStateException("Unexpected file: " + fileName); + } + + return FileVisitResult.CONTINUE; + } + + void foo(Path root) throws IOException { + ImmutableList checks = getJekyllBugPatternDescriptions(); + ImmutableList rules = + getJekyllRefasterRuleCollectionDescription(); + + // XXX: Move/extract/rename. + ObjectMapper mapper = + YAMLMapper.builder() + .visibility(PropertyAccessor.FIELD, Visibility.ANY) + .disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET) + .enable(YAMLGenerator.Feature.MINIMIZE_QUOTES) + .enable(YAMLGenerator.Feature.USE_PLATFORM_LINE_BREAKS) + .build(); + + for (JekyllBugPatternDescription check : checks) { + Path directory = root.resolve("website").resolve("_bugpatterns"); + Files.createDirectories(directory); + try (BufferedWriter writer = + Files.newBufferedWriter(directory.resolve(check.name() + ".md"))) { + mapper.writeValue(writer, check); + writer.write("---"); + writer.newLine(); + } + } + + // XXX: Dedup this logic and the code above. + for (JekyllRefasterRuleCollectionDescription rule : rules) { + Path directory = root.resolve("website").resolve("_refasterrules"); + Files.createDirectories(directory); + try (BufferedWriter writer = + Files.newBufferedWriter(directory.resolve(rule.name() + ".md"))) { + mapper.writeValue(writer, rule); + writer.write("---"); + writer.newLine(); + } + } + } + + private ImmutableList getJekyllBugPatternDescriptions() { + ImmutableListMultimap bugPatternTestCases = + bugPatternTests.stream() + .flatMap(testCases -> testCases.testCases().stream()) + .collect( + flatteningToImmutableListMultimap( + TestCase::classUnderTest, t -> t.entries().stream())); + + return bugPatterns.stream() + .map( + b -> + new AutoValue_JekyllCollectionGenerator_JekyllBugPatternDescription( + b.name(), + b.name(), + b.summary(), + b.severityLevel(), + b.tags(), + // XXX: Derive `Path` from filesytem. + Path.of(b.source()).toString(), + bugPatternTestCases.get(b.fullyQualifiedName()).stream() + .filter(t -> t.type() == TestEntry.TestType.IDENTIFICATION) + .map(t -> ((IdentificationTestEntry) t).code()) + .collect(toImmutableList()), + bugPatternTestCases.get(b.fullyQualifiedName()).stream() + .filter(t -> t.type() == TestEntry.TestType.REPLACEMENT) + .map(t -> generateDiff((ReplacementTestEntry) t)) + .collect(toImmutableList()))) + .collect(toImmutableList()); + } + + private ImmutableList + getJekyllRefasterRuleCollectionDescription() { + ImmutableTable> refasterTests = + refasterTemplateCollectionTests.stream() + .collect( + toImmutableTable( + RefasterTemplateCollectionTestData::templateCollection, + RefasterTemplateCollectionTestData::isInput, + RefasterTemplateCollectionTestData::templateTests)); + + return refasterTests.rowMap().entrySet().stream() + .map( + c -> + new AutoValue_JekyllCollectionGenerator_JekyllRefasterRuleCollectionDescription( + c.getKey(), + c.getKey(), + // XXX: Derive severity from input. + SUGGESTION, + // XXX: Derive tags from input (or drop this feature). + ImmutableList.of("Simplification"), + // XXX: Derive source location from input. + String.format( + "error-prone-contrib/src/main/java/tech/picnic/errorprone/refasterrules/%s.java", + c.getKey()), + getRules(c.getValue().get(true), c.getValue().get(false)))) + .collect(toImmutableList()); + } + + private static ImmutableList getRules( + @Nullable List inputTests, + @Nullable List outputTests) { + ImmutableMap inputs = indexRefasterTestData(inputTests); + ImmutableMap outputs = indexRefasterTestData(outputTests); + + return Sets.intersection(inputs.keySet(), outputs.keySet()).stream() + .map( + name -> + new AutoValue_JekyllCollectionGenerator_JekyllRefasterRuleCollectionDescription_Rule( + name, + // XXX: Derive severity from input. + SUGGESTION, + // XXX: Derive tags from input (or drop this feature). + ImmutableList.of("Simplification"), + generateDiff( + requireNonNull(inputs.get(name), "Input"), + requireNonNull(outputs.get(name), "Output")))) + .collect(toImmutableList()); + } + + private static ImmutableMap indexRefasterTestData( + @Nullable List data) { + return data == null + ? ImmutableMap.of() + : data.stream() + .collect( + toImmutableMap( + RefasterTemplateTestData::templateName, + RefasterTemplateTestData::templateTestContent)); + } + + private static String generateDiff(ReplacementTestEntry testEntry) { + return generateDiff(testEntry.input(), testEntry.output()); + } + + private static String generateDiff(String before, String after) { + // XXX: Extract splitter. + List originalLines = Splitter.on(System.lineSeparator()).splitToList(before); + List replacementLines = Splitter.on(System.lineSeparator()).splitToList(after); + + Patch diff = DiffUtils.diff(originalLines, replacementLines); + + return UnifiedDiffUtils.generateUnifiedDiff( + "", "", originalLines, diff, Integer.MAX_VALUE / 2) + .stream() + .skip(3) + .collect(joining(System.lineSeparator())); + } + } + + @AutoValue + abstract static class JekyllBugPatternDescription { + // XXX: Make this a derived property? + abstract String title(); + + abstract String name(); + + abstract String summary(); + + abstract SeverityLevel severity(); + + abstract ImmutableList tags(); + + // XXX: The documentation could link to the original test code. Perhaps even with the correct + // line numbers. + abstract String source(); + + // XXX: The `identification` and `replacement` fields have odd names. + abstract ImmutableList identification(); + + abstract ImmutableList replacement(); + } + + @AutoValue + abstract static class JekyllRefasterRuleCollectionDescription { + // XXX: Make this a derived property? + abstract String title(); + + abstract String name(); + + abstract SeverityLevel severity(); + + abstract ImmutableList tags(); + + // XXX: The documentation could link to the original test code. Perhaps even with the correct + // line numbers. If we do this, we should do the same for individual rules. + abstract String source(); + + abstract ImmutableList rules(); + + @AutoValue + abstract static class Rule { + abstract String name(); + + abstract SeverityLevel severity(); + + abstract ImmutableList tags(); + + abstract String diff(); + } + } +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestInputExtractor.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestInputExtractor.java new file mode 100644 index 00000000..6970ede8 --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestInputExtractor.java @@ -0,0 +1,70 @@ +package tech.picnic.errorprone.documentation; + +import static com.google.common.collect.ImmutableList.toImmutableList; + +import com.google.auto.service.AutoService; +import com.google.common.collect.ImmutableList; +import com.google.errorprone.VisitorState; +import com.google.errorprone.annotations.Immutable; +import com.sun.source.tree.ClassTree; +import com.sun.source.tree.MethodTree; +import java.util.Optional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import tech.picnic.errorprone.documentation.models.RefasterTemplateCollectionTestData; +import tech.picnic.errorprone.documentation.models.RefasterTemplateTestData; + +@Immutable +@AutoService(Extractor.class) +@SuppressWarnings("rawtypes" /* See https://github.com/google/auto/issues/870. */) +public final class RefasterTestInputExtractor + implements Extractor { + private static final Pattern TEST_CLASS_NAME_PATTERN = Pattern.compile("(.*)Test"); + + @Override + public String identifier() { + return "refaster-test-input"; + } + + @Override + public Optional tryExtract( + ClassTree tree, VisitorState state) { + // XXX: The `String.valueOf` call is a hack to avoid an NPE in the absence of an explicit + // package declaration. + if (!String.valueOf(state.getPath().getCompilationUnit().getPackageName()).contains("input")) { + return Optional.empty(); + } + + Optional className = getClassUnderTest(tree); + if (className.isEmpty()) { + return Optional.empty(); + } + + ImmutableList templateTests = + tree.getMembers().stream() + .filter(MethodTree.class::isInstance) + .map(MethodTree.class::cast) + .filter(m -> m.getName().toString().startsWith("test")) + .map( + m -> + RefasterTemplateTestData.create( + m.getName().toString().replace("test", ""), getSourceCode(m, state))) + .collect(toImmutableList()); + + return Optional.of( + RefasterTemplateCollectionTestData.create( + className.orElseThrow(), /* isInput= */ true, templateTests)); + } + + private static Optional getClassUnderTest(ClassTree tree) { + return Optional.of(TEST_CLASS_NAME_PATTERN.matcher(tree.getSimpleName().toString())) + .filter(Matcher::matches) + .map(m -> m.group(1)); + } + + // XXX: Duplicated from `SourceCode`. Can we do better? + private static String getSourceCode(MethodTree tree, VisitorState state) { + String src = state.getSourceForNode(tree); + return src != null ? src : tree.toString(); + } +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestOutputExtractor.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestOutputExtractor.java new file mode 100644 index 00000000..e881b5bf --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/RefasterTestOutputExtractor.java @@ -0,0 +1,70 @@ +package tech.picnic.errorprone.documentation; + +import static com.google.common.collect.ImmutableList.toImmutableList; + +import com.google.auto.service.AutoService; +import com.google.common.collect.ImmutableList; +import com.google.errorprone.VisitorState; +import com.google.errorprone.annotations.Immutable; +import com.sun.source.tree.ClassTree; +import com.sun.source.tree.MethodTree; +import java.util.Optional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import tech.picnic.errorprone.documentation.models.RefasterTemplateCollectionTestData; +import tech.picnic.errorprone.documentation.models.RefasterTemplateTestData; + +@Immutable +@AutoService(Extractor.class) +@SuppressWarnings("rawtypes" /* See https://github.com/google/auto/issues/870. */) +public final class RefasterTestOutputExtractor + implements Extractor { + private static final Pattern TEST_CLASS_NAME_PATTERN = Pattern.compile("(.*)Test"); + + @Override + public String identifier() { + return "refaster-test-output"; + } + + @Override + public Optional tryExtract( + ClassTree tree, VisitorState state) { + // XXX: The `String.valueOf` call is a hack to avoid an NPE in the absence of an explicit + // package declaration. + if (!String.valueOf(state.getPath().getCompilationUnit().getPackageName()).contains("output")) { + return Optional.empty(); + } + + Optional className = getClassUnderTest(tree); + if (className.isEmpty()) { + return Optional.empty(); + } + + ImmutableList templateTests = + tree.getMembers().stream() + .filter(MethodTree.class::isInstance) + .map(MethodTree.class::cast) + .filter(m -> m.getName().toString().startsWith("test")) + .map( + m -> + RefasterTemplateTestData.create( + m.getName().toString().replace("test", ""), getSourceCode(m, state))) + .collect(toImmutableList()); + + return Optional.of( + RefasterTemplateCollectionTestData.create( + className.orElseThrow(), /* isInput= */ false, templateTests)); + } + + private static Optional getClassUnderTest(ClassTree tree) { + return Optional.of(TEST_CLASS_NAME_PATTERN.matcher(tree.getSimpleName().toString())) + .filter(Matcher::matches) + .map(m -> m.group(1)); + } + + // XXX: Duplicated from `SourceCode`. Can we do better? + private static String getSourceCode(MethodTree tree, VisitorState state) { + String src = state.getSourceForNode(tree); + return src != null ? src : tree.toString(); + } +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionData.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionData.java new file mode 100644 index 00000000..013c227f --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionData.java @@ -0,0 +1,27 @@ +package tech.picnic.errorprone.documentation.models; + +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.google.auto.value.AutoValue; +import com.google.common.collect.ImmutableList; + +/** + * Object containing all data related to a Refaster template collection. This is solely used for + * serialization. + */ +// XXX: This class is not yet used. +@AutoValue +@JsonDeserialize(as = AutoValue_RefasterTemplateCollectionData.class) +public abstract class RefasterTemplateCollectionData { + static RefasterTemplateCollectionData create( + String name, String description, String link, ImmutableList templates) { + return new AutoValue_RefasterTemplateCollectionData(name, description, link, templates); + } + + abstract String name(); + + abstract String description(); + + abstract String link(); + + abstract ImmutableList templates(); +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionTestData.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionTestData.java new file mode 100644 index 00000000..c68124c0 --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateCollectionTestData.java @@ -0,0 +1,27 @@ +package tech.picnic.errorprone.documentation.models; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.google.auto.value.AutoValue; +import com.google.common.collect.ImmutableList; + +// XXX: Make properties package-private if type is moved to shared package. +@AutoValue +@JsonDeserialize(as = AutoValue_RefasterTemplateCollectionTestData.class) +public abstract class RefasterTemplateCollectionTestData { + public static RefasterTemplateCollectionTestData create( + String templateCollection, + boolean isInput, + ImmutableList templatesTests) { + return new AutoValue_RefasterTemplateCollectionTestData( + templateCollection, isInput, templatesTests); + } + + public abstract String templateCollection(); + + // XXX: This annotation prevents serialization of fields `isInput` *and* `input`. Review. + @JsonProperty("isInput") + public abstract boolean isInput(); + + public abstract ImmutableList templateTests(); +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateData.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateData.java new file mode 100644 index 00000000..38003731 --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateData.java @@ -0,0 +1,23 @@ +package tech.picnic.errorprone.documentation.models; + +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.google.auto.value.AutoValue; +import com.google.errorprone.BugPattern.SeverityLevel; + +// XXX: This class is not yet used. +@AutoValue +@JsonDeserialize(as = AutoValue_RefasterTemplateData.class) +public abstract class RefasterTemplateData { + static RefasterTemplateData create( + String name, String description, String link, SeverityLevel severityLevel) { + return new AutoValue_RefasterTemplateData(name, description, link, severityLevel); + } + + abstract String name(); + + abstract String description(); + + abstract String link(); + + abstract SeverityLevel severityLevel(); +} diff --git a/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateTestData.java b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateTestData.java new file mode 100644 index 00000000..c7f99b0f --- /dev/null +++ b/documentation-support/src/main/java/tech/picnic/errorprone/documentation/models/RefasterTemplateTestData.java @@ -0,0 +1,17 @@ +package tech.picnic.errorprone.documentation.models; + +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.google.auto.value.AutoValue; + +// XXX: Make properties package-private if type is moved to shared package. +@AutoValue +@JsonDeserialize(as = AutoValue_RefasterTemplateTestData.class) +public abstract class RefasterTemplateTestData { + public static RefasterTemplateTestData create(String templateName, String templateTestContent) { + return new AutoValue_RefasterTemplateTestData(templateName, templateTestContent); + } + + public abstract String templateName(); + + public abstract String templateTestContent(); +} diff --git a/documentation-support/src/test/java/tech/picnic/errorprone/documentation/JekyllCollectionGeneratorTest.java b/documentation-support/src/test/java/tech/picnic/errorprone/documentation/JekyllCollectionGeneratorTest.java new file mode 100644 index 00000000..9c9738fc --- /dev/null +++ b/documentation-support/src/test/java/tech/picnic/errorprone/documentation/JekyllCollectionGeneratorTest.java @@ -0,0 +1,13 @@ +package tech.picnic.errorprone.documentation; + +import java.io.IOException; +import org.junit.jupiter.api.Test; + +final class JekyllCollectionGeneratorTest { + + @Test + void foo() throws IOException { + JekyllCollectionGenerator.main( + new String[] {"/home/sschroevers/workspace/picnic/error-prone-support"}); + } +} diff --git a/error-prone-contrib/pom.xml b/error-prone-contrib/pom.xml index 122e0c8a..509a9b81 100644 --- a/error-prone-contrib/pom.xml +++ b/error-prone-contrib/pom.xml @@ -286,4 +286,34 @@ + + + + + docgen + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.3.0 + + + add-test-source + + add-test-source + + generate-test-sources + + + src/test/resources + + + + + + + + + diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigDecimalRulesTestInput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigDecimalRulesTestInput.java index 3ed92b35..e44d51a3 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigDecimalRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigIntegerRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigIntegerRulesTestInput.java index ef19fddc..42995cd8 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBigIntegerRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBooleanRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBooleanRulesTestInput.java index 4993f7c7..4479f41d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJBooleanRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJByteRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJByteRulesTestInput.java index d3b98d58..415129b2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJByteRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJCharSequenceRulesTestInput.java similarity index 93% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJCharSequenceRulesTestInput.java index e45d056c..882f42d7 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJCharSequenceRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJComparableRulesTestInput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJComparableRulesTestInput.java index 6863c8b8..69a130fb 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJComparableRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJDoubleRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJDoubleRulesTestInput.java index 5c023a27..9eff4d3d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJDoubleRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJEnumerableRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJEnumerableRulesTestInput.java index bab44b4e..ca1cc52b 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJEnumerableRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJFloatRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJFloatRulesTestInput.java index 9a2a2ef1..8c758252 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJFloatRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJIntegerRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJIntegerRulesTestInput.java index 5d5e7727..a2453eac 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJIntegerRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJLongRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJLongRulesTestInput.java index c6199487..a65d2776 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJLongRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJMapRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJMapRulesTestInput.java index ac54a5c5..90192806 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJMapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJNumberRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJNumberRulesTestInput.java index 7b3d027d..f15be74e 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJNumberRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJObjectRulesTestInput.java similarity index 94% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJObjectRulesTestInput.java index ce373065..9416a92a 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJObjectRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJOptionalRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJOptionalRulesTestInput.java index e337bfb1..f353c257 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJOptionalRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJPrimitiveRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJPrimitiveRulesTestInput.java index d4740aae..2d156b96 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJPrimitiveRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJShortRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJShortRulesTestInput.java index 3398b5ae..9dd17367 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJShortRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJStringRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJStringRulesTestInput.java index 8c0d9278..3fa705fd 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJStringRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJThrowingCallableRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJThrowingCallableRulesTestInput.java index e34dc556..7bd50796 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssertJThrowingCallableRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.assertj.core.api.Assertions.assertThatExceptionOfType; import static org.assertj.core.api.Assertions.assertThatIOException; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssortedRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssortedRulesTestInput.java index 1f785293..b5dd9767 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/AssortedRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSet.toImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BigDecimalRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BigDecimalRulesTestInput.java index 79dcc5ae..9410d971 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BigDecimalRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import java.math.BigDecimal; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BugCheckerRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BugCheckerRulesTestInput.java index 91b0bf59..23f26c1d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/BugCheckerRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.errorprone.BugCheckerRefactoringTestHelper; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ClassRulesTestInput.java similarity index 94% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ClassRulesTestInput.java index 2e94c242..67826082 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ClassRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import java.io.IOException; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/CollectionRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/CollectionRulesTestInput.java index 186da035..94a816f4 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/CollectionRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ComparatorRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ComparatorRulesTestInput.java index 2d92ba5d..e0a98019 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ComparatorRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static java.util.Comparator.naturalOrder; import static java.util.Comparator.reverseOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/DoubleStreamRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/DoubleStreamRulesTestInput.java index b244a56a..5b30ec8f 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/DoubleStreamRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/EqualityRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/EqualityRulesTestInput.java index 016580a6..f8b01733 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/EqualityRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static java.util.function.Predicate.not; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/FileRulesTestInput.java similarity index 91% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/FileRulesTestInput.java index c33f3e67..d9bcc029 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/FileRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListMultimapRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListMultimapRulesTestInput.java index 27b23104..cf89c115 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListMultimapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableListMultimap.flatteningToImmutableListMultimap; import static com.google.common.collect.ImmutableListMultimap.toImmutableListMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListRulesTestInput.java index 84882105..17320a90 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableListRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableList.toImmutableList; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMapRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMapRulesTestInput.java index 2302bb4c..4a7f33f8 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableMap.toImmutableMap; import static java.util.function.Function.identity; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMultisetRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMultisetRulesTestInput.java index 96231993..30c3ddf2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableMultisetRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableMultiset.toImmutableMultiset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetMultimapRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetMultimapRulesTestInput.java index 34e43bae..a459e3bb 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetMultimapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSetMultimap.flatteningToImmutableSetMultimap; import static com.google.common.collect.ImmutableSetMultimap.toImmutableSetMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetRulesTestInput.java index 53e7c415..72f90517 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSetRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSet.toImmutableSet; import static java.util.function.Predicate.not; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMapRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMapRulesTestInput.java index 3dc40717..a17a648e 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSortedMap.toImmutableSortedMap; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMultisetRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMultisetRulesTestInput.java index 36c0b35f..050f6b5a 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedMultisetRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSortedMultiset.toImmutableSortedMultiset; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedSetRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedSetRulesTestInput.java index 418eb069..771c84fd 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ImmutableSortedSetRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableSortedSet.toImmutableSortedSet; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/IntStreamRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/IntStreamRulesTestInput.java index b95db96c..67d76ef3 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/IntStreamRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitRulesTestInput.java similarity index 89% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitRulesTestInput.java index 25ebb0d5..2fcd949a 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import org.junit.jupiter.params.provider.Arguments; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitToAssertJRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitToAssertJRulesTestInput.java index 0c398251..46eb0332 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/JUnitToAssertJRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertFalse; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/LongStreamRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/LongStreamRulesTestInput.java index c22d33f6..250b4f89 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/LongStreamRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapEntryRulesTestInput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapEntryRulesTestInput.java index d5a42d04..37a8ba55 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapEntryRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Maps; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapRulesTestInput.java index abb7eefb..a537e801 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static java.util.Objects.requireNonNullElse; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MockitoRulesTestInput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MockitoRulesTestInput.java index b06b8a92..7b3885d1 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MockitoRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MultimapRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MultimapRulesTestInput.java index e0c59ac6..7eb3e0b5 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/MultimapRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableSetMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/NullRulesTestInput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/NullRulesTestInput.java index 56254384..a9802d49 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/NullRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/OptionalRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/OptionalRulesTestInput.java index 20eb7fe2..5b9adc94 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/OptionalRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PatternRulesTestInput.java similarity index 92% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PatternRulesTestInput.java index 2b19d9ea..e94e928c 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PatternRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.base.Predicates; import com.google.common.collect.ImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PreconditionsRulesTestInput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PreconditionsRulesTestInput.java index 337c9298..c00462aa 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PreconditionsRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PrimitiveRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PrimitiveRulesTestInput.java index cc1773c8..bb72b917 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/PrimitiveRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import com.google.common.primitives.Booleans; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ReactorRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ReactorRulesTestInput.java index f2f04dc3..965a7ef9 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/ReactorRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.MoreCollectors.toOptional; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/RxJava2AdapterRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/RxJava2AdapterRulesTestInput.java index 5562a671..e77d5182 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/RxJava2AdapterRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import io.reactivex.BackpressureStrategy; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StreamRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StreamRulesTestInput.java index 01cd2456..fb5b00c0 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StreamRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.ImmutableMap.toImmutableMap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StringRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StringRulesTestInput.java index a6b2f1cb..78f5c893 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/StringRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.stream.Collectors.joining; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/SuggestedFixRulesTestInput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/SuggestedFixRulesTestInput.java index 4d6c7ccd..a6d211c8 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/SuggestedFixRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.errorprone.fixes.SuggestedFix; import com.sun.source.tree.ExpressionTree; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TestNGToAssertJRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TestNGToAssertJRulesTestInput.java index cdfa045d..1891387a 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TestNGToAssertJRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertEqualsNoOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TimeRulesTestInput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TimeRulesTestInput.java index 58bac6c5..7334cdad 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/TimeRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import com.google.common.collect.ImmutableSet; import java.time.Clock; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestInput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/WebClientRulesTestInput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestInput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/WebClientRulesTestInput.java index 2bbb7e81..98187ac0 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestInput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/input/WebClientRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.input; import static org.springframework.http.HttpMethod.GET; import static org.springframework.http.HttpMethod.HEAD; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigDecimalRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigDecimalRulesTestOutput.java index b9240671..1a6803e6 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigDecimalRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigDecimalRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigIntegerRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigIntegerRulesTestOutput.java index dd723a51..60404c10 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBigIntegerRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBigIntegerRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBooleanRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBooleanRulesTestOutput.java index e7d11d1e..869205d2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJBooleanRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJBooleanRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJByteRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJByteRulesTestOutput.java index b9554f30..3725b84d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJByteRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJByteRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJCharSequenceRulesTestOutput.java similarity index 93% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJCharSequenceRulesTestOutput.java index 50f906a5..d177d9a6 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJCharSequenceRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJCharSequenceRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJComparableRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJComparableRulesTestOutput.java index a7378f52..c0a1c476 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJComparableRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJComparableRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJDoubleRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJDoubleRulesTestOutput.java index 2ec5c46d..132800a2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJDoubleRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJDoubleRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJEnumerableRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJEnumerableRulesTestOutput.java index 892f2f69..2d24e7e5 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJEnumerableRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJEnumerableRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJFloatRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJFloatRulesTestOutput.java index 74ef4155..5f74b425 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJFloatRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJFloatRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJIntegerRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJIntegerRulesTestOutput.java index 12d53371..d9bb523d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJIntegerRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJIntegerRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJLongRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJLongRulesTestOutput.java index 69384e2a..184d40d2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJLongRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJLongRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJMapRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJMapRulesTestOutput.java index 5630c9aa..ba4afce7 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJMapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJMapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJNumberRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJNumberRulesTestOutput.java index e141a907..15eb44da 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJNumberRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJNumberRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJObjectRulesTestOutput.java similarity index 93% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJObjectRulesTestOutput.java index 0af2474f..4276e8e9 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJObjectRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJObjectRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJOptionalRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJOptionalRulesTestOutput.java index e0ec8549..f6fd23b3 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJOptionalRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJOptionalRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJPrimitiveRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJPrimitiveRulesTestOutput.java index e556908b..7793e0a2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJPrimitiveRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJPrimitiveRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJShortRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJShortRulesTestOutput.java index ad5a1eb0..5c0a48f0 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJShortRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJShortRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.data.Offset.offset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJStringRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJStringRulesTestOutput.java index c9d019b2..cc468044 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJStringRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJStringRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.nio.charset.StandardCharsets.UTF_8; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJThrowingCallableRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJThrowingCallableRulesTestOutput.java index bb2a99ca..98d6f989 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssertJThrowingCallableRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssertJThrowingCallableRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThatExceptionOfType; import static org.assertj.core.api.Assertions.assertThatIOException; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssortedRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssortedRulesTestOutput.java index 2fd9c408..cc7c087c 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/AssortedRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/AssortedRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSet.toImmutableSet; import static com.google.common.collect.Sets.toImmutableEnumSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BigDecimalRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BigDecimalRulesTestOutput.java index ea73698f..ac71ce84 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BigDecimalRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BigDecimalRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import java.math.BigDecimal; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BugCheckerRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BugCheckerRulesTestOutput.java index 013617aa..f0013eb8 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/BugCheckerRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/BugCheckerRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.errorprone.BugCheckerRefactoringTestHelper; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ClassRulesTestOutput.java similarity index 94% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ClassRulesTestOutput.java index 39c08a50..013a4f8d 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ClassRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ClassRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import java.io.IOException; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/CollectionRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/CollectionRulesTestOutput.java index ba09e13e..ff0d12e7 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/CollectionRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/CollectionRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ComparatorRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ComparatorRulesTestOutput.java index ff205855..63c23b42 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ComparatorRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ComparatorRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.util.Comparator.naturalOrder; import static java.util.Comparator.reverseOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/DoubleStreamRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/DoubleStreamRulesTestOutput.java index 2fb16659..e5013760 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/DoubleStreamRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/DoubleStreamRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/EqualityRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/EqualityRulesTestOutput.java index 39bab876..531ab4a4 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/EqualityRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/EqualityRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.util.function.Predicate.not; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/FileRulesTestOutput.java similarity index 90% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/FileRulesTestOutput.java index 5b516e31..e7b2208f 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/FileRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/FileRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListMultimapRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListMultimapRulesTestOutput.java index ca4dbdfd..255f2aaf 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListMultimapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListMultimapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableListMultimap.flatteningToImmutableListMultimap; import static com.google.common.collect.ImmutableListMultimap.toImmutableListMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListRulesTestOutput.java index b152693d..eb8e9729 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableListRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableListRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.ImmutableSet.toImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMapRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMapRulesTestOutput.java index 3365f3fd..fdc05a63 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableMap.toImmutableMap; import static java.util.function.Function.identity; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMultisetRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMultisetRulesTestOutput.java index 76af043a..d1378e87 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableMultisetRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableMultisetRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableMultiset.toImmutableMultiset; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetMultimapRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetMultimapRulesTestOutput.java index 60ac3cd9..c593b851 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetMultimapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetMultimapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSetMultimap.flatteningToImmutableSetMultimap; import static com.google.common.collect.ImmutableSetMultimap.toImmutableSetMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetRulesTestOutput.java index 74a6c9d6..9425e0f4 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSetRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSetRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSet.toImmutableSet; import static java.util.function.Predicate.not; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMapRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMapRulesTestOutput.java index 6a37cbf3..88d3b8ab 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSortedMap.toImmutableSortedMap; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMultisetRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMultisetRulesTestOutput.java index 36fca66a..55d0c4e2 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedMultisetRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedMultisetRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSortedMultiset.toImmutableSortedMultiset; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedSetRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedSetRulesTestOutput.java index 6e29d15c..441804f3 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ImmutableSortedSetRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ImmutableSortedSetRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableSortedSet.toImmutableSortedSet; import static java.util.Comparator.naturalOrder; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/IntStreamRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/IntStreamRulesTestOutput.java index 7efb9688..742c2777 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/IntStreamRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/IntStreamRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitRulesTestOutput.java similarity index 90% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitRulesTestOutput.java index 45dba93b..f4edac88 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.junit.jupiter.params.provider.Arguments.arguments; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitToAssertJRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitToAssertJRulesTestOutput.java index 99a62a38..9f102edd 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/JUnitToAssertJRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/JUnitToAssertJRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/LongStreamRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/LongStreamRulesTestOutput.java index 99421d90..eb2b74e9 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/LongStreamRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/LongStreamRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Streams; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapEntryRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapEntryRulesTestOutput.java index c7937bb1..146cf482 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapEntryRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapEntryRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.util.Map.Entry.comparingByKey; import static java.util.Map.Entry.comparingByValue; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapRulesTestOutput.java index 2127ddd8..b2a91444 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.util.Objects.requireNonNullElse; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MockitoRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MockitoRulesTestOutput.java index bebaad0c..3f6d4a8c 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MockitoRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MockitoRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MultimapRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MultimapRulesTestOutput.java index a9ab378d..2f493960 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/MultimapRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/MultimapRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.common.collect.ImmutableSetMultimap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/NullRulesTestOutput.java similarity index 95% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/NullRulesTestOutput.java index 33384f5b..b5f7d0c7 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/NullRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/NullRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.util.Objects.requireNonNullElse; import static java.util.Objects.requireNonNullElseGet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/OptionalRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/OptionalRulesTestOutput.java index cf589e9d..b411d1ee 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/OptionalRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/OptionalRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.Streams.stream; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PatternRulesTestOutput.java similarity index 92% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PatternRulesTestOutput.java index 9e774fd4..931ea457 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PatternRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PatternRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.base.Predicates; import com.google.common.collect.ImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PreconditionsRulesTestOutput.java similarity index 96% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PreconditionsRulesTestOutput.java index 1b95c234..aad81419 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PreconditionsRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PreconditionsRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.base.Preconditions.checkArgument; import static com.google.common.base.Preconditions.checkElementIndex; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PrimitiveRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PrimitiveRulesTestOutput.java index cba9a1a9..c06b2385 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/PrimitiveRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/PrimitiveRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import com.google.common.primitives.Booleans; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ReactorRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ReactorRulesTestOutput.java index 6bfd98f9..ecc984d6 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/ReactorRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/ReactorRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.ImmutableSet.toImmutableSet; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/RxJava2AdapterRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/RxJava2AdapterRulesTestOutput.java index 6a088d14..af7bc997 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/RxJava2AdapterRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/RxJava2AdapterRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import io.reactivex.BackpressureStrategy; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StreamRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StreamRulesTestOutput.java index 0d865cba..27aeeedf 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StreamRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StreamRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.ImmutableMap.toImmutableMap; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StringRulesTestOutput.java similarity index 98% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StringRulesTestOutput.java index d5e1241a..403605af 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/StringRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/StringRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static java.nio.charset.StandardCharsets.UTF_8; import static java.util.function.Predicate.not; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/SuggestedFixRulesTestOutput.java similarity index 94% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/SuggestedFixRulesTestOutput.java index 15671e43..0a093af5 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/SuggestedFixRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/SuggestedFixRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.errorprone.fixes.SuggestedFix; import com.sun.source.tree.ExpressionTree; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TestNGToAssertJRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TestNGToAssertJRulesTestOutput.java index bd43fb87..11588584 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TestNGToAssertJRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TestNGToAssertJRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static com.google.common.collect.ImmutableList.copyOf; import static org.assertj.core.api.Assertions.assertThat; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TimeRulesTestOutput.java similarity index 99% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TimeRulesTestOutput.java index ee4f347b..4661fe62 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/TimeRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/TimeRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import com.google.common.collect.ImmutableSet; import java.time.Clock; diff --git a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestOutput.java b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/WebClientRulesTestOutput.java similarity index 97% rename from error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestOutput.java rename to error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/WebClientRulesTestOutput.java index 445d3ab5..80789a23 100644 --- a/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/WebClientRulesTestOutput.java +++ b/error-prone-contrib/src/test/resources/tech/picnic/errorprone/refasterrules/output/WebClientRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refasterrules; +package tech.picnic.errorprone.refasterrules.output; import static org.springframework.http.HttpMethod.GET; import static org.springframework.http.HttpMethod.HEAD; diff --git a/generate-docs.sh b/generate-docs.sh deleted file mode 100755 index 1caf0f3d..00000000 --- a/generate-docs.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env bash - -set -e -u -o pipefail - -REPOSITORY_ROOT="$(git rev-parse --show-toplevel)" -WEBSITE_ROOT="${REPOSITORY_ROOT}/website" - -generate_homepage() { - local homepage="${WEBSITE_ROOT}/index.md" - - echo "Generating ${homepage}..." - cat - "${REPOSITORY_ROOT}/README.md" > "${homepage}" << EOF ---- -layout: default -title: Home -nav_order: 1 ---- -EOF - - local macos_compat="" - [[ "${OSTYPE}" == "darwin"* ]] && macos_compat="yes" - sed -i ${macos_compat:+".bak"} 's/src="website\//src="/g' "${homepage}" - sed -i ${macos_compat:+".bak"} 's/srcset="website\//srcset="/g' "${homepage}" -} - -# Generate the website. -generate_homepage diff --git a/pom.xml b/pom.xml index 256770dd..dd875716 100644 --- a/pom.xml +++ b/pom.xml @@ -357,6 +357,11 @@ nullaway ${version.nullaway} + + io.github.java-diff-utils + java-diff-utils + 4.12 + io.projectreactor reactor-bom @@ -1743,6 +1748,11 @@ org.apache.maven.plugins maven-enforcer-plugin + + org.codehaus.mojo + exec-maven-plugin + 3.1.1 + org.codehaus.mojo license-maven-plugin diff --git a/refaster-test-support/src/main/java/tech/picnic/errorprone/refaster/test/RefasterRuleCollection.java b/refaster-test-support/src/main/java/tech/picnic/errorprone/refaster/test/RefasterRuleCollection.java index 7f95b39b..3342fe8b 100644 --- a/refaster-test-support/src/main/java/tech/picnic/errorprone/refaster/test/RefasterRuleCollection.java +++ b/refaster-test-support/src/main/java/tech/picnic/errorprone/refaster/test/RefasterRuleCollection.java @@ -9,6 +9,7 @@ import static com.google.errorprone.BugPattern.SeverityLevel.ERROR; import static java.util.Comparator.naturalOrder; import static tech.picnic.errorprone.refaster.runner.Refaster.INCLUDED_RULES_PATTERN_FLAG; +import com.google.common.base.VerifyException; import com.google.common.collect.ImmutableListMultimap; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableRangeMap; @@ -21,6 +22,7 @@ import com.google.errorprone.BugCheckerRefactoringTestHelper; import com.google.errorprone.BugCheckerRefactoringTestHelper.TestMode; import com.google.errorprone.BugPattern; import com.google.errorprone.ErrorProneFlags; +import com.google.errorprone.FileObjects; import com.google.errorprone.SubContext; import com.google.errorprone.VisitorState; import com.google.errorprone.bugpatterns.BugChecker; @@ -38,12 +40,14 @@ import com.sun.source.util.TreeScanner; import com.sun.tools.javac.tree.EndPosTable; import com.sun.tools.javac.tree.JCTree.JCCompilationUnit; import com.sun.tools.javac.util.Position; +import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; import java.util.regex.Pattern; import javax.inject.Inject; +import javax.tools.JavaFileObject; import org.jspecify.annotations.Nullable; import tech.picnic.errorprone.refaster.runner.CodeTransformers; import tech.picnic.errorprone.refaster.runner.Refaster; @@ -122,12 +126,26 @@ public final class RefasterRuleCollection extends BugChecker implements Compilat public static void validate(Class clazz) { String className = clazz.getSimpleName(); + JavaFileObject inputFile = + FileObjects.forResource(clazz, "input/" + className + "TestInput.java"); + JavaFileObject outputFile = + FileObjects.forResource(clazz, "output/" + className + "TestOutput.java"); + + String inputContent; + String outputContent; + try { + inputContent = inputFile.getCharContent(true).toString(); + outputContent = outputFile.getCharContent(true).toString(); + } catch (IOException e) { + throw new VerifyException(e); + } + BugCheckerRefactoringTestHelper.newInstance(RefasterRuleCollection.class, clazz) .setArgs( "--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED", "-XepOpt:" + RULE_COLLECTION_FLAG + '=' + className) - .addInput(className + "TestInput.java") - .addOutput(className + "TestOutput.java") + .addInputLines(inputFile.getName(), inputContent.replace(".input", "")) + .addOutputLines(outputFile.getName(), outputContent.replace(".output", "")) .doTest(TestMode.TEXT_MATCH); } diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MatchInWrongMethodRulesTestInput.java similarity index 83% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MatchInWrongMethodRulesTestInput.java index d2c20630..d347b574 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MatchInWrongMethodRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; /** Code to test the Refaster rules from {@link MatchInWrongMethodRules}. */ final class MatchInWrongMethodRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MethodWithoutPrefixRulesTestInput.java similarity index 89% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MethodWithoutPrefixRulesTestInput.java index fb1bf0ce..03d781e6 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MethodWithoutPrefixRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; import com.google.common.collect.ImmutableSet; diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MisnamedTestClassRulesTestInput.java similarity index 83% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MisnamedTestClassRulesTestInput.java index 6838452d..f971fe69 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MisnamedTestClassRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; /** Code to test the Refaster rules from {@link MisnamedTestClassRules}. */ final class IncorrectNameRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MissingTestAndWrongTestRulesTestInput.java similarity index 84% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MissingTestAndWrongTestRulesTestInput.java index 745aa424..00c1a018 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/MissingTestAndWrongTestRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; /** Code to test the Refaster rules from {@link MissingTestAndWrongTestRules}. */ final class MissingTestAndWrongTestRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/PartialTestMatchRulesTestInput.java similarity index 84% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/PartialTestMatchRulesTestInput.java index 8024281c..2dfcae45 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/PartialTestMatchRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; /** Code to test the Refaster rules from {@link PartialTestMatchRules}. */ final class PartialTestMatchRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/RuleWithoutTestRulesTestInput.java similarity index 81% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/RuleWithoutTestRulesTestInput.java index 229d574f..6fd82e9d 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/RuleWithoutTestRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; /** Code to test the Refaster rules from {@link RuleWithoutTestRules}. */ final class RuleWithoutTestRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestInput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/ValidRulesTestInput.java similarity index 94% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestInput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/ValidRulesTestInput.java index cf6d842c..4a57c6bd 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestInput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/input/ValidRulesTestInput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.input; import com.google.common.base.Strings; import com.google.common.collect.ImmutableSet; diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MatchInWrongMethodRulesTestOutput.java similarity index 92% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MatchInWrongMethodRulesTestOutput.java index 83f191d3..c6a0088b 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MatchInWrongMethodRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MatchInWrongMethodRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; /** Code to test the Refaster rules from {@link MatchInWrongMethodRules}. */ final class MatchInWrongMethodRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MethodWithoutPrefixRulesTestOutput.java similarity index 91% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MethodWithoutPrefixRulesTestOutput.java index ccdded90..7ef41c64 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MethodWithoutPrefixRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MethodWithoutPrefixRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; import com.google.common.collect.ImmutableSet; diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MisnamedTestClassRulesTestOutput.java similarity index 87% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MisnamedTestClassRulesTestOutput.java index 38ff3fcc..9890d449 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MisnamedTestClassRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MisnamedTestClassRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; /** Code to test the Refaster rules from {@link MisnamedTestClassRules}. */ /* ERROR: Class should be named `MisnamedTestClassRulesTest`. */ diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MissingTestAndWrongTestRulesTestOutput.java similarity index 94% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MissingTestAndWrongTestRulesTestOutput.java index 7c9336d3..ef753f93 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/MissingTestAndWrongTestRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/MissingTestAndWrongTestRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; /** Code to test the Refaster rules from {@link MissingTestAndWrongTestRules}. */ final class MissingTestAndWrongTestRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/PartialTestMatchRulesTestOutput.java similarity index 89% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/PartialTestMatchRulesTestOutput.java index 091ed9f0..bfaf6062 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/PartialTestMatchRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/PartialTestMatchRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; /** Code to test the Refaster rules from {@link PartialTestMatchRules}. */ final class PartialTestMatchRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/RuleWithoutTestRulesTestOutput.java similarity index 87% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/RuleWithoutTestRulesTestOutput.java index 15f89cd4..67fcefa7 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/RuleWithoutTestRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/RuleWithoutTestRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; /** Code to test the Refaster rules from {@link RuleWithoutTestRules}. */ final class RuleWithoutTestRulesTest implements RefasterRuleCollectionTestCase { diff --git a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestOutput.java b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/ValidRulesTestOutput.java similarity index 93% rename from refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestOutput.java rename to refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/ValidRulesTestOutput.java index 45b31289..ce7515c4 100644 --- a/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/ValidRulesTestOutput.java +++ b/refaster-test-support/src/test/resources/tech/picnic/errorprone/refaster/test/output/ValidRulesTestOutput.java @@ -1,4 +1,4 @@ -package tech.picnic.errorprone.refaster.test; +package tech.picnic.errorprone.refaster.test.output; import static com.google.common.base.Strings.isNullOrEmpty; diff --git a/website/.gitignore b/website/.gitignore index 7caf6d3d..9bd53d5a 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -1,12 +1,13 @@ # Generated by Bundler and Jekyll. .bundle/ -Gemfile.lock .jekyll-cache/ .jekyll-metadata .sass-cache/ _site/ vendor/ -# Generated by `../generate-docs.sh`. -*.bak +# XXX: Update generator name when it's renamed. +# Generated by `JekyllCollectionGenerator`. index.md +_bugpatterns/ +_refasterrules/ diff --git a/website/Gemfile b/website/Gemfile index 734e7a14..d537899c 100644 --- a/website/Gemfile +++ b/website/Gemfile @@ -1,8 +1,15 @@ ruby File.read(".ruby-version").strip source "https://rubygems.org" -gem "html-proofer", "4.4.1" -gem "jekyll", "4.2.2" -gem "jekyll-sitemap", "1.4" -gem "just-the-docs", "0.4.0.rc2" -gem "webrick", "1.7" + +group :jekyll_site_dependencies do + gem "jekyll", "4.3.2" + gem "jekyll-sitemap", "1.4.0" + gem "just-the-docs", "0.6.2" + gem "rake", "13.0.6" + gem "webrick", "1.8.1" +end + +group :website_validation_dependencies do + gem "html-proofer", "5.0.8" +end diff --git a/website/Gemfile.lock b/website/Gemfile.lock new file mode 100644 index 00000000..afb5e7b3 --- /dev/null +++ b/website/Gemfile.lock @@ -0,0 +1,133 @@ +GEM + remote: https://rubygems.org/ + specs: + Ascii85 (1.1.0) + addressable (2.8.5) + public_suffix (>= 2.0.2, < 6.0) + afm (0.2.2) + async (2.6.4) + console (~> 1.10) + fiber-annotation + io-event (~> 1.1) + timers (~> 4.1) + colorator (1.1.0) + concurrent-ruby (1.2.2) + console (1.23.2) + fiber-annotation + fiber-local + em-websocket (0.5.3) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0) + ethon (0.16.0) + ffi (>= 1.15.0) + eventmachine (1.2.7) + ffi (1.16.3) + fiber-annotation (0.2.0) + fiber-local (1.0.0) + forwardable-extended (2.6.0) + google-protobuf (3.24.4-x86_64-linux) + hashery (2.1.2) + html-proofer (5.0.8) + addressable (~> 2.3) + async (~> 2.1) + nokogiri (~> 1.13) + pdf-reader (~> 2.11) + rainbow (~> 3.0) + typhoeus (~> 1.3) + yell (~> 2.0) + zeitwerk (~> 2.5) + http_parser.rb (0.8.0) + i18n (1.14.1) + concurrent-ruby (~> 1.0) + io-event (1.3.2) + jekyll (4.3.2) + addressable (~> 2.4) + colorator (~> 1.0) + em-websocket (~> 0.5) + i18n (~> 1.0) + jekyll-sass-converter (>= 2.0, < 4.0) + jekyll-watch (~> 2.0) + kramdown (~> 2.3, >= 2.3.1) + kramdown-parser-gfm (~> 1.0) + liquid (~> 4.0) + mercenary (>= 0.3.6, < 0.5) + pathutil (~> 0.9) + rouge (>= 3.0, < 5.0) + safe_yaml (~> 1.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) + jekyll-include-cache (0.2.1) + jekyll (>= 3.7, < 5.0) + jekyll-sass-converter (3.0.0) + sass-embedded (~> 1.54) + jekyll-seo-tag (2.8.0) + jekyll (>= 3.8, < 5.0) + jekyll-sitemap (1.4.0) + jekyll (>= 3.7, < 5.0) + jekyll-watch (2.2.1) + listen (~> 3.0) + just-the-docs (0.6.2) + jekyll (>= 3.8.5) + jekyll-include-cache + jekyll-seo-tag (>= 2.0) + rake (>= 12.3.1) + kramdown (2.4.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + liquid (4.0.4) + listen (3.8.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + mercenary (0.4.0) + nokogiri (1.15.4-x86_64-linux) + racc (~> 1.4) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + pdf-reader (2.11.0) + Ascii85 (~> 1.0) + afm (~> 0.2.1) + hashery (~> 2.0) + ruby-rc4 + ttfunk + public_suffix (5.0.3) + racc (1.7.1) + rainbow (3.1.1) + rake (13.0.6) + rb-fsevent (0.11.2) + rb-inotify (0.10.1) + ffi (~> 1.0) + rexml (3.2.6) + rouge (4.1.3) + ruby-rc4 (0.1.5) + safe_yaml (1.0.5) + sass-embedded (1.69.4) + google-protobuf (~> 3.23) + rake (>= 13.0.0) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + timers (4.3.5) + ttfunk (1.7.0) + typhoeus (1.4.0) + ethon (>= 0.9.0) + unicode-display_width (2.5.0) + webrick (1.8.1) + yell (2.2.2) + zeitwerk (2.6.12) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + html-proofer (= 5.0.8) + jekyll (= 4.3.2) + jekyll-sitemap (= 1.4.0) + just-the-docs (= 0.6.2) + rake (= 13.0.6) + webrick (= 1.8.1) + +RUBY VERSION + ruby 3.1.2p20 + +BUNDLED WITH + 2.3.7 diff --git a/website/README.md b/website/README.md index 49111ad1..6592a17b 100644 --- a/website/README.md +++ b/website/README.md @@ -7,18 +7,30 @@ statically generated using [Jekyll][jekyll]. # Local development To view the website on `localhost`, first follow the [Jekyll installation -instructions][jekyll-docs-installation]. Once done, in this directory execute: +instructions][jekyll-docs-installation]. Once done, run the following Maven +commands in the root of the repository to extract the (test) data from the bug +patterns and Refaster rule collections and to transform this data into a +Jekyll-digestible format. Unless and relevant Java code has been changed, these +commands needs to be executed once. + +```sh +mvn -T1C clean install -DskipTests -Dverification.skip -Pdocgen +mvn exec:java@generate-docs -pl documentation-support +``` + +Then to build the website for local development, execute in this directory: ```sh bundle install -../generate-docs.sh && bundle exec jekyll serve --livereload +bundle exec jekyll serve --livereload ``` The website will now be [available][localhost-port-4000] on port 4000. Source -code modifications (including the result of rerunning `../generate-docs.sh`) -will automatically be reflected. (An exception is `_config.yml`: changes to -this file require a server restart.) Subsequent server restarts do not require -running `bundle install`, unless `Gemfile` has been updated in the interim. +code modifications (including the result of rerunning `mvn +exec:java@generate-docs -pl documentation-support`) will automatically be +reflected. (An exception is `_config.yml`: changes to this file require a +server restart.) Subsequent server restarts do not require running `bundle +install`, unless `Gemfile` has been updated in the interim. If you are not familiar with Jekyll, be sure to check out its [documentation][jekyll-docs]. It is recommended to follow the provided diff --git a/website/_config.yml b/website/_config.yml index ac900637..c0c53f71 100644 --- a/website/_config.yml +++ b/website/_config.yml @@ -8,15 +8,40 @@ description: >- theme: just-the-docs plugins: - - jekyll-sitemap +- jekyll-sitemap # Files and directories not to be deployed through GitHub pages. exclude: - - Gemfile - - Gemfile.lock - - generate-version-compatibility-overview.sh - - README.md - - vendor +- Gemfile +- Gemfile.lock +- generate-version-compatibility-overview.sh +- README.md +- vendor + +collections: + bugpatterns: + output: true + refasterrules: + output: true + +defaults: +- scope: + type: "bugpatterns" + values: + layout: "bugpattern" +- scope: + type: "refasterrules" + values: + layout: "refasterrule" + +just_the_docs: + collections: + bugpatterns: + name: Bug Patterns + nav_fold: true + refasterrules: + name: Refaster Rules + nav_fold: true # See https://jekyllrb.com/docs/permalinks/#built-in-formats. permalink: pretty @@ -25,9 +50,9 @@ permalink: pretty # See # https://just-the-docs.github.io/just-the-docs/docs/navigation-structure/#external-navigation-links. nav_external_links: - - title: Error Prone Support on GitHub - url: https://github.com/PicnicSupermarket/error-prone-support - hide_icon: false +- title: Error Prone Support on GitHub + url: https://github.com/PicnicSupermarket/error-prone-support + hide_icon: false callouts: summary: @@ -40,9 +65,9 @@ callouts: social: name: Picnic links: - - https://github.com/PicnicSupermarket - - https://twitter.com/picnic - - https://www.linkedin.com/company/picnictechnologies + - https://github.com/PicnicSupermarket + - https://twitter.com/picnic + - https://www.linkedin.com/company/picnictechnologies twitter: username: picnic card: summary diff --git a/website/_data/severities.yml b/website/_data/severities.yml new file mode 100644 index 00000000..7c0749ba --- /dev/null +++ b/website/_data/severities.yml @@ -0,0 +1,6 @@ +ERROR: + color: red +WARNING: + color: yellow +SUGGESTION: + color: green diff --git a/website/_layouts/bugpattern.md b/website/_layouts/bugpattern.md new file mode 100644 index 00000000..e11239b5 --- /dev/null +++ b/website/_layouts/bugpattern.md @@ -0,0 +1,94 @@ +--- +# XXX: To be implemented: +# - Support for alt names. +# - Support for explanations. +# - Support for "can disable". +# - Support for custom suppression annotations. +layout: default +--- + +{% capture markdown_layout %} + +# {{ page.name }} + +{{ page.severity }} + {: .label .label-{{ site.data.severities[page.severity].color }} } + +{% for tag in page.tags %} +{{ tag }} + {: .label } +{% endfor %} + + + View source code on GitHub + + + + + +{: .summary-title } +> Summary +> +> {{ page.summary }} + +{% comment %} + # XXX: Here, include a more elaborate explantion, if available. +{% endcomment %} + +{: .note-title } +> Suppression +> +> Suppress false positives by adding the suppression annotation `@SuppressWarnings("{{ page.name }}")` to +> the enclosing element. +> +> Disable this pattern completely by adding `-Xep:{{ page.name }}:OFF` as compiler argument. +> [Learn more][error-prone-flags]. +{% comment %} + # XXX: Create an internal page on documenting the usage of compiler flags. +{% endcomment %} + +{% if page.replacement or page.identification %} + +## Samples + +{% comment %} + # XXX: Either make this "Samples" header useful, or drop it. (In which case + # the wrapping conjunctive guard should also go.) +{% endcomment %} + +{% if page.replacement %} + +### Replacement + +Shows the difference in example code before and after the bug pattern is +applied. + +{% for diff in page.replacement %} +{% highlight diff %} +{{ diff }} +{% endhighlight %} +{% endfor %} + +{% endif %} + +{% if page.identification %} + +### Identification + +Shows code lines which will (not) be flagged by this bug pattern. \ +A `//BUG: Diagnostic contains:` comment is placed above any violating line. + +{% for source in page.identification %} +{% highlight java %} +{{ source }} +{% endhighlight %} +{% endfor %} + +{% endif %} + +{% endif %} + +[error-prone-flags]: https://errorprone.info/docs/flags + +{% endcapture %} +{{ markdown_layout | markdownify }} diff --git a/website/_layouts/refasterrule.md b/website/_layouts/refasterrule.md new file mode 100644 index 00000000..4afc86f5 --- /dev/null +++ b/website/_layouts/refasterrule.md @@ -0,0 +1,78 @@ +--- +layout: default +--- + +{% capture markdown_layout %} + +# {{ page.name }} +{: .no_toc } + +{{ page.severity }} + {: .label .label-{{ site.data.severities[page.severity].color }} } + +{% for tag in page.tags %} +{{ tag }} + {: .label } +{% endfor %} + + + View source code on GitHub + + + + + +{: .note-title } +> Suppression +> +> Disable all rules by adding `-XepOpt:Refaster:NamePattern=^(?!{{page.name}}\$).*` as +> compiler argument. +{% comment %} + # XXX: Create an internal page on documenting the usage of compiler flags. +{% endcomment %} + +
+ + Table of contents + + {: .text-delta } + 1. TOC + {:toc} +
+ +{% for rule in page.rules %} +## {{rule.name}} + +{{ page.severity }} + {: .label .label-{{ site.data.severities[rule.severity].color }} } + +{% for tag in rule.tags %} +{{ tag }} + {: .label } +{% endfor %} + +{: .note-title } +> Suppression +> +> Suppress false positives by adding the suppression annotation `@SuppressWarnings("{{rule.name}}")` to +> the enclosing element. +> +> Disable this rule by adding `-XepOpt:Refaster:NamePattern=^(?!{{page.name}}\${{rule.name}}).*` +> as compiler argument. +{% comment %} + # XXX: Create an internal page on documenting the usage of compiler flags. +{% endcomment %} + +### Samples +{: .no_toc .text-delta } + +Shows the difference in example code before and after the Refaster rule is +applied. + +{% highlight diff %} +{{ rule.diff }} +{% endhighlight %} +{% endfor %} + +{% endcapture %} +{{ markdown_layout | markdownify }} diff --git a/website/_sass/color_schemes/_variables.scss b/website/_sass/color_schemes/_variables.scss index fe5b7683..e8ccfe85 100644 --- a/website/_sass/color_schemes/_variables.scss +++ b/website/_sass/color_schemes/_variables.scss @@ -2,4 +2,4 @@ // https://github.com/just-the-docs/just-the-docs/blob/main/_sass/support/_variables.scss. // Grid system. -$nav-width: 400px; +$nav-width: 25rem; diff --git a/website/bugpatterns.md b/website/bugpatterns.md deleted file mode 100644 index 51ce7bf7..00000000 --- a/website/bugpatterns.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -layout: default -title: Bug Patterns -nav_order: 2 -has_children: true ---- - -# Bug Patterns diff --git a/website/refasterrules.md b/website/refasterrules.md deleted file mode 100644 index bf1d43dc..00000000 --- a/website/refasterrules.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -layout: default -title: Refaster Rules -nav_order: 2 -has_children: true ---- - -# Refaster Rules