aboutsummaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2013-09-20Issue 559: NullPointerException when @NonNull is used in abstract methodSander Koning
- Prevent NPE in javac and give a proper warning in both eclipse and javac - Add test cases
2013-09-09Updated unit tests to reflect new double-underscore default for onX. ↵Roel Spilker
(Because single underscore generates warnings in javac8).
2013-09-09[jdk8support] We now handle doc comments internally, alleviating the need to ↵Roel Spilker
try and keep up with the complete rewrites of the doc comment parser from java6 to java7 to java8. Still doesn't actually work in jdk8, but only because of a last-mile issue. (we communicate the doc comment via compilationUnit.docComments but that changed types in jdk8, we just need to make a wrapper to make that work).
2013-08-19Removed blanksRoel Spilker
2013-08-19Only look at the line number for errors and warnings.Roel Spilker
2013-08-14* Fixed 553: @XArgsConstructor (and @Builder on a class) did not look at ↵Reinier Zwitserloot
@Accessors to handle field accessors. * various operations on names in javac were really slow; they are faster now.
2013-08-12replaced double underscore as new standard way of writing the dummy ↵Reinier Zwitserloot
annotation for onX instead of single underscore, which emits warnings on javac8+. Also made dollars and Xes legal in addition to underscores, in case double underscore disappears later too.
2013-08-11Oops: didn't realise the text appeared in multiple places.Jan Ouwens
2013-07-16* Fixed issues with @FieldDefaults and @Value (you can NOT overrideReinier Zwitserloot
@Value's final-by-default and private-by-default with it; now appropriate warnings are emitted) * Builder now errors out on presence of most lombok annotations on an explicit builder class. * Builder now takes @FieldDefaults/@Value into account. * Builder on type now generates the constructor as package private instead of private to avoid synthetic accessor constructors. * added a bunch of test cases. * added a test case feature: If the expected file is omitted entirely but there are expected messages, the differences in the output itself are ignored. * streamlined checking for boolean-ness (removed some duplicate code) * added 'fluent' and 'chain' to @Builder.
2013-07-08Fixed value's snippet integration (it hadn't been updated yet now that Value ↵Reinier Zwitserloot
has moved from experimental into core).
2013-07-08gave up on adding support for moving javadoc to getter/setter in eclipse. ↵Reinier Zwitserloot
Eclipse breaks the javadoc out of the raw source and we can't modify that without breaking a billion things. To solve this issue we'd have to write some very complicated patches to intercept this process and somehow propagate the node that the javadoc is attached to AND translate from the ast model to dom or whatever is being used there. Not gonna happen for this low priority feature.
2013-07-08added tests for new javadoc behaviour, javac implementation of copying ↵Reinier Zwitserloot
javadoc for getters/setters, and fixed pretty printer to no longer inject an extra newline at the top of javadoc.
2013-07-07eclipse support for the new @Getter(lazy=true) desugaring.Reinier Zwitserloot
2013-07-07@Getter(lazy=true) now uses a different, more efficient desugaring. ↵Reinier Zwitserloot
Implementing in javac, ecj still has to be done.
2013-06-25Value has been promoted to the main package.Reinier Zwitserloot
2013-06-18javac builder implementation. Passes all tests.Reinier Zwitserloot
Added toString() impl for builders in both eclipse and javac. Added all documentation, though it'll need some reviewing.
2013-06-18finished tests for builder (added after-delombok versions).Reinier Zwitserloot
2013-06-16Most of the javac implementation for HandleBuilder, plusReinier Zwitserloot
some minor updates and refactoring in the eclipse HandleBuilder.
2013-06-16improved and added to test cases for @Builder.Reinier Zwitserloot
Eclipse's implementation continues to pass them all.
2013-06-16Eclipse Builder implementation finished. Tests need fleshing out though.Reinier Zwitserloot
2013-05-31Added @NonNull on parameters feature (issue 514),Reinier Zwitserloot
including docs and changelog.
2013-05-24added test case and delombok result for issue 520 (val in ↵Reinier Zwitserloot
try-with-resources). WARNING: I havent added ecj test output yet because so far there is no ecj7 available for testing with our buildscripts. I should fix that first and then Ill sort this out.
2013-05-24Fixed more issues related to java7's try-with-resources,Reinier Zwitserloot
and updated ECJ version detection.
2013-05-23Added methods to obtain JLS support-level version information from ↵Reinier Zwitserloot
AST/LombokNode. Tests updates to honour these with //version X at the top of any test file (now also in eclipse, which until now always said it was v6)
2013-05-23Added a method to obtain latest java language spec supported by hostReinier Zwitserloot
platform and implemented it for javac BUT NOT FOR ECJ!
2013-05-06Fixed issue 513: If equals is present but hashCode isn't, @Data now ↵Reinier Zwitserloot
generates a warning to explain this strange situation.
2013-03-26We used to add the platform line ending when comparing test files. This ↵Roel Spilker
obviously doesn't work on windows; we force unix line ending now.
2013-03-18Fixed issue 459: Delombok would choke on try-with-resources.Reinier Zwitserloot
2013-03-18Added a //version option to test files to restrict them to specific versions.Reinier Zwitserloot
2013-03-11Added @Log4j2 support.Reinier Zwitserloot
2013-03-11changed the pattern for writing dependencies to the various lib/ directoriesReinier Zwitserloot
to be organization-name.jar instead of just name.jar, in order to account for the ever lovely and wonderful apache's crazy decision to call the entirely separate log4j v2.0 also 'log4j'. This does mean you'll have to 'ant clean'.
2013-02-18Changed @Value to no longer imply @Wither. Usually you want onlyReinier Zwitserloot
a few or no withers at all, and adding them is a lot simpler than removing them. This is a breaking change, but then that's why @Value was in experimental in the first place.
2013-02-11BIG commit:Reinier Zwitserloot
* re-introduction of onMethod/onConstructor/onParam * tests checking error/warnings rewritten to be more heuristic, in order to accomodate difference in messaging between java6 and java 7 * Ability to eliminate java's own output of erroneous error messages (heh); i.e. those messages that are invalidated by lombok's actions. This mechanism is used for onMethod/onConstructor/onParam * First steps to unifying a billion setGeneratedBy calls into a single visitor traversal for eclipse' HandleGetter/Setter/Constructor/Wither * To simplify 'zooming in' the tests on just a few files, added an 'accept' mechanism. * Updated copyright headers of website to 2013.
2012-10-30Added annotation for the slf4j extended loggergrootjans
2012-10-30Fix for issue 408: IllegalArgumentException when generating setters in ↵Reinier Zwitserloot
eclipse for fields with @Deprecated on them.
2012-10-29added tests for lub and val (lub = finding the common supertype, for example ↵Reinier Zwitserloot
in a ternary expression).
2012-10-29//ignore in files now counts even if the 'ignore' comment is followed by ↵Reinier Zwitserloot
more text (such as the explanation for why it is being ignored).
2012-10-25Empty statements no longer being printed to be consistent with Javac7 which ↵Reinier Zwitserloot
seems to just remove these from the AST entirely.
2012-10-25The testrunner now uses a different mechanism to verify correctness of ↵Reinier Zwitserloot
produced errors and warnings (i.e. we intentionally compile code with errors in them to verify that the appropriate error or warning message is emitted when lombok is active during a compilation run of either javac or ecj) - instead of string comparisons, it's a little more complex. This to enable testing of both javac6 and javac7, even if they produce (slightly) different error output. Updated all message files in the 'expected output' directories to represent this change.
2012-10-22Ever since we do a lot more than just calling 'parse' when running delombok ↵Reinier Zwitserloot
in our tests, the tests are in the unfortunate scenario where we always compile against a given javac (lib/build/javac6.jar), and always run the tests against a given javac, but that javac tries to use the bootclasspath of the host JRE, and if that is JRE7, you get all sorts of errors. I fixed it by still compiling against a given javac (we can only ship one lombok.jar after all), but having the test task run with a given bootclasspath and a given javac.jar. There are 2 tasks that download both rt.jar and javac.jar for either OpenJDK6 or OpenJDK7, and it writes a properties file with those locations. The test task will use this property file, and explain what you need to do if it is not there. Incidentally, this brought to light issue 422: Delombok in java7 produces VerifyErrors.
2012-08-13test for using 'val' on an expression that involved lombok-generated code.Reinier Zwitserloot
2012-08-10Added tests for @FieldDefaults and @Value.Reinier Zwitserloot
2012-08-06fully tested the HandleWither impl for eclipse.Reinier Zwitserloot
2012-08-06Merge branch 'master' into witherReinier Zwitserloot
Conflicts: src/core/lombok/javac/handlers/JavacHandlerUtil.java
2012-07-17Fix for issue 396: Static constructors generated for classes with type ↵Reinier Zwitserloot
parameters did not work in javac.
2012-07-16fixed issue 391: Using 'staticConstructor' on @Data whilst an ↵Reinier Zwitserloot
@XxxArgsConstructor is present means it gets ignored, but until now lombok didn't warn you about this.
2012-07-16Added setting position of generated nodes in javac's @Synchronized as a ↵Reinier Zwitserloot
'pilot' to see if we cause any problems with this approach. It does generate nicer error messages! Example: Using @Synchronized with named lock on a static method, naming a non-existent or instance lock. That used to error on line -1.
2012-07-16fixed tests since Robbert Jan's fix for issue 377.Reinier Zwitserloot
2012-07-16Added feature to test suite to dump actual result of running ecj / delombok ↵Reinier Zwitserloot
on things to a directory (use -Dlombok.tests.dump_actual_files=/path/to/dir). Useful if you KNOW lombok is working but something changed in output, i.e. order of generated methods.
2012-07-16Updated tests to reflect changes to delombok (delombok now kills super(), ↵Reinier Zwitserloot
because attrib adds them even in places where that's wrong). Also split up the SynchronizedName test into separate cases for each expected failure mode.