-- Leo's gemini proxy
-- Connecting to republic.circumlunar.space:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
By default, Gradle does not show you what happened when a unit test failed:
$ ./gradlew test ... MyTest > Black_is_white FAILED org.junit.ComparisonFailure at MyTest.java:6 ^^^ WHAT ACTUALLY FAILED???? ...
This is insane, and can be fixed (thanks to mrhaki) by editing build.gradle to add:
// NOTE: this is the non-Android solution - add to build.gradle test { testLogging { exceptionFormat = 'full' } }
The above doesn't work with Android, but something similar does:
// Android solution: add this to app/build.gradle android.testOptions.unitTests.all { testLogging { exceptionFormat = "full" } }
And sanity prevails:
$ ./gradlew test ... MyTest > Black_is_white FAILED org.junit.ComparisonFailure: expected:<[black]> but was:<[white]> at org.junit.Assert.assertEquals(Assert.java:115) at org.junit.Assert.assertEquals(Assert.java:144) at MyTest.Black_is_white(MyTest.java:6) ...
$ cat build.gradle apply plugin: 'java' repositories { mavenCentral() } dependencies { testCompile 'junit:junit:[4,)' } test { testLogging { exceptionFormat = 'full' } } $ cat src/test/java/MyTest.java public class MyTest { @org.junit.Test public void Black_is_white() { org.junit.Assert.assertEquals("black", "white"); } }
$ cat build.gradle buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.3.1' } } allprojects { repositories { jcenter() } } $ cat app/src/main/AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="net.artificialworlds.testapp"> </manifest> $ cat app/src/test/java/MyTest.java public class MyTest { @org.junit.Test public void Black_is_white() { org.junit.Assert.assertEquals("black", "white"); } } $ cat build.gradle buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.3.1' } } allprojects { repositories { jcenter() } } $ cat local.properties sdk.dir=/home/andy/Android/Sdk $ cat settings.gradle include ':app'
Originally posted at 2017-05-09 23:30:05+00:00. Automatically generated from the original post : apologies for the errors introduced.
-- Response ended
-- Page fetched on Sun May 19 05:44:40 2024