Include actual state in test entity assert failures

Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/94c71834
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/94c71834
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/94c71834

Branch: refs/heads/master
Commit: 94c7183454a95c02b7622684187f240883748474
Parents: 246a25f
Author: Svetoslav Neykov <[email protected]>
Authored: Thu Jul 21 17:53:46 2016 +0300
Committer: Svetoslav Neykov <[email protected]>
Committed: Mon Jul 25 15:44:04 2016 +0300

----------------------------------------------------------------------
 .../test/framework/TestFrameworkAssertions.java | 31 +++++++++++---------
 .../framework/TestFrameworkAssertionsTest.java  |  4 +--
 .../test/framework/TestSshCommandTest.java      |  8 ++---
 3 files changed, 23 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/94c71834/test-framework/src/main/java/org/apache/brooklyn/test/framework/TestFrameworkAssertions.java
----------------------------------------------------------------------
diff --git 
a/test-framework/src/main/java/org/apache/brooklyn/test/framework/TestFrameworkAssertions.java
 
b/test-framework/src/main/java/org/apache/brooklyn/test/framework/TestFrameworkAssertions.java
index 6bbeb61..067ac2f 100644
--- 
a/test-framework/src/main/java/org/apache/brooklyn/test/framework/TestFrameworkAssertions.java
+++ 
b/test-framework/src/main/java/org/apache/brooklyn/test/framework/TestFrameworkAssertions.java
@@ -175,67 +175,70 @@ public class TestFrameworkAssertions {
                 case EQUAL_TO :
                 case EQUALS :
                     if (null == actual || !actual.equals(expected)) {
-                        failAssertion(target, EQUALS, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case NOT_EQUAL :
                     if (Objects.equals(actual, expected)) {
-                        failAssertion(target, NOT_EQUAL, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                 case IS_NULL :
                     if (isTrue(expected) != (null == actual)) {
-                        failAssertion(target, IS_NULL, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case NOT_NULL :
                     if (isTrue(expected) != (null != actual)) {
-                        failAssertion(target, NOT_NULL, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case CONTAINS :
                     if (null == actual || 
!actual.toString().contains(expected.toString())) {
-                        failAssertion(target, CONTAINS, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case IS_EMPTY :
                     if (isTrue(expected) != (null == actual || 
Strings.isEmpty(actual.toString()))) {
-                        failAssertion(target, IS_EMPTY, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case NOT_EMPTY :
                     if (isTrue(expected) != ((null != actual && 
Strings.isNonEmpty(actual.toString())))) {
-                        failAssertion(target, NOT_EMPTY, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case MATCHES :
                     if (null == actual || 
!actual.toString().matches(expected.toString())) {
-                        failAssertion(target, MATCHES, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 case HAS_TRUTH_VALUE :
                     if (isTrue(expected) != isTrue(actual)) {
-                        failAssertion(target, HAS_TRUTH_VALUE, expected);
+                        failAssertion(target, condition, expected, actual);
                     }
                     break;
 
                 default:
-                    failAssertion(target, UNKNOWN_CONDITION, condition);
+                    failAssertion(target, UNKNOWN_CONDITION, condition, 
actual);
             }
         }
     }
 
-    static void failAssertion(String target, String assertion, Object 
expected) {
+    static void failAssertion(String target, String assertion, Object 
expected, Object actual) {
         throw new AssertionError(Joiner.on(' ').join(
-            null != target ? target : "null",
-            null != assertion ? assertion : "null",
-            null != expected ? expected : "null"));
+            Objects.toString(target),
+            "expected",
+            Objects.toString(assertion),
+            Objects.toString(expected),
+            "but found",
+            Objects.toString(actual)));
     }
 
     private static boolean isTrue(Object object) {

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/94c71834/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestFrameworkAssertionsTest.java
----------------------------------------------------------------------
diff --git 
a/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestFrameworkAssertionsTest.java
 
b/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestFrameworkAssertionsTest.java
index d070ee9..f0c3157 100644
--- 
a/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestFrameworkAssertionsTest.java
+++ 
b/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestFrameworkAssertionsTest.java
@@ -85,8 +85,8 @@ public class TestFrameworkAssertionsTest {
     public Object[][] negativeTestsDP() {
         String arbitrary = Identifiers.makeRandomId(8);
         return new Object[][]{
-                {"some-sensor-value", "equals", arbitrary, 
Arrays.asList(ImmutableMap.of("isEqualTo", arbitrary))},
-                {"some-sensor-value", "equals", arbitrary, 
Arrays.asList(ImmutableMap.of("equalTo", arbitrary))},
+                {"some-sensor-value", "isEqualTo", arbitrary, 
Arrays.asList(ImmutableMap.of("isEqualTo", arbitrary))},
+                {"some-sensor-value", "equalTo", arbitrary, 
Arrays.asList(ImmutableMap.of("equalTo", arbitrary))},
                 {"some-sensor-value", "equals", arbitrary, 
Arrays.asList(ImmutableMap.of("equals", arbitrary))},
 
                 {"some-sensor-value", "notEqual", "some-sensor-value", 
Arrays.asList(ImmutableMap.of("notEqual", "some-sensor-value"))},

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/94c71834/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestSshCommandTest.java
----------------------------------------------------------------------
diff --git 
a/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestSshCommandTest.java
 
b/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestSshCommandTest.java
index e3ea450..344c53d 100644
--- 
a/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestSshCommandTest.java
+++ 
b/test-framework/src/test/java/org/apache/brooklyn/test/framework/TestSshCommandTest.java
@@ -147,7 +147,7 @@ public class TestSshCommandTest extends 
BrooklynAppUnitTestSupport {
             app.start(ImmutableList.<Location>of());
             Asserts.shouldHaveFailedPreviously();
         } catch (Throwable t) {
-            Asserts.expectedFailureContains(t, "exit code equals 0");
+            Asserts.expectedFailureContains(t, "exit code expected equals 0 
but found 1");
         }
 
         assertEntityFailed(test);
@@ -184,7 +184,7 @@ public class TestSshCommandTest extends 
BrooklynAppUnitTestSupport {
             app.start(ImmutableList.<Location>of());
             Asserts.shouldHaveFailedPreviously();
         } catch (Throwable t) {
-            Asserts.expectedFailureContains(t, "stdout contains mystdout");
+            Asserts.expectedFailureContains(t, "stdout expected contains 
mystdout but found wrongstdout");
         }
 
         assertEntityFailed(test);
@@ -204,7 +204,7 @@ public class TestSshCommandTest extends 
BrooklynAppUnitTestSupport {
             app.start(ImmutableList.<Location>of());
             Asserts.shouldHaveFailedPreviously();
         } catch (Throwable t) {
-            Asserts.expectedFailureContains(t, "stderr contains mystderr");
+            Asserts.expectedFailureContains(t, "stderr expected contains 
mystderr but found wrongstderr");
         }
 
         assertEntityFailed(test);
@@ -225,7 +225,7 @@ public class TestSshCommandTest extends 
BrooklynAppUnitTestSupport {
             app.start(ImmutableList.<Location>of());
             Asserts.shouldHaveFailedPreviously();
         } catch (Exception e) {
-            Asserts.expectedFailureContains(e, "exit code equals 1", "exit 
code equals 255");
+            Asserts.expectedFailureContains(e, "exit code expected equals 1 
but found 0", "exit code expected equals 255 but found 0");
         }
 
         assertEntityFailed(test);

Reply via email to