Fix #217 - expand ExpressionFactory.coerceToType() tests

If the call to toString() fails, the client should still see an
ELException
diff --git a/tck/src/main/java/com/sun/ts/tests/el/api/jakarta_el/expressionfactory/ELClientIT.java b/tck/src/main/java/com/sun/ts/tests/el/api/jakarta_el/expressionfactory/ELClientIT.java
index c76219a..ab6612d 100644
--- a/tck/src/main/java/com/sun/ts/tests/el/api/jakarta_el/expressionfactory/ELClientIT.java
+++ b/tck/src/main/java/com/sun/ts/tests/el/api/jakarta_el/expressionfactory/ELClientIT.java
@@ -452,7 +452,8 @@
         new ObjectAndType(Integer.valueOf(1), Float.class),
         new ObjectAndType("10000", Long.class),
         new ObjectAndType("no value", Boolean.class),
-        new ObjectAndType(null, null) };
+        new ObjectAndType(null, null),
+        new ObjectAndType(new NotBrokenToString(), String.class) };
 
     ExpressionFactory expFactory = ExpressionFactory.newInstance();
 
@@ -500,7 +501,8 @@
         new ObjectAndType(Boolean.TRUE, Character.class),
         new ObjectAndType(Boolean.TRUE, Float.class),
         new ObjectAndType("non-numeric string", Long.class),
-        new ObjectAndType(Integer.valueOf(1), Class.class) };
+        new ObjectAndType(Integer.valueOf(1), Class.class),
+        new ObjectAndType(new BrokenToString(), String.class) };
 
     ExpressionFactory expFactory = ExpressionFactory.newInstance();
 
@@ -535,4 +537,21 @@
       this.type = type;
     }
   }
+
+  private static class NotBrokenToString {
+
+    @Override
+    public String toString() {
+      return "Data";
+    }
+  }
+
+
+  private static class BrokenToString {
+
+    @Override
+    public String toString() {
+      throw new IllegalStateException();
+    }
+  }
 }