Author: mvw
Date: 2008-02-03 13:39:58-0800
New Revision: 14077
Modified:
trunk/tests/org/argouml/kernel/TestProjectSettings.java
Log:
Fix for issue 4969. Patch supplied by Jan Bares.
Add the ability to hide/show all association names.
Modified: trunk/tests/org/argouml/kernel/TestProjectSettings.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/tests/org/argouml/kernel/TestProjectSettings.java?view=diff&rev=14077&p1=trunk/tests/org/argouml/kernel/TestProjectSettings.java&p2=trunk/tests/org/argouml/kernel/TestProjectSettings.java&r1=14076&r2=14077
==============================================================================
--- trunk/tests/org/argouml/kernel/TestProjectSettings.java (original)
+++ trunk/tests/org/argouml/kernel/TestProjectSettings.java 2008-02-03 13:39:58-0800
@@ -1,5 +1,5 @@
// $Id$
-// Copyright (c) 2006-2007 The Regents of the University of California. All
+// Copyright (c) 2006-2008 The Regents of the University of California. All
// Rights Reserved. Permission to use, copy, modify, and distribute this
// software and its documentation without fee, and without a written
// agreement is hereby granted, provided that the above copyright notice
@@ -50,7 +50,7 @@
/**
* Constructor.
- *
+ *
* @param arg0 is the name of the test case.
*/
public TestProjectSettings(String arg0) {
@@ -58,84 +58,109 @@
}
/**
- * Test if the settings are copied correctly
+ * Test if the settings are copied correctly
* from the default into the project. <p>
- *
+ *
* For this test, only the shadow-width is used.
*/
public void testProjectSettingsCreation() {
Configuration.setInteger(
Notation.KEY_DEFAULT_SHADOW_WIDTH, 2);
Project p1 = ProjectManager.getManager().makeEmptyProject();
- assertTrue("Default Setting is not copied",
+ assertTrue("Default Setting is not copied",
p1.getProjectSettings().getDefaultShadowWidthValue() == 2);
Configuration.setInteger(
Notation.KEY_DEFAULT_SHADOW_WIDTH, 3);
- assertTrue("Project Setting is altered",
+ assertTrue("Project Setting is altered",
p1.getProjectSettings().getDefaultShadowWidth().equals("2"));
ProjectManager.getManager().removeProject(p1);
- /* In the next line, replacing makeEmptyProject
- * by getCurrentProject fails the test,
- * except when run in Eclipse.
+ /* In the next line, replacing makeEmptyProject
+ * by getCurrentProject fails the test,
+ * except when run in Eclipse.
* MVW: I have no idea why.*/
Project p2 = ProjectManager.getManager().makeEmptyProject();
- assertTrue("New project does not get Default Setting",
+ assertTrue("New project does not get Default Setting",
p2.getProjectSettings().getDefaultShadowWidthValue() == 3);
p2.getProjectSettings().setDefaultShadowWidth(4);
- assertTrue("Default is altered by project-setting",
+ assertTrue("Default is altered by project-setting",
Configuration.getInteger(
Notation.KEY_DEFAULT_SHADOW_WIDTH) == 3);
}
-
+
/**
* Test the use of Guillemots.
*/
public void testGuillemots() {
Configuration.setBoolean(Notation.KEY_USE_GUILLEMOTS, false);
Project p = ProjectManager.getManager().makeEmptyProject();
- assertTrue("Guillemots not correct",
+ assertTrue("Guillemots not correct",
!p.getProjectSettings().getUseGuillemotsValue());
- assertTrue("Guillemots string not set correctly",
+ assertTrue("Guillemots string not set correctly",
"<<".equals(p.getProjectSettings().getLeftGuillemot()));
- assertTrue("Guillemots string not set correctly",
+ assertTrue("Guillemots string not set correctly",
">>".equals(p.getProjectSettings().getRightGuillemot()));
p.getProjectSettings().setUseGuillemots(true);
- assertTrue("Guillemots not correct",
+ assertTrue("Guillemots not correct",
p.getProjectSettings().getUseGuillemotsValue());
- assertTrue("Guillemots string not set correctly",
+ assertTrue("Guillemots string not set correctly",
"\u00ab".equals(p.getProjectSettings().getLeftGuillemot()));
- assertTrue("Guillemots string not set correctly",
+ assertTrue("Guillemots string not set correctly",
"\u00bb".equals(p.getProjectSettings().getRightGuillemot()));
p.getProjectSettings().setUseGuillemots(Boolean.toString(false));
- assertTrue("Guillemots not correct",
+ assertTrue("Guillemots not correct",
!p.getProjectSettings().getUseGuillemotsValue());
}
-
+
+ /**
+ * Test the project setting for showing Association names.
+ */
+ public void testAssociationNames() {
+ Configuration.setBoolean(Notation.KEY_SHOW_ASSOCIATION_NAMES, false);
+ Project p = ProjectManager.getManager().makeEmptyProject();
+
+ assertTrue("Association names not correct",
+ !p.getProjectSettings().getShowAssociationNamesValue());
+ String showem = p.getProjectSettings().getShowAssociationNames();
+ assertTrue("Association names string not set correctly",
+ !Boolean.valueOf(showem).booleanValue());
+
+ p.getProjectSettings().setShowAssociationNames(true);
+ assertTrue("Association names not correct",
+ p.getProjectSettings().getShowAssociationNamesValue());
+ showem = p.getProjectSettings().getShowAssociationNames();
+ assertTrue("Association names string not set correctly",
+ Boolean.valueOf(showem).booleanValue());
+
+ p.getProjectSettings().setShowAssociationNames(Boolean.toString(false));
+ assertTrue("Association names not correct",
+ !p.getProjectSettings().getShowAssociationNamesValue());
+ }
+
/**
* Test the project setting for showing Visibility.
*/
public void testVisibility() {
Configuration.setBoolean(Notation.KEY_SHOW_VISIBILITY, false);
Project p = ProjectManager.getManager().makeEmptyProject();
-
- assertTrue("Visibility not correct",
+
+ assertTrue("Visibility not correct",
!p.getProjectSettings().getShowVisibilityValue());
- String showem = p.getProjectSettings().getShowVisibility();
- assertTrue("Visibility string not set correctly",
+ String showem = p.getProjectSettings().getShowVisibility();
+ assertTrue("Visibility string not set correctly",
!Boolean.valueOf(showem).booleanValue());
p.getProjectSettings().setShowVisibility(true);
- assertTrue("Visibility not correct",
+ assertTrue("Visibility not correct",
p.getProjectSettings().getShowVisibilityValue());
- showem = p.getProjectSettings().getShowVisibility();
- assertTrue("Visibility string not set correctly",
+ showem = p.getProjectSettings().getShowVisibility();
+ assertTrue("Visibility string not set correctly",
Boolean.valueOf(showem).booleanValue());
p.getProjectSettings().setShowVisibility(Boolean.toString(false));
- assertTrue("Visibility not correct",
+ assertTrue("Visibility not correct",
!p.getProjectSettings().getShowVisibilityValue());
}
@@ -145,22 +170,22 @@
public void testMultiplicity() {
Configuration.setBoolean(Notation.KEY_SHOW_MULTIPLICITY, false);
Project p = ProjectManager.getManager().makeEmptyProject();
-
- assertTrue("Multiplicity not correct",
+
+ assertTrue("Multiplicity not correct",
!p.getProjectSettings().getShowMultiplicityValue());
- String showem = p.getProjectSettings().getShowMultiplicity();
- assertTrue("Multiplicity string not set correctly",
+ String showem = p.getProjectSettings().getShowMultiplicity();
+ assertTrue("Multiplicity string not set correctly",
!Boolean.valueOf(showem).booleanValue());
p.getProjectSettings().setShowMultiplicity(true);
- assertTrue("Multiplicity not correct",
+ assertTrue("Multiplicity not correct",
p.getProjectSettings().getShowMultiplicityValue());
- showem = p.getProjectSettings().getShowMultiplicity();
- assertTrue("Multiplicity string not set correctly",
+ showem = p.getProjectSettings().getShowMultiplicity();
+ assertTrue("Multiplicity string not set correctly",
Boolean.valueOf(showem).booleanValue());
p.getProjectSettings().setShowMultiplicity(Boolean.toString(false));
- assertTrue("Multiplicity not correct",
+ assertTrue("Multiplicity not correct",
!p.getProjectSettings().getShowMultiplicityValue());
}
@@ -172,7 +197,7 @@
Project p = ProjectManager.getManager().makeEmptyProject();
ArgoEventPump.addListener(new EventCatcher());
-
+
rxdEvent = null;
p.getProjectSettings().setShowVisibility(Boolean.toString(true));
/* This assumes events are dispatched on the same thread. */
@@ -182,9 +207,9 @@
p.getProjectSettings().setShowVisibility(Boolean.toString(false));
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
-
+
PropertyChangeEvent pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_SHOW_VISIBILITY.getKey()));
assertTrue("Wrong old event value", Boolean.valueOf(
@@ -192,42 +217,42 @@
assertTrue("Wrong new event value", !Boolean.valueOf(
(String) pce.getNewValue()).booleanValue());
}
-
+
/**
* Test the events generated by project settings changes.
*/
public void testMoreEvents() {
PropertyChangeEvent pce;
-
+
Configuration.setBoolean(Notation.KEY_SHOW_INITIAL_VALUE, false);
Configuration.setBoolean(Notation.KEY_SHOW_PROPERTIES, false);
Configuration.setBoolean(Notation.KEY_SHOW_TYPES, false);
Configuration.setBoolean(Notation.KEY_SHOW_STEREOTYPES, false);
Configuration.setInteger(Notation.KEY_DEFAULT_SHADOW_WIDTH, 4);
Configuration.setString(Notation.KEY_DEFAULT_NOTATION, "UML 1.4");
-
+
Project p = ProjectManager.getManager().makeEmptyProject();
ArgoEventPump.addListener(new EventCatcher());
-
+
rxdEvent = null;
p.getProjectSettings().setShowInitialValue(true);
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_SHOW_INITIAL_VALUE.getKey()));
assertTrue("Wrong old event value", !Boolean.valueOf(
(String) pce.getOldValue()).booleanValue());
assertTrue("Wrong new event value", Boolean.valueOf(
(String) pce.getNewValue()).booleanValue());
-
+
rxdEvent = null;
p.getProjectSettings().setShowProperties(true);
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_SHOW_PROPERTIES.getKey()));
assertTrue("Wrong old event value", !Boolean.valueOf(
@@ -240,7 +265,7 @@
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_SHOW_TYPES.getKey()));
assertTrue("Wrong old event value", !Boolean.valueOf(
@@ -253,35 +278,35 @@
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_SHOW_STEREOTYPES.getKey()));
assertTrue("Wrong old event value", !Boolean.valueOf(
(String) pce.getOldValue()).booleanValue());
assertTrue("Wrong new event value", Boolean.valueOf(
(String) pce.getNewValue()).booleanValue());
-
+
rxdEvent = null;
p.getProjectSettings().setDefaultShadowWidth(2);
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_DEFAULT_SHADOW_WIDTH.getKey()));
String value = (String) pce.getOldValue();
int i = Integer.parseInt(value);
assertTrue("Wrong old event value", i == 4);
- assertTrue("Wrong new event value",
+ assertTrue("Wrong new event value",
((String) pce.getNewValue()).equals("2"));
-
+
rxdEvent = null;
/* We initialised Java Notation, so let's activate it: */
assertTrue(p.getProjectSettings().setNotationLanguage("Java"));
/* This assumes events are dispatched on the same thread. */
assertTrue("Got no notation event", rxdEvent != null);
pce = (PropertyChangeEvent) rxdEvent.getSource();
- assertTrue("Wrong event name",
+ assertTrue("Wrong event name",
pce.getPropertyName().equals(
Notation.KEY_DEFAULT_NOTATION.getKey()));
value = (String) pce.getOldValue();
@@ -303,10 +328,10 @@
/* Needed for initialisations: */
ProjectManager.getManager().getCurrentProject();
}
-
+
/**
* Catcher of Events.
- *
+ *
* @author michiel
*/
protected class EventCatcher implements ArgoNotationEventListener {
@@ -319,11 +344,11 @@
}
public void notationRemoved(ArgoNotationEvent e) {
- rxdEvent = e;
+ rxdEvent = e;
}
public void notationProviderAdded(ArgoNotationEvent e) {
- rxdEvent = e;
+ rxdEvent = e;
}
public void notationProviderRemoved(ArgoNotationEvent e) {
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.