edu.rice.cs.drjava.model
Class SingleDisplayModelTest

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by edu.rice.cs.drjava.DrJavaTestCase
              extended by edu.rice.cs.drjava.model.MultiThreadedTestCase
                  extended by edu.rice.cs.drjava.model.GlobalModelTestCase
                      extended by edu.rice.cs.drjava.model.SingleDisplayModelTest
All Implemented Interfaces:
Test

public class SingleDisplayModelTest
extends GlobalModelTestCase

Test functions of the single display model.

Version:
$Id: SingleDisplayModelTest.java 5175 2010-01-20 08:46:32Z mgricken $

Nested Class Summary
static class SingleDisplayModelTest.SDTestListener
          A GlobalModelListener for testing.
 
Nested classes/interfaces inherited from class edu.rice.cs.drjava.model.GlobalModelTestCase
GlobalModelTestCase.CancelingSelector, GlobalModelTestCase.CompileShouldFailListener, GlobalModelTestCase.CompileShouldSucceedListener, GlobalModelTestCase.FileMovedWarningException, GlobalModelTestCase.FileSelector, GlobalModelTestCase.InteractionListener, GlobalModelTestCase.JUnitNonTestListener, GlobalModelTestCase.JUnitTestListener, GlobalModelTestCase.OpenWarningException, GlobalModelTestCase.OverwriteException, GlobalModelTestCase.SaveCopyFileSelector, GlobalModelTestCase.TestGlobalModel, GlobalModelTestCase.TestListener, GlobalModelTestCase.WarningFileSelector
 
Nested classes/interfaces inherited from class junit.framework.TestCase
TestCase.WrappedException
 
Field Summary
 
Fields inherited from class edu.rice.cs.drjava.model.GlobalModelTestCase
_doc, _interactionsController, _log, _model, _tempDir, BAR_TEXT, BAZ_TEXT, FOO_MISSING_CLOSE_TEXT, FOO_PACKAGE_AFTER_IMPORT, FOO_PACKAGE_AS_FIELD, FOO_PACKAGE_AS_FIELD_2, FOO_PACKAGE_AS_PART_OF_FIELD, FOO_PACKAGE_INSIDE_CLASS, FOO_TEXT
 
Fields inherited from class edu.rice.cs.drjava.model.MultiThreadedTestCase
_testFailed
 
Constructor Summary
SingleDisplayModelTest()
           
 
Method Summary
protected  void assertActiveDocument(OpenDefinitionsDocument doc)
           
protected  void assertNotEmpty()
           
private  DefaultGlobalModel getSDModel()
          Get the instance of the SingleDisplayModel.
protected  OpenDefinitionsDocument setupDocument(java.lang.String text)
          Creates and returns a new document, makes sure newFile and activeDocumentChanged events are fired, and then adds some text.
 void testCloseFiles()
          Tests that active document is switched on close, and that a new file is created after the last one is closed.
 void testCloseUnmodifiedAutomatically()
          Ensures that an unmodified, empty document is closed after a file is opened, while a modified document is left open.
 void testCompleteFilename()
          Tests the getCompleteFileName method.
 void testDeleteFileBeforeCloseAll()
           
 void testDeleteFileWhileOpen()
           
 void testDocumentSwitching()
          Tests the setNext and setPrevious functions, making sure that the activeDocumentChanged event is called.
 void testNotEmptyOnStartup()
          Tests the invariant that at least one document is open at time of creation.
 
Methods inherited from class edu.rice.cs.drjava.model.GlobalModelTestCase
assertCompileErrorsPresent, assertCompileErrorsPresent, assertContents, assertInteractionsContains, assertInteractionsDoesNotContain, assertInteractionsDoesNotMatch, assertInteractionsMatches, assertLength, assertModified, assertNumOpenDocs, changeDocumentText, classForJava, createFile, doCompile, doCompile, getCompilerErrorString, getInteractionsText, interpret, interpretIgnoreResult, safeLoadHistory, safeSaveHistory, saveAllFiles, saveFile, saveFileAs, saveFileCopy, setUp, tearDown, tempDirectory, tempFile, tempFile, testStartCompile, writeToNewTempFile
 
Methods inherited from class edu.rice.cs.drjava.model.MultiThreadedTestCase
join, listenerFail, listenerFail, wait
 
Methods inherited from class edu.rice.cs.drjava.DrJavaTestCase
setConfigSetting, setDocText
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runBare, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame, format
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SingleDisplayModelTest

public SingleDisplayModelTest()
Method Detail

getSDModel

private DefaultGlobalModel getSDModel()
Get the instance of the SingleDisplayModel.


assertNotEmpty

protected void assertNotEmpty()

assertActiveDocument

protected void assertActiveDocument(OpenDefinitionsDocument doc)

setupDocument

protected OpenDefinitionsDocument setupDocument(java.lang.String text)
                                         throws javax.swing.text.BadLocationException
Creates and returns a new document, makes sure newFile and activeDocumentChanged events are fired, and then adds some text.

Overrides:
setupDocument in class GlobalModelTestCase
Returns:
the new modified document
Throws:
javax.swing.text.BadLocationException

testNotEmptyOnStartup

public void testNotEmptyOnStartup()
                           throws javax.swing.text.BadLocationException
Tests the invariant that at least one document is open at time of creation.

Throws:
javax.swing.text.BadLocationException

testDocumentSwitching

public void testDocumentSwitching()
                           throws javax.swing.text.BadLocationException
Tests the setNext and setPrevious functions, making sure that the activeDocumentChanged event is called.

Throws:
javax.swing.text.BadLocationException

testCloseUnmodifiedAutomatically

public void testCloseUnmodifiedAutomatically()
                                      throws javax.swing.text.BadLocationException,
                                             java.io.IOException,
                                             OperationCanceledException,
                                             AlreadyOpenException
Ensures that an unmodified, empty document is closed after a file is opened, while a modified document is left open.

Throws:
javax.swing.text.BadLocationException
java.io.IOException
OperationCanceledException
AlreadyOpenException

testCloseFiles

public void testCloseFiles()
                    throws javax.swing.text.BadLocationException
Tests that active document is switched on close, and that a new file is created after the last one is closed.

Throws:
javax.swing.text.BadLocationException

testCompleteFilename

public void testCompleteFilename()
                          throws javax.swing.text.BadLocationException,
                                 java.io.IOException,
                                 OperationCanceledException,
                                 AlreadyOpenException
Tests the getCompleteFileName method.

Throws:
javax.swing.text.BadLocationException
java.io.IOException
OperationCanceledException
AlreadyOpenException

testDeleteFileWhileOpen

public void testDeleteFileWhileOpen()
                             throws java.io.IOException,
                                    OperationCanceledException,
                                    AlreadyOpenException
Throws:
java.io.IOException
OperationCanceledException
AlreadyOpenException

testDeleteFileBeforeCloseAll

public void testDeleteFileBeforeCloseAll()
                                  throws java.io.IOException,
                                         OperationCanceledException,
                                         AlreadyOpenException
Throws:
java.io.IOException
OperationCanceledException
AlreadyOpenException