// This file was generated by jmlunit on Mon Mar 16 13:16:26 EDT 2009. package org.jmlspecs.samples.dbc; /** Automatically-generated test driver for JML and JUnit based * testing of Complex. The superclass of this class should be edited * to supply test data. However it's best not to edit this class * directly; instead use the command *
* jmlunit Complex.java ** to regenerate this class whenever Complex.java changes. */ public class Complex_JML_Test extends Complex_JML_TestData { /** Initialize this class. */ public Complex_JML_Test(java.lang.String name) { super(name); } /** Run the tests. */ public static void main(java.lang.String[] args) { org.jmlspecs.jmlunit.JMLTestRunner.run(suite()); // You can also use a JUnit test runner such as: // junit.textui.TestRunner.run(suite()); } /** Test to see if the code for interface Complex * has been compiled with runtime assertion checking (i.e., by jmlc). * Code that is not compiled with jmlc would not make an effective test, * since no assertion checking would be done. */ public void test$IsRACCompiled() { junit.framework.Assert.assertTrue("code for interface Complex" + " was not compiled with jmlc" + " so no assertions will be checked!", org.jmlspecs.jmlrac.runtime.JMLChecker.isRACCompiled(Complex.class) ); } /** Return the test suite for this test class. This will have * added to it at least test$IsRACCompiled(), and any test methods * written explicitly by the user in the superclass. It will also * have added test suites for each testing each method and * constructor. */ //@ ensures \result != null; public static junit.framework.Test suite() { Complex_JML_Test testobj = new Complex_JML_Test("Complex_JML_Test"); junit.framework.TestSuite testsuite = testobj.overallTestSuite(); // Add instances of Test found by the reflection mechanism. testsuite.addTestSuite(Complex_JML_Test.class); testobj.addTestSuiteForEachMethod(testsuite); return testsuite; } /** A JUnit test object that can run a single test method. This * is defined as a nested class solely for convenience; it can't * be defined once and for all because it must subclass its * enclosing class. */ protected static abstract class OneTest extends Complex_JML_Test { /** Initialize this test object. */ public OneTest(String name) { super(name); } /** The result object that holds information about testing. */ protected junit.framework.TestResult result; //@ also //@ requires result != null; public void run(junit.framework.TestResult result) { this.result = result; super.run(result); } /* Run a single test and decide whether the test was * successful, meaningless, or a failure. This is the * Template Method pattern abstraction of the inner loop in a * JML/JUnit test. */ public void runTest() throws java.lang.Throwable { try { // The call being tested! doCall(); } catch (org.jmlspecs.jmlrac.runtime.JMLEntryPreconditionError e) { // meaningless test input addMeaningless(); } catch (org.jmlspecs.jmlrac.runtime.JMLAssertionError e) { // test failure int l = org.jmlspecs.jmlrac.runtime.JMLChecker.getLevel(); org.jmlspecs.jmlrac.runtime.JMLChecker.setLevel (org.jmlspecs.jmlrac.runtime.JMLOption.NONE); try { java.lang.String failmsg = this.failMessage(e); junit.framework.AssertionFailedError err = new junit.framework.AssertionFailedError(failmsg); err.setStackTrace(new java.lang.StackTraceElement[]{}); err.initCause(e); result.addFailure(this, err); } finally { org.jmlspecs.jmlrac.runtime.JMLChecker.setLevel(l); } } catch (java.lang.Throwable e) { // test success } } /** Call the method to be tested with the appropriate arguments. */ protected abstract void doCall() throws java.lang.Throwable; /** Format the error message for a test failure, based on the * method's arguments. */ protected abstract java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e); /** Inform listeners that a meaningless test was run. */ private void addMeaningless() { if (result instanceof org.jmlspecs.jmlunit.JMLTestResult) { ((org.jmlspecs.jmlunit.JMLTestResult)result) .addMeaningless(this); } } } /** Create the tests that are to be run for testing the class * Complex. The framework will then run them. * @param overallTestSuite$ The suite accumulating all of the tests * for this driver class. */ //@ requires overallTestSuite$ != null; public void addTestSuiteForEachMethod (junit.framework.TestSuite overallTestSuite$) { try { this.addTestSuiteFor$TestRealPart(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestImaginaryPart(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestMagnitude(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestAngle(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestAdd(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestSub(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestMul(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestDiv(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestEquals(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } try { this.addTestSuiteFor$TestHashCode(overallTestSuite$); } catch (java.lang.Throwable ex) { overallTestSuite$.addTest (new org.jmlspecs.jmlunit.strategies.ConstructorFailed(ex)); } } /** Add tests for the realPart method * to the overall test suite. */ private void addTestSuiteFor$TestRealPart (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("realPart"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("realPart", 0)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"realPart\", 0))"); while (!receivers$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); methodTests$.addTest (new TestRealPart(receiver$)); receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the realPart method. */ protected static class TestRealPart extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Initialize this instance. */ public TestRealPart(org.jmlspecs.samples.dbc.Complex receiver$) { super("realPart"); this.receiver$ = receiver$; } protected void doCall() throws java.lang.Throwable { receiver$.realPart(); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'realPart' applied to"; msg += "\n\tReceiver: " + this.receiver$; return msg; } } /** Add tests for the imaginaryPart method * to the overall test suite. */ private void addTestSuiteFor$TestImaginaryPart (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("imaginaryPart"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("imaginaryPart", 0)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"imaginaryPart\", 0))"); while (!receivers$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); methodTests$.addTest (new TestImaginaryPart(receiver$)); receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the imaginaryPart method. */ protected static class TestImaginaryPart extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Initialize this instance. */ public TestImaginaryPart(org.jmlspecs.samples.dbc.Complex receiver$) { super("imaginaryPart"); this.receiver$ = receiver$; } protected void doCall() throws java.lang.Throwable { receiver$.imaginaryPart(); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'imaginaryPart' applied to"; msg += "\n\tReceiver: " + this.receiver$; return msg; } } /** Add tests for the magnitude method * to the overall test suite. */ private void addTestSuiteFor$TestMagnitude (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("magnitude"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("magnitude", 0)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"magnitude\", 0))"); while (!receivers$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); methodTests$.addTest (new TestMagnitude(receiver$)); receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the magnitude method. */ protected static class TestMagnitude extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Initialize this instance. */ public TestMagnitude(org.jmlspecs.samples.dbc.Complex receiver$) { super("magnitude"); this.receiver$ = receiver$; } protected void doCall() throws java.lang.Throwable { receiver$.magnitude(); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'magnitude' applied to"; msg += "\n\tReceiver: " + this.receiver$; return msg; } } /** Add tests for the angle method * to the overall test suite. */ private void addTestSuiteFor$TestAngle (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("angle"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("angle", 0)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"angle\", 0))"); while (!receivers$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); methodTests$.addTest (new TestAngle(receiver$)); receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the angle method. */ protected static class TestAngle extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Initialize this instance. */ public TestAngle(org.jmlspecs.samples.dbc.Complex receiver$) { super("angle"); this.receiver$ = receiver$; } protected void doCall() throws java.lang.Throwable { receiver$.angle(); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'angle' applied to"; msg += "\n\tReceiver: " + this.receiver$; return msg; } } /** Add tests for the add method * to the overall test suite. */ private void addTestSuiteFor$TestAdd (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("add"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("add", 1)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"add\", 1))"); while (!receivers$iter.atEnd()) { org.jmlspecs.jmlunit.strategies.IndefiniteIterator vorg_jmlspecs_samples_dbc_Complex$1$iter = this.vorg_jmlspecs_samples_dbc_ComplexIter("add", 0); this.check_has_data (vorg_jmlspecs_samples_dbc_Complex$1$iter, "this.vorg_jmlspecs_samples_dbc_ComplexIter(\"add\", 0)"); while (!vorg_jmlspecs_samples_dbc_Complex$1$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); final org.jmlspecs.samples.dbc.Complex b = (org.jmlspecs.samples.dbc.Complex) vorg_jmlspecs_samples_dbc_Complex$1$iter.get(); methodTests$.addTest (new TestAdd(receiver$, b)); vorg_jmlspecs_samples_dbc_Complex$1$iter.advance(); } receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the add method. */ protected static class TestAdd extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Argument b */ private org.jmlspecs.samples.dbc.Complex b; /** Initialize this instance. */ public TestAdd(org.jmlspecs.samples.dbc.Complex receiver$, org.jmlspecs.samples.dbc.Complex b) { super("add"+ ":" + (b==null? "null" :"{org.jmlspecs.samples.dbc.Complex}")); this.receiver$ = receiver$; this.b = b; } protected void doCall() throws java.lang.Throwable { receiver$.add(b); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'add' applied to"; msg += "\n\tReceiver: " + this.receiver$; msg += "\n\tArgument b: " + this.b; return msg; } } /** Add tests for the sub method * to the overall test suite. */ private void addTestSuiteFor$TestSub (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("sub"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("sub", 1)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"sub\", 1))"); while (!receivers$iter.atEnd()) { org.jmlspecs.jmlunit.strategies.IndefiniteIterator vorg_jmlspecs_samples_dbc_Complex$1$iter = this.vorg_jmlspecs_samples_dbc_ComplexIter("sub", 0); this.check_has_data (vorg_jmlspecs_samples_dbc_Complex$1$iter, "this.vorg_jmlspecs_samples_dbc_ComplexIter(\"sub\", 0)"); while (!vorg_jmlspecs_samples_dbc_Complex$1$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); final org.jmlspecs.samples.dbc.Complex b = (org.jmlspecs.samples.dbc.Complex) vorg_jmlspecs_samples_dbc_Complex$1$iter.get(); methodTests$.addTest (new TestSub(receiver$, b)); vorg_jmlspecs_samples_dbc_Complex$1$iter.advance(); } receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the sub method. */ protected static class TestSub extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Argument b */ private org.jmlspecs.samples.dbc.Complex b; /** Initialize this instance. */ public TestSub(org.jmlspecs.samples.dbc.Complex receiver$, org.jmlspecs.samples.dbc.Complex b) { super("sub"+ ":" + (b==null? "null" :"{org.jmlspecs.samples.dbc.Complex}")); this.receiver$ = receiver$; this.b = b; } protected void doCall() throws java.lang.Throwable { receiver$.sub(b); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'sub' applied to"; msg += "\n\tReceiver: " + this.receiver$; msg += "\n\tArgument b: " + this.b; return msg; } } /** Add tests for the mul method * to the overall test suite. */ private void addTestSuiteFor$TestMul (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("mul"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("mul", 1)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"mul\", 1))"); while (!receivers$iter.atEnd()) { org.jmlspecs.jmlunit.strategies.IndefiniteIterator vorg_jmlspecs_samples_dbc_Complex$1$iter = this.vorg_jmlspecs_samples_dbc_ComplexIter("mul", 0); this.check_has_data (vorg_jmlspecs_samples_dbc_Complex$1$iter, "this.vorg_jmlspecs_samples_dbc_ComplexIter(\"mul\", 0)"); while (!vorg_jmlspecs_samples_dbc_Complex$1$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); final org.jmlspecs.samples.dbc.Complex b = (org.jmlspecs.samples.dbc.Complex) vorg_jmlspecs_samples_dbc_Complex$1$iter.get(); methodTests$.addTest (new TestMul(receiver$, b)); vorg_jmlspecs_samples_dbc_Complex$1$iter.advance(); } receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the mul method. */ protected static class TestMul extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Argument b */ private org.jmlspecs.samples.dbc.Complex b; /** Initialize this instance. */ public TestMul(org.jmlspecs.samples.dbc.Complex receiver$, org.jmlspecs.samples.dbc.Complex b) { super("mul"+ ":" + (b==null? "null" :"{org.jmlspecs.samples.dbc.Complex}")); this.receiver$ = receiver$; this.b = b; } protected void doCall() throws java.lang.Throwable { receiver$.mul(b); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'mul' applied to"; msg += "\n\tReceiver: " + this.receiver$; msg += "\n\tArgument b: " + this.b; return msg; } } /** Add tests for the div method * to the overall test suite. */ private void addTestSuiteFor$TestDiv (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("div"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("div", 1)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"div\", 1))"); while (!receivers$iter.atEnd()) { org.jmlspecs.jmlunit.strategies.IndefiniteIterator vorg_jmlspecs_samples_dbc_Complex$1$iter = this.vorg_jmlspecs_samples_dbc_ComplexIter("div", 0); this.check_has_data (vorg_jmlspecs_samples_dbc_Complex$1$iter, "this.vorg_jmlspecs_samples_dbc_ComplexIter(\"div\", 0)"); while (!vorg_jmlspecs_samples_dbc_Complex$1$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); final org.jmlspecs.samples.dbc.Complex b = (org.jmlspecs.samples.dbc.Complex) vorg_jmlspecs_samples_dbc_Complex$1$iter.get(); methodTests$.addTest (new TestDiv(receiver$, b)); vorg_jmlspecs_samples_dbc_Complex$1$iter.advance(); } receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the div method. */ protected static class TestDiv extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Argument b */ private org.jmlspecs.samples.dbc.Complex b; /** Initialize this instance. */ public TestDiv(org.jmlspecs.samples.dbc.Complex receiver$, org.jmlspecs.samples.dbc.Complex b) { super("div"+ ":" + (b==null? "null" :"{org.jmlspecs.samples.dbc.Complex}")); this.receiver$ = receiver$; this.b = b; } protected void doCall() throws java.lang.Throwable { receiver$.div(b); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'div' applied to"; msg += "\n\tReceiver: " + this.receiver$; msg += "\n\tArgument b: " + this.b; return msg; } } /** Add tests for the equals method * to the overall test suite. */ private void addTestSuiteFor$TestEquals (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("equals"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("equals", 1)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"equals\", 1))"); while (!receivers$iter.atEnd()) { org.jmlspecs.jmlunit.strategies.IndefiniteIterator vjava_lang_Object$1$iter = this.vjava_lang_ObjectIter("equals", 0); this.check_has_data (vjava_lang_Object$1$iter, "this.vjava_lang_ObjectIter(\"equals\", 0)"); while (!vjava_lang_Object$1$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); final java.lang.Object o = (java.lang.Object) vjava_lang_Object$1$iter.get(); methodTests$.addTest (new TestEquals(receiver$, o)); vjava_lang_Object$1$iter.advance(); } receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the equals method. */ protected static class TestEquals extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Argument o */ private java.lang.Object o; /** Initialize this instance. */ public TestEquals(org.jmlspecs.samples.dbc.Complex receiver$, java.lang.Object o) { super("equals"+ ":" + (o==null? "null" :"{java.lang.Object}")); this.receiver$ = receiver$; this.o = o; } protected void doCall() throws java.lang.Throwable { receiver$.equals(o); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'equals' applied to"; msg += "\n\tReceiver: " + this.receiver$; msg += "\n\tArgument o: " + this.o; return msg; } } /** Add tests for the hashCode method * to the overall test suite. */ private void addTestSuiteFor$TestHashCode (junit.framework.TestSuite overallTestSuite$) { junit.framework.TestSuite methodTests$ = this.emptyTestSuiteFor("hashCode"); try { org.jmlspecs.jmlunit.strategies.IndefiniteIterator receivers$iter = new org.jmlspecs.jmlunit.strategies.NonNullIteratorDecorator (this.vorg_jmlspecs_samples_dbc_ComplexIter("hashCode", 0)); this.check_has_data (receivers$iter, "new NonNullIteratorDecorator(this.vorg_jmlspecs_samples_dbc_ComplexIter(\"hashCode\", 0))"); while (!receivers$iter.atEnd()) { final org.jmlspecs.samples.dbc.Complex receiver$ = (org.jmlspecs.samples.dbc.Complex) receivers$iter.get(); methodTests$.addTest (new TestHashCode(receiver$)); receivers$iter.advance(); } } catch (org.jmlspecs.jmlunit.strategies.TestSuiteFullException e$) { // methodTests$ doesn't want more tests } overallTestSuite$.addTest(methodTests$); } /** Test for the hashCode method. */ protected static class TestHashCode extends OneTest { /** The receiver */ private org.jmlspecs.samples.dbc.Complex receiver$; /** Initialize this instance. */ public TestHashCode(org.jmlspecs.samples.dbc.Complex receiver$) { super("hashCode"); this.receiver$ = receiver$; } protected void doCall() throws java.lang.Throwable { receiver$.hashCode(); } protected java.lang.String failMessage (org.jmlspecs.jmlrac.runtime.JMLAssertionError e$) { java.lang.String msg = "\n\tMethod 'hashCode' applied to"; msg += "\n\tReceiver: " + this.receiver$; return msg; } } /** Check that the iterator is non-null and not empty. */ private void check_has_data(org.jmlspecs.jmlunit.strategies.IndefiniteIterator iter, String call) { if (iter == null) { junit.framework.Assert.fail(call + " returned null"); } if (iter.atEnd()) { junit.framework.Assert.fail(call + " returned an empty iterator"); } } /** Converts a char to a printable String for display */ public static String charToString(char c) { if (c == '\n') { return "NL"; } else if (c == '\r') { return "CR"; } else if (c == '\t') { return "TAB"; } else if (Character.isISOControl(c)) { int i = (int)c; return "\\u" + Character.forDigit((i/2048)%16,16) + Character.forDigit((i/256)%16,16) + Character.forDigit((i/16)%16,16) + Character.forDigit((i)%16,16); } return Character.toString(c); } }