Commit Graph

17 Commits

Author SHA1 Message Date
Stephane Nicoll
853ee51f2b Add support for transforming the chosen platform version
This commit improves the ProjectRequest converter to invoke a
ProjectRequestPlatformVersionTransformer. A default implementation does
the conversion based on configurable ranges for the V1 and V2 format
respectively.

This complement our backward compatible support with 2.1 metadata on an
instance using the new version format. All that is required is to
configure which versions are using which format.

See gh-1092
2020-06-03 14:32:41 +02:00
Stephane Nicoll
9255ae9fbe Polish 2020-05-17 11:25:23 +02:00
Stephane Nicoll
a6e74c180e Add doesNotHaveBom test assertion
Closes gh-1074
2020-03-25 15:36:43 +01:00
Stephane Nicoll
eef529aa7c Add platform compatibility range support
This commit adds a new `platformCompatibilityRange` in the metadata that
can be used to restrict the valid platform versions. If a project is
requested or metadata needs to be resolved against a version that does
not match the range, an exception is thrown.

Closes gh-1048
2020-01-03 14:08:37 +01:00
Stephane Nicoll
e0f3e42094 Polish 2019-10-16 11:37:21 +02:00
Stephane Nicoll
d812ca8c38 Harmonize SCM information 2019-10-05 18:32:42 +01:00
Stephane Nicoll
66c1b24240 Fix typos 2019-10-05 18:22:22 +01:00
Stephane Nicoll
7da1db9329 Polish test utilities 2019-09-26 17:36:53 +02:00
Stephane Nicoll
23cc192813 Add support for ApplicationContextRunner in ProjectAssetTester
Closes gh-1004
2019-09-17 09:21:28 +02:00
Stephane Nicoll
50bddd036e Revisit TemplateRenderer usage
This commit stops creating a MustacheTemplateRenderer automatically as
it is only used by the Spring conventions at the moment. This makes sure
that the test infrastructure can be used even if mustache is not
available.

Closes gh-991
2019-09-06 13:47:25 +02:00
Stephane Nicoll
595050258c Move source file extension to Language abstraction
Closes gh-995
2019-08-31 09:07:06 +02:00
Stephane Nicoll
0b37199b3e Polish 2019-08-25 04:41:44 +02:00
Stephane Nicoll
c36ae847fb Harmonize ProjectDescription name 2019-08-25 03:17:25 +02:00
Stephane Nicoll
286e38888c Migrate ProjectDescription to an interface
This commit migrates ProjectDescription to an interface with read-only
accessors and create a MutableProjectDescription implementation that can
be used for both purposes.

As a result, the type separation between ResolvedProjectDescription and
ProjectDescription is no longer necessary.

Closes gh-993
2019-08-25 03:03:57 +02:00
Stephane Nicoll
1a0ec74f8a Polish 2019-08-25 02:32:50 +02:00
Stephane Nicoll
ddd609c639 Move assert to AssertJ
This commit moves project-based assertions to regular AssertJ Assert
classes. `ProjectStructure` is now an assert provider so that it can
be used with the standard `assertThat` method.

Specialized assertions are provided for the supported build systems as
well as text-based content.

Closes gh-764
2019-08-22 15:24:28 +02:00
Stephane Nicoll
1082ac7bf7 Extract project generation test utility to dedicated module
This commit extracts various test utilities to a dedicated
initializr-generator-test module for easier consumption. The previous
test-jar are no longer published and a dependency to this new module
should be equivalent.

This commit also cleans various resources that were located in the wrong
place. In particular initializr-generator does not know anything about
metadata anymore.

Closes gh-988
2019-08-21 16:10:06 +02:00