Download JAR files tagged by release with all dependencies
dbvolution7 from group nz.co.gregs (version 1.0.0)
Advanced Library to Remove Object Relational Impedance.
DBvolution translates all database concepts into Object Oriented concepts, allowing you to spend all your time writing Java rather than fixing broken and awkward SQL.
DBvolution transforms your schema into classes, reduces the database configuration to sparse annotations on the classes, and allows querying directly from the classes.
Queries are created inside your java code and takes as little as one line for a multi-table outer join. Retrieving the rows from the query is only one more method call. Dozens of SQL functions are available without leaving your Java code and use chaining to build complex expressions easily.
Transactions are encapsulated into a thread-like API, allowing you to write complex database interactions in complete safety.
The queries performed by DBvolution are always available for debugging and checking by DBAs before release.
There are examples in nz.co.gregs.dbvolution.examples, and documentation at http://dbvolution.gregs.co.nz.
0 downloads
Artifact dbvolution7
Group nz.co.gregs
Version 1.0.0
Last update 27. May 2019
Newest version Yes
Organization Gregory Graham
URL http://dbvolution.gregs.co.nz
License Commercial License
Dependencies amount 26
Dependencies mysql-connector-java, h2, mysql-connector-mxj, postgresql, reflections, commons-logging, dbvolution-eclipse, jung-visualization, jung-graph-impl, sqlite-jdbc, commons-codec, nuodb-jdbc, derby, derbyclient, jts, joda-time, simmetrics-core, jtds, mssql-jdbc, annotations, jsr305, jackson-dataformat-yaml, jackson-databind, jbcrypt, commons-lang3, commons-crypto,
There are maybe transitive dependencies!
Group nz.co.gregs
Version 1.0.0
Last update 27. May 2019
Newest version Yes
Organization Gregory Graham
URL http://dbvolution.gregs.co.nz
License Commercial License
Dependencies amount 26
Dependencies mysql-connector-java, h2, mysql-connector-mxj, postgresql, reflections, commons-logging, dbvolution-eclipse, jung-visualization, jung-graph-impl, sqlite-jdbc, commons-codec, nuodb-jdbc, derby, derbyclient, jts, joda-time, simmetrics-core, jtds, mssql-jdbc, annotations, jsr305, jackson-dataformat-yaml, jackson-databind, jbcrypt, commons-lang3, commons-crypto,
There are maybe transitive dependencies!
dbvolution from group nz.co.gregs (version 1.0.5)
Advanced Library to Remove Object Relational Impedance.
DBvolution translates all database concepts into Object Oriented concepts, allowing you to spend all your time writing Java rather than fixing broken and awkward SQL.
DBvolution transforms your schema into classes, reduces the database configuration to sparse annotations on the classes, and allows querying directly from the classes.
Queries are created inside your java code and takes as little as one line for a multi-table outer join. Retrieving the rows from the query is only one more method call. Dozens of SQL functions are available without leaving your Java code and use chaining to build complex expressions easily.
Transactions are encapsulated into a thread-like API, allowing you to write complex database interactions in complete safety.
The actions performed by DBvolution are always available for debugging and checking by DBAs before release.
There are examples in nz.co.gregs.dbvolution.examples, and documentation at http://dbvolution.gregs.co.nz and http://sourceforge.net/p/dbvolution/blog/
Artifact dbvolution
Group nz.co.gregs
Version 1.0.5
Last update 18. August 2018
Newest version Yes
Organization not specified
URL http://dbvolution.gregs.co.nz
License Non-commercial License
Dependencies amount 16
Dependencies mysql-connector-java, h2, mysql-connector-mxj, postgresql, reflections, commons-logging, dbvolution-eclipse, jung-visualization, jung-graph-impl, sqlite-jdbc, commons-codec, nuodb-jdbc, derby, derbyclient, jts, joda-time,
There are maybe transitive dependencies!
Group nz.co.gregs
Version 1.0.5
Last update 18. August 2018
Newest version Yes
Organization not specified
URL http://dbvolution.gregs.co.nz
License Non-commercial License
Dependencies amount 16
Dependencies mysql-connector-java, h2, mysql-connector-mxj, postgresql, reflections, commons-logging, dbvolution-eclipse, jung-visualization, jung-graph-impl, sqlite-jdbc, commons-codec, nuodb-jdbc, derby, derbyclient, jts, joda-time,
There are maybe transitive dependencies!
jcql from group com.trebogeer.jcql (version 0.8.7)
JCQL is a tool allowing to generate boilerplate java code from existing cassandra schema. It is intended to be
used with Cassandra 2.1+ due to support of UDTs (User Defined Types)/Tuples/Collections.
Cassandra's UDTs/Tuples/Collections and an ability to introspect schema through java driver make it possible to
automatically generate POJOs and corresponding mappers between database and java models. Properly generated java
code saves development efforts and is less error-prone compared to hand coding. Accompanied with proper CI and
deployment it can also guarantee consistency between database and java models at any point of application
lifecycle from development to production rollout. JCQL does not rely on java reflection or annotations which
means all discrepancies between actual cassandra schema and what client code expects it to be will be identified
during compilation not at runtime in the middle of the night right after production release. No need to worry
about Cassandra client code performance implications due to use of reflection.
0 downloads
Artifact jcql
Group com.trebogeer.jcql
Version 0.8.7
Last update 11. March 2016
Newest version Yes
Organization not specified
URL http://github.com/trebogeer/j-cql
License Apache License, Version 2.0
Dependencies amount 10
Dependencies cassandra-all, jaxb-xjc, args4j, snakeyaml, guava, javatuples, slf4j-api, logback-classic, cassandra-driver-core, cassandra-driver-mapping,
There are maybe transitive dependencies!
Group com.trebogeer.jcql
Version 0.8.7
Last update 11. March 2016
Newest version Yes
Organization not specified
URL http://github.com/trebogeer/j-cql
License Apache License, Version 2.0
Dependencies amount 10
Dependencies cassandra-all, jaxb-xjc, args4j, snakeyaml, guava, javatuples, slf4j-api, logback-classic, cassandra-driver-core, cassandra-driver-mapping,
There are maybe transitive dependencies!
HermiT from group com.github.ansell.hermit (version 1.3.8.2-ansell)
HermiT is reasoner for ontologies written using the Web
Ontology Language (OWL). Given an OWL file, HermiT can determine whether or
not the ontology is consistent, identify subsumption relationships between
classes, and much more.
This is the maven build of HermiT and is designed for people who wish to use
HermiT from within the OWL API. It is not officially supported by the HermiT
development team, but was built initially for use with the Clojure-OWL
library. It is built using the HermiT source tree without modification.
There have been some additions to the test source tree to account for
differences between the maven and ant environment; these are small and
(hopefully) maintainable.
The version number of this package is a composite of the HermiT version and
an value representing releases of this packaged version. So, 1.3.7.1 is the
first release of the mavenized version of HermiT based on the 1.3.7 release
of HermiT.
This package includes the Jautomata library
(http://jautomata.sourceforge.net/), and builds with it directly. This
library appears to be no longer under active development, and so a "fork"
seems appropriate. No development is intended or anticipated on this code
base.
Artifact HermiT
Group com.github.ansell.hermit
Version 1.3.8.2-ansell
Last update 03. September 2013
Newest version Yes
Organization not specified
URL http://hermit-reasoner.com/
License LGPL
Dependencies amount 12
Dependencies owlapi-api, owlapi-impl, owlapi-parsers, owlapi-rio, sesame-rio-turtle, sesame-rio-ntriples, sesame-rio-rdfxml, axiom-api, axiom-c14n, axiom-impl, axiom-dom, automaton,
There are maybe transitive dependencies!
Group com.github.ansell.hermit
Version 1.3.8.2-ansell
Last update 03. September 2013
Newest version Yes
Organization not specified
URL http://hermit-reasoner.com/
License LGPL
Dependencies amount 12
Dependencies owlapi-api, owlapi-impl, owlapi-parsers, owlapi-rio, sesame-rio-turtle, sesame-rio-ntriples, sesame-rio-rdfxml, axiom-api, axiom-c14n, axiom-impl, axiom-dom, automaton,
There are maybe transitive dependencies!
superpom from group it.tidalwave.thesefoolishthings (version 5.0-ALPHA-11)
[]
(https://drone.io/bitbucket.org/tidalwave/thesefoolishthings-superpom-src/latest)
A feature-rich SuperPOM for building Java projects. It features:
* explicit version configuration for a number of plugins;
* easy configurability by means of pre-defined properties to avoid cut & copy of plugin sections.
A number of profiles, that can be easily activated, are available for:
* Spring-AOP configuration;
* different kinds of Continuous Integration tasks, including a full run of QA tools such as JaCoCo, FindBugs, PMD, etc...
* deploying WARs and locally running them with Tomcat or Jetty;
* creating a Mac OS X bundle for JavaFX applications;
* creating .deb packages for both application and services;
* a customized release cycle, including all requirements for the Maven Central such as signing, with a 'transactional' behaviour
(all artifacts, both the DSCM and the Maven artifacts are prepared on the local disk, so they can be uploaded in a second moment);
Remember to customise it
------------------------
If you use it, please remember to change the ```description```,```url```, ```organization```, ```developers```, ```license```, etc...
to override those related to the development of this POM.
Group: it.tidalwave.thesefoolishthings Artifact: superpom
Show all versions
Show all versions
There is no JAR file uploaded. A download is not possible! Please choose another version.
0 downloads
Artifact superpom
Group it.tidalwave.thesefoolishthings
Version 5.0-ALPHA-11
Last update 05. April 2021
Newest version Yes
Organization Tidalwave s.a.s.
URL http://tidalwave.it
License Apache-2.0
Dependencies amount 0
Dependencies No dependencies
There are maybe transitive dependencies!
Group it.tidalwave.thesefoolishthings
Version 5.0-ALPHA-11
Last update 05. April 2021
Newest version Yes
Organization Tidalwave s.a.s.
URL http://tidalwave.it
License Apache-2.0
Dependencies amount 0
Dependencies No dependencies
There are maybe transitive dependencies!
tagmycode-netbeans from group com.tagmycode (version 2.3.0)
Provides the support for <a href="https://tagmycode.com">TagMyCode</a>.
This plugin allows you to manage your own snippets.<br/>
<br/>
Features:<br/>
* Add snippets: you can save your code snippets including description, language, and tags<br/>
* List snippets (CRUD): snippets are stored locally and you can filter, sort, create, modify, edit or delete them directly from the IDE<br/>
* Quick search: you can search your snippets and insert them directly into the document<br/>
<br/>
CHANGELOG:<br/>
<br/>
2.3.0 (released 2020-07-26)<br/>
* published plugin into Apache NetBeans Plugin Portal<br/>
* filter snippets by languages<br/>
<br/>
2.2.1 (released 2018-01-10)<br/>
* Quick Search dialog is now resizable</br>
* fixed syntax highlight for PHP and HTML</br>
* if refresh token is not valid user will be automatically logged out</br>
</br>
2.2.0 (released 2017-11-06)<br/>
* snippets management works in offline mode<br/>
* autodetect language on new snippet<br/>
* added settings dialog with editor theme and font size option<br/>
* added title and description to snippet view<br/>
* changed open browser class<br/>
* text can be dragged into table to create a new snippet<br/>
* snippets can be dragged directly into editor and the code are copied<br/>
* added "save as file" feature<br/>
* added "clone snippet" feature<br/>
* added "snippet properties" dialog<br/>
* detect binary file<br/>
<br/>
2.1.0 (released 2017-04-24)<br/>
* moved error messages from dialog to Netbeans Notification Log<br/>
* added welcome panel<br/>
* about dialog shows plugin version and framework version<br/>
* moved storage from JSON to SQL<br/>
<br/>
2.0 (released 2016-07-11)<br/>
* new user interface<br/>
* list of snippets stored locally<br/>
* syntax highlight powered by <a href="http://bobbylight.github.io/RSyntaxTextArea/">RSyntaxTextArea</a><br/>
* snippets are synchronized with server<br/>
* filter snippets<br/>
* quick search feature<br/>
* insert selected snippet at cursor in document<br/>
<br/>
1.1.3 (released 2015-12-18)<br/>
* Fix for NetBeans 8.1<br/>
<br/>
1.1.2 (released 2014-10-03)<br/>
* Switched authentication from OAuth 1.0a to OAuth 2<br/>
* Console write also snippet title when new snippet is created (thanks to bejoy)<br/>
<br/>
1.1 (released 2014-08-19)<br/>
* Added "Search snippets" feature<br/>
* Fixed some minor bugs<br/>
<br/>
1.0 (released 2014-04-14)<br/>
* First release with feature "Create snippet"<br/>
Artifact tagmycode-netbeans
Group com.tagmycode
Version 2.3.0
Last update 06. September 2020
Newest version Yes
Organization not specified
URL https://tagmycode.com
License Apache License 2.0
Dependencies amount 18
Dependencies commons-lang3, rsyntaxtextarea, guava, org-netbeans-api-annotations-common, org-openide-awt, org-netbeans-modules-settings, org-openide-dialogs, org-netbeans-modules-editor, org-netbeans-modules-keyring, org-openide-nodes, org-openide-util, org-openide-loaders, org-openide-windows, org-openide-util-ui, org-openide-text, org-netbeans-api-progress, log4j, tagmycode-plugin-framework,
There are maybe transitive dependencies!
Group com.tagmycode
Version 2.3.0
Last update 06. September 2020
Newest version Yes
Organization not specified
URL https://tagmycode.com
License Apache License 2.0
Dependencies amount 18
Dependencies commons-lang3, rsyntaxtextarea, guava, org-netbeans-api-annotations-common, org-openide-awt, org-netbeans-modules-settings, org-openide-dialogs, org-netbeans-modules-editor, org-netbeans-modules-keyring, org-openide-nodes, org-openide-util, org-openide-loaders, org-openide-windows, org-openide-util-ui, org-openide-text, org-netbeans-api-progress, log4j, tagmycode-plugin-framework,
There are maybe transitive dependencies!
HockeySDK from group net.hockeyapp.android (version 5.2.0)
HockeySDK-Android implements support for using HockeyApp in your Android application. The following features are currently supported:
Collect crash reports:If your app crashes, a crash log is written to the device's storage. If the user starts the app again, they will be asked asked to submit the crash report to HockeyApp. This works for both beta and live apps, i.e. those submitted to Google Play or other app stores. Crash logs contain viable information for you to help resolve the issue. Furthermore, you as a developer can add additional information to the report as well.
Update Alpha/Beta apps: The app will check with HockeyApp if a new version for your alpha/beta build is available. If yes, it will show a dialog to users and let them see the release notes, the version history and start the installation process right away. You can even force the installation of certain updates.
User Metrics: Understand user behavior to improve your app. Track usage through daily and monthly active users. Monitor crash impacted users. Measure customer engagement through session count. Add custom tracking calls to learn which features your users are actually using. This feature requires a minimum API level of 14 (Android 4.x Ice Cream Sandwich).
Feedback: Besides crash reports, collecting feedback from your users from within your app is a great option to help with improving your app. You act on and answer feedback directly from the HockeyApp backend.
Authenticate: Identify and authenticate users against your registered testers with the HockeyApp backend.
Group: net.hockeyapp.android Artifact: HockeySDK
Show all versions Show documentation
Show all versions Show documentation
There is no JAR file uploaded. A download is not possible! Please choose another version.
0 downloads
Artifact HockeySDK
Group net.hockeyapp.android
Version 5.2.0
Last update 21. May 2019
Newest version Yes
Organization not specified
URL https://github.com/bitstadium/hockeysdk-android
License MIT
Dependencies amount 0
Dependencies No dependencies
There are maybe transitive dependencies!
Group net.hockeyapp.android
Version 5.2.0
Last update 21. May 2019
Newest version Yes
Organization not specified
URL https://github.com/bitstadium/hockeysdk-android
License MIT
Dependencies amount 0
Dependencies No dependencies
There are maybe transitive dependencies!
pact-jvm-consumer-junit5_2.11 from group au.com.dius (version 3.5.24)
pact-jvm-consumer-junit5
========================
JUnit 5 support for Pact consumer tests
## Dependency
The library is available on maven central using:
* group-id = `au.com.dius`
* artifact-id = `pact-jvm-consumer-junit5_2.12`
* version-id = `3.5.x`
## Usage
### 1. Add the Pact consumer test extension to the test class.
To write Pact consumer tests with JUnit 5, you need to add `@ExtendWith(PactConsumerTestExt)` to your test class. This
replaces the `PactRunner` used for JUnit 4 tests. The rest of the test follows a similar pattern as for JUnit 4 tests.
```java
@ExtendWith(PactConsumerTestExt.class)
class ExampleJavaConsumerPactTest {
```
### 2. create a method annotated with `@Pact` that returns the interactions for the test
For each test (as with JUnit 4), you need to define a method annotated with the `@Pact` annotation that returns the
interactions for the test.
```java
@Pact(provider="test_provider", consumer="test_consumer")
public RequestResponsePact createPact(PactDslWithProvider builder) {
return builder
.given("test state")
.uponReceiving("ExampleJavaConsumerPactTest test interaction")
.path("/")
.method("GET")
.willRespondWith()
.status(200)
.body("{\"responsetest\": true}")
.toPact();
}
```
### 3. Link the mock server with the interactions for the test with `@PactTestFor`
Then the final step is to use the `@PactTestFor` annotation to tell the Pact extension how to setup the Pact test. You
can either put this annotation on the test class, or on the test method. For examples see
[ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) and
[MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy).
The `@PactTestFor` annotation allows you to control the mock server in the same way as the JUnit 4 `PactProviderRule`. It
allows you to set the hostname to bind to (default is `localhost`) and the port (default is to use a random port). You
can also set the Pact specification version to use (default is V3).
```java
@ExtendWith(PactConsumerTestExt.class)
@PactTestFor(providerName = "ArticlesProvider", port = "1234")
public class ExampleJavaConsumerPactTest {
```
**NOTE on the hostname**: The mock server runs in the same JVM as the test, so the only valid values for hostname are:
| hostname | result |
| -------- | ------ |
| `localhost` | binds to the address that localhost points to (normally the loopback adapter) |
| `127.0.0.1` or `::1` | binds to the loopback adapter |
| host name | binds to the default interface that the host machines DNS name resolves to |
| `0.0.0.0` or `::` | binds to the all interfaces on the host machine |
#### Matching the interactions by provider name
If you set the `providerName` on the `@PactTestFor` annotation, then the first method with a `@Pact` annotation with the
same provider name will be used. See [ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) for
an example.
#### Matching the interactions by method name
If you set the `pactMethod` on the `@PactTestFor` annotation, then the method with the provided name will be used (it still
needs a `@Pact` annotation). See [MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy) for an example.
### Injecting the mock server into the test
You can get the mock server injected into the test method by adding a `MockServer` parameter to the test method.
```java
@Test
void test(MockServer mockServer) {
HttpResponse httpResponse = Request.Get(mockServer.getUrl() + "/articles.json").execute().returnResponse();
assertThat(httpResponse.getStatusLine().getStatusCode(), is(equalTo(200)));
}
```
This helps with getting the base URL of the mock server, especially when a random port is used.
## Unsupported
The current implementation does not support tests with multiple providers. This will be added in a later release.
Group: au.com.dius Artifact: pact-jvm-consumer-junit5_2.11
Show all versions Show documentation Show source
Show all versions Show documentation Show source
1 downloads
Artifact pact-jvm-consumer-junit5_2.11
Group au.com.dius
Version 3.5.24
Last update 04. November 2018
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 9
Dependencies kotlin-stdlib-jdk8, kotlin-reflect, slf4j-api, groovy-all, kotlin-logging, scala-library, scala-logging_2.11, pact-jvm-consumer_2.11, junit-jupiter-api,
There are maybe transitive dependencies!
Group au.com.dius
Version 3.5.24
Last update 04. November 2018
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 9
Dependencies kotlin-stdlib-jdk8, kotlin-reflect, slf4j-api, groovy-all, kotlin-logging, scala-library, scala-logging_2.11, pact-jvm-consumer_2.11, junit-jupiter-api,
There are maybe transitive dependencies!
pact-jvm-consumer-junit5_2.12 from group au.com.dius (version 3.6.15)
pact-jvm-consumer-junit5
========================
JUnit 5 support for Pact consumer tests
## Dependency
The library is available on maven central using:
* group-id = `au.com.dius`
* artifact-id = `pact-jvm-consumer-junit5_2.12`
* version-id = `3.6.x`
## Usage
### 1. Add the Pact consumer test extension to the test class.
To write Pact consumer tests with JUnit 5, you need to add `@ExtendWith(PactConsumerTestExt)` to your test class. This
replaces the `PactRunner` used for JUnit 4 tests. The rest of the test follows a similar pattern as for JUnit 4 tests.
```java
@ExtendWith(PactConsumerTestExt.class)
class ExampleJavaConsumerPactTest {
```
### 2. create a method annotated with `@Pact` that returns the interactions for the test
For each test (as with JUnit 4), you need to define a method annotated with the `@Pact` annotation that returns the
interactions for the test.
```java
@Pact(provider="ArticlesProvider", consumer="test_consumer")
public RequestResponsePact createPact(PactDslWithProvider builder) {
return builder
.given("test state")
.uponReceiving("ExampleJavaConsumerPactTest test interaction")
.path("/articles.json")
.method("GET")
.willRespondWith()
.status(200)
.body("{\"responsetest\": true}")
.toPact();
}
```
### 3. Link the mock server with the interactions for the test with `@PactTestFor`
Then the final step is to use the `@PactTestFor` annotation to tell the Pact extension how to setup the Pact test. You
can either put this annotation on the test class, or on the test method. For examples see
[ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) and
[MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy).
The `@PactTestFor` annotation allows you to control the mock server in the same way as the JUnit 4 `PactProviderRule`. It
allows you to set the hostname to bind to (default is `localhost`) and the port (default is to use a random port). You
can also set the Pact specification version to use (default is V3).
```java
@ExtendWith(PactConsumerTestExt.class)
@PactTestFor(providerName = "ArticlesProvider")
public class ExampleJavaConsumerPactTest {
```
**NOTE on the hostname**: The mock server runs in the same JVM as the test, so the only valid values for hostname are:
| hostname | result |
| -------- | ------ |
| `localhost` | binds to the address that localhost points to (normally the loopback adapter) |
| `127.0.0.1` or `::1` | binds to the loopback adapter |
| host name | binds to the default interface that the host machines DNS name resolves to |
| `0.0.0.0` or `::` | binds to the all interfaces on the host machine |
#### Matching the interactions by provider name
If you set the `providerName` on the `@PactTestFor` annotation, then the first method with a `@Pact` annotation with the
same provider name will be used. See [ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) for
an example.
#### Matching the interactions by method name
If you set the `pactMethod` on the `@PactTestFor` annotation, then the method with the provided name will be used (it still
needs a `@Pact` annotation). See [MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy) for an example.
### Injecting the mock server into the test
You can get the mock server injected into the test method by adding a `MockServer` parameter to the test method.
```java
@Test
void test(MockServer mockServer) throws IOException {
HttpResponse httpResponse = Request.Get(mockServer.getUrl() + "/articles.json").execute().returnResponse();
assertThat(httpResponse.getStatusLine().getStatusCode(), is(equalTo(200)));
}
```
This helps with getting the base URL of the mock server, especially when a random port is used.
## Changing the directory pact files are written to
By default, pact files are written to `target/pacts` (or `build/pacts` if you use Gradle), but this can be overwritten with the `pact.rootDir` system property.
This property needs to be set on the test JVM as most build tools will fork a new JVM to run the tests.
For Gradle, add this to your build.gradle:
```groovy
test {
systemProperties['pact.rootDir'] = "$buildDir/custom-pacts-directory"
}
```
For maven, use the systemPropertyVariables configuration:
```xml
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18</version>
<configuration>
<systemPropertyVariables>
<pact.rootDir>some/other/directory</pact.rootDir>
<buildDirectory>${project.build.directory}</buildDirectory>
[...]
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
```
For SBT:
```scala
fork in Test := true,
javaOptions in Test := Seq("-Dpact.rootDir=some/other/directory")
```
### Using `@PactFolder` annotation [3.6.2+]
You can override the directory the pacts are written in a test by adding the `@PactFolder` annotation to the test
class.
## Forcing pact files to be overwritten (3.6.5+)
By default, when the pact file is written, it will be merged with any existing pact file. To force the file to be
overwritten, set the Java system property `pact.writer.overwrite` to `true`.
## Unsupported
The current implementation does not support tests with multiple providers. This will be added in a later release.
# Having values injected from provider state callbacks (3.6.11+)
You can have values from the provider state callbacks be injected into most places (paths, query parameters, headers,
bodies, etc.). This works by using the V3 spec generators with provider state callbacks that return values. One example
of where this would be useful is API calls that require an ID which would be auto-generated by the database on the
provider side, so there is no way to know what the ID would be beforehand.
The following DSL methods all you to set an expression that will be parsed with the values returned from the provider states:
For JSON bodies, use `valueFromProviderState`.<br/>
For headers, use `headerFromProviderState`.<br/>
For query parameters, use `queryParameterFromProviderState`.<br/>
For paths, use `pathFromProviderState`.
For example, assume that an API call is made to get the details of a user by ID. A provider state can be defined that
specifies that the user must be exist, but the ID will be created when the user is created. So we can then define an
expression for the path where the ID will be replaced with the value returned from the provider state callback.
```java
.pathFromProviderState("/api/users/${id}", "/api/users/100")
```
You can also just use the key instead of an expression:
```java
.valueFromProviderState('userId', 'userId', 100) // will look value using userId as the key
```
Group: au.com.dius Artifact: pact-jvm-consumer-junit5_2.12
Show all versions Show documentation Show source
Show all versions Show documentation Show source
3 downloads
Artifact pact-jvm-consumer-junit5_2.12
Group au.com.dius
Version 3.6.15
Last update 29. April 2020
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 2
Dependencies pact-jvm-consumer_2.12, junit-jupiter-api,
There are maybe transitive dependencies!
Group au.com.dius
Version 3.6.15
Last update 29. April 2020
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 2
Dependencies pact-jvm-consumer_2.12, junit-jupiter-api,
There are maybe transitive dependencies!
pact-jvm-consumer-junit5 from group au.com.dius (version 4.0.10)
pact-jvm-consumer-junit5
========================
JUnit 5 support for Pact consumer tests
## Dependency
The library is available on maven central using:
* group-id = `au.com.dius`
* artifact-id = `pact-jvm-consumer-junit5`
* version-id = `4.0.x`
## Usage
### 1. Add the Pact consumer test extension to the test class.
To write Pact consumer tests with JUnit 5, you need to add `@ExtendWith(PactConsumerTestExt)` to your test class. This
replaces the `PactRunner` used for JUnit 4 tests. The rest of the test follows a similar pattern as for JUnit 4 tests.
```java
@ExtendWith(PactConsumerTestExt.class)
class ExampleJavaConsumerPactTest {
```
### 2. create a method annotated with `@Pact` that returns the interactions for the test
For each test (as with JUnit 4), you need to define a method annotated with the `@Pact` annotation that returns the
interactions for the test.
```java
@Pact(provider="ArticlesProvider", consumer="test_consumer")
public RequestResponsePact createPact(PactDslWithProvider builder) {
return builder
.given("test state")
.uponReceiving("ExampleJavaConsumerPactTest test interaction")
.path("/articles.json")
.method("GET")
.willRespondWith()
.status(200)
.body("{\"responsetest\": true}")
.toPact();
}
```
### 3. Link the mock server with the interactions for the test with `@PactTestFor`
Then the final step is to use the `@PactTestFor` annotation to tell the Pact extension how to setup the Pact test. You
can either put this annotation on the test class, or on the test method. For examples see
[ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) and
[MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy).
The `@PactTestFor` annotation allows you to control the mock server in the same way as the JUnit 4 `PactProviderRule`. It
allows you to set the hostname to bind to (default is `localhost`) and the port (default is to use a random port). You
can also set the Pact specification version to use (default is V3).
```java
@ExtendWith(PactConsumerTestExt.class)
@PactTestFor(providerName = "ArticlesProvider")
public class ExampleJavaConsumerPactTest {
```
**NOTE on the hostname**: The mock server runs in the same JVM as the test, so the only valid values for hostname are:
| hostname | result |
| -------- | ------ |
| `localhost` | binds to the address that localhost points to (normally the loopback adapter) |
| `127.0.0.1` or `::1` | binds to the loopback adapter |
| host name | binds to the default interface that the host machines DNS name resolves to |
| `0.0.0.0` or `::` | binds to the all interfaces on the host machine |
#### Matching the interactions by provider name
If you set the `providerName` on the `@PactTestFor` annotation, then the first method with a `@Pact` annotation with the
same provider name will be used. See [ArticlesTest](src/test/java/au/com/dius/pact/consumer/junit5/ArticlesTest.java) for
an example.
#### Matching the interactions by method name
If you set the `pactMethod` on the `@PactTestFor` annotation, then the method with the provided name will be used (it still
needs a `@Pact` annotation). See [MultiTest](src/test/groovy/au/com/dius/pact/consumer/junit5/MultiTest.groovy) for an example.
### Injecting the mock server into the test
You can get the mock server injected into the test method by adding a `MockServer` parameter to the test method.
```java
@Test
void test(MockServer mockServer) throws IOException {
HttpResponse httpResponse = Request.Get(mockServer.getUrl() + "/articles.json").execute().returnResponse();
assertThat(httpResponse.getStatusLine().getStatusCode(), is(equalTo(200)));
}
```
This helps with getting the base URL of the mock server, especially when a random port is used.
## Changing the directory pact files are written to
By default, pact files are written to `target/pacts` (or `build/pacts` if you use Gradle), but this can be overwritten with the `pact.rootDir` system property.
This property needs to be set on the test JVM as most build tools will fork a new JVM to run the tests.
For Gradle, add this to your build.gradle:
```groovy
test {
systemProperties['pact.rootDir'] = "$buildDir/custom-pacts-directory"
}
```
For maven, use the systemPropertyVariables configuration:
```xml
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18</version>
<configuration>
<systemPropertyVariables>
<pact.rootDir>some/other/directory</pact.rootDir>
<buildDirectory>${project.build.directory}</buildDirectory>
[...]
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
```
For SBT:
```scala
fork in Test := true,
javaOptions in Test := Seq("-Dpact.rootDir=some/other/directory")
```
### Using `@PactFolder` annotation
You can override the directory the pacts are written in a test by adding the `@PactFolder` annotation to the test
class.
## Forcing pact files to be overwritten (3.6.5+)
By default, when the pact file is written, it will be merged with any existing pact file. To force the file to be
overwritten, set the Java system property `pact.writer.overwrite` to `true`.
## Unsupported
The current implementation does not support tests with multiple providers. This will be added in a later release.
# Having values injected from provider state callbacks (3.6.11+)
You can have values from the provider state callbacks be injected into most places (paths, query parameters, headers,
bodies, etc.). This works by using the V3 spec generators with provider state callbacks that return values. One example
of where this would be useful is API calls that require an ID which would be auto-generated by the database on the
provider side, so there is no way to know what the ID would be beforehand.
The following DSL methods all you to set an expression that will be parsed with the values returned from the provider states:
For JSON bodies, use `valueFromProviderState`.<br/>
For headers, use `headerFromProviderState`.<br/>
For query parameters, use `queryParameterFromProviderState`.<br/>
For paths, use `pathFromProviderState`.
For example, assume that an API call is made to get the details of a user by ID. A provider state can be defined that
specifies that the user must be exist, but the ID will be created when the user is created. So we can then define an
expression for the path where the ID will be replaced with the value returned from the provider state callback.
```java
.pathFromProviderState("/api/users/${id}", "/api/users/100")
```
You can also just use the key instead of an expression:
```java
.valueFromProviderState('userId', 'userId', 100) // will look value using userId as the key
```
Group: au.com.dius Artifact: pact-jvm-consumer-junit5
Show all versions Show documentation Show source
Show all versions Show documentation Show source
0 downloads
Artifact pact-jvm-consumer-junit5
Group au.com.dius
Version 4.0.10
Last update 18. April 2020
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 2
Dependencies junit-jupiter-api, pact-jvm-consumer,
There are maybe transitive dependencies!
Group au.com.dius
Version 4.0.10
Last update 18. April 2020
Newest version Yes
Organization not specified
URL https://github.com/DiUS/pact-jvm
License Apache 2
Dependencies amount 2
Dependencies junit-jupiter-api, pact-jvm-consumer,
There are maybe transitive dependencies!
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
Page 166 from 167 (items total 1666)