ufsoares-luizalabs/assertk-core


A Kotlin-friendly wrapper for AssertJ

Download


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"]]
        
        

Readme


Build Status GitHub license codecov

AssertK - Fluent assertions for Kotlin

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.