Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.ufsoares-luizalabs:assertk-core:1.0.0-beta.3'
}
dependencies {
implementation("com.github.ufsoares-luizalabs:assertk-core:1.0.0-beta.3")
}
<dependency>
<groupId>com.github.ufsoares-luizalabs</groupId>
<artifactId>assertk-core</artifactId>
<version>1.0.0-beta.3</version>
</dependency>
libraryDependencies += "com.github.ufsoares-luizalabs" % "assertk-core" % "1.0.0-beta.3"
:dependencies [[com.github.ufsoares-luizalabs/assertk-core "1.0.0-beta.3"]]
AssertK provides a Kotlin-friendly syntax for using the amazing AssertJ assertion framework.
###Simple assertions
assert that Unit isEqualTo Unit
you can use assert that
or expect that
interchangeably as assert
tends to be a bit noisy when trying to autocomplete the statement.
expect that Any() isNotEqualTo Any()
expect that Any() shouldBe notNull
expect that nullObject shouldBe null
expect that anObject isInstance of<Any>()
expect that Any() describedAs "A labeled object" isInstance of<Unit>()
###Chained syntax
expect that Unit isNotEqualTo Any() isEqualTo Unit shouldBe notNull isInstance of<Any>()
###Block syntax
expect that Any() isSuchThat {
it shouldBe notNull
it isInstance of<Any>()
it isNotEqualTo Unit
it isNotEqualTo Any()
}
##Assertions on exceptions ###Chained syntax
expect thatExceptionIsThrownBy { failFunction() } hasMessageContaining "foo" hasCause Throwable()
###Block syntax
expect thatExceptionIsThrownBy {
throw Throwable("exception foo", Throwable())
} and {
it hasMessage "exception foo"
it hasCause Throwable()
it hasCauseExactlyInstanceOf Throwable::class.java
it hasMessageContaining "foo"
it hasMessageStartingWith "ex"
it hasMessageEndingWith "foo"
}
#Further Examples ##Iterable Assert
expect that myListOfInts hasSize 10 contains 3 startsWith 1
##Boolean Assert
expect that myBoolean shouldBe false
##Float, Double, Int, Long Assert
expect that myFloat isGreaterThan otherFloat
expect that myInt shouldBe notPositive isLessThan expectedResult
##Get it
allprojects {
repositories {
...
maven { url "https://jitpack.io" }
}
}
dependencies {
...
testCompile 'com.github.memoizr:assertk-core:0.1.0'
...
}
####License Copyright 2016 memoizr
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.