001: package net.sf.mockcreator.expectable;
002:
003: import net.sf.mockcreator.TestCase;
004: import net.sf.mockcreator.expectable.ExpectFloat;
005: import net.sf.mockcreator.exceptions.MockException;
006:
007: public class ExpectFloatTest extends TestCase {
008:
009: public ExpectFloatTest(String name) {
010: super (name);
011: }
012:
013: public void testFloatAndError() {
014: ExpectFloat ef = new ExpectFloat(1.0f, 0.1f);
015: checkFourPoints(ef, 0.95f, 1.05f, 0.85f, 1.15f);
016: ef.toString();
017: }
018:
019: public void testDoubleAndError() {
020: ExpectFloat ef = new ExpectFloat(1.0, 0.1);
021: checkFourPoints(ef, 0.95f, 1.05f, 0.85f, 1.15f);
022: }
023:
024: public void testDoubleFromTill() {
025: ExpectFloat ef = new ExpectFloat(new Double(0.90), new Double(
026: 1.10));
027: checkFourPoints(ef, 0.95f, 1.05f, 0.85f, 1.15f);
028: }
029:
030: public void testFloatFromTill() {
031: ExpectFloat ef = new ExpectFloat(new Float(0.90), new Float(
032: 1.10));
033: checkFourPoints(ef, 0.95f, 1.05f, 0.85f, 1.15f);
034: }
035:
036: public void testNegative() {
037: ExpectFloat ef = new ExpectFloat(new Float(-1.10), new Float(
038: -0.90));
039: checkFourPoints(ef, -0.95f, -1.05f, -0.85f, -1.15f);
040: }
041:
042: public void testUpperUnboundedFloat() {
043: ExpectFloat ef = new ExpectFloat(new Float(10), null);
044: checkFourPoints(ef, 10.1f, 100000f, -1f, 9f);
045: }
046:
047: public void testLowerUnboundedFloat() {
048: ExpectFloat ef = new ExpectFloat(null, new Float(10));
049: checkFourPoints(ef, -10000f, 9.99f, 10.1f, 10000f);
050: }
051:
052: public void testUpperUnboundedDouble() {
053: ExpectFloat ef = new ExpectFloat(new Double(10), null);
054: checkFourPoints(ef, 10.1f, 100000f, -1f, 9f);
055: }
056:
057: public void testLowerUnboundedDouble() {
058: ExpectFloat ef = new ExpectFloat(null, new Double(10));
059: checkFourPoints(ef, -10000f, 9.99f, 10.1f, 10000f);
060: }
061:
062: public void testUnboundedBoth() {
063: try {
064: new ExpectFloat((Float) null, null);
065: fail();
066: } catch (IllegalArgumentException ex) {
067: // okay
068: }
069: }
070:
071: public void testWrongOrder() {
072: try {
073: new ExpectFloat(new Float(-0.90), new Float(-1.10));
074: fail();
075: } catch (IllegalArgumentException ex) {
076: // okay
077: }
078: }
079:
080: public void testZeroDeviation() {
081: try {
082: new ExpectFloat(1.0, 0);
083: fail();
084: } catch (IllegalArgumentException ex) {
085: // okay
086: }
087: }
088:
089: public void testNegativeDeviation() {
090: try {
091: new ExpectFloat(1.0, -0.5);
092: fail();
093: } catch (IllegalArgumentException ex) {
094: // okay
095: }
096: }
097:
098: public void testNullActual() {
099: ExpectableParameter ep = new ExpectFloat(1.0, 0.5);
100: assertFalse(ep.isExpected(null));
101: }
102:
103: public void testNonFloatActual() {
104: ExpectableParameter ep = new ExpectFloat(1.0, 0.5);
105: assertFalse(ep.isExpected("Foo"));
106: }
107:
108: private void checkFourPoints(ExpectFloat ef, float ok1, float ok2,
109: float fail1, float fail2) {
110: assertTrue(ef.isExpected(new Float(ok1)));
111: assertTrue(ef.isExpected(new Float(ok2)));
112: assertFalse(ef.isExpected(new Float(fail1)));
113: assertFalse(ef.isExpected(new Float(fail2)));
114:
115: double dok1 = ok1;
116: double dok2 = ok2;
117: double dfl1 = fail1;
118: double dfl2 = fail2;
119: assertTrue(ef.isExpected(new Double(dok1)));
120: assertTrue(ef.isExpected(new Double(dok2)));
121: assertFalse(ef.isExpected(new Double(dfl1)));
122: assertFalse(ef.isExpected(new Double(dfl2)));
123: }
124: }
|