@@ -1090,4 +1090,141 @@ public void createDefaultViews_ForSoftwareSystemsWithNamesUsingUTF8Characters()
10901090 assertSame (ss3 , workspace .getViews ().getSystemContextViews ().stream ().filter (v -> v .getKey ().equals ("SystemContext-003" )).findFirst ().get ().getSoftwareSystem ());
10911091 }
10921092
1093+ @ Test
1094+ void removeViewWithKey_ThrowsAndException_WhenNoKeyIsSpecified () {
1095+ try {
1096+ new Workspace ("Name" ).getViews ().removeViewWithKey (null );
1097+ fail ();
1098+ } catch (Exception e ) {
1099+ assertEquals ("A view key must be specified." , e .getMessage ());
1100+ }
1101+
1102+ try {
1103+ new Workspace ("Name" ).getViews ().removeViewWithKey ("" );
1104+ fail ();
1105+ } catch (Exception e ) {
1106+ assertEquals ("A view key must be specified." , e .getMessage ());
1107+ }
1108+ }
1109+
1110+ @ Test
1111+ void removeViewWithKey_ThrowsAndException_WhenNoViewExists () {
1112+ try {
1113+ new Workspace ("Name" ).getViews ().removeViewWithKey ("key" );
1114+ fail ();
1115+ } catch (Exception e ) {
1116+ assertEquals ("A view with key \" key\" does not exist." , e .getMessage ());
1117+ }
1118+ }
1119+
1120+ @ Test
1121+ void removeViewWithKey_ThrowsAndException_WhenABaseViewExistsForTheSpecifiedFilteredView () {
1122+ Workspace workspace = new Workspace ("Name" );
1123+
1124+ try {
1125+ SystemLandscapeView view = workspace .getViews ().createSystemLandscapeView ("landscape" );
1126+ workspace .getViews ().createFilteredView (view , "filtered" , FilterMode .Include , Tags .ELEMENT );
1127+
1128+ workspace .getViews ().removeViewWithKey ("landscape" );
1129+ fail ();
1130+ } catch (Exception e ) {
1131+ assertEquals ("A filtered view based upon \" landscape\" exists - please remove this first." , e .getMessage ());
1132+ }
1133+ }
1134+
1135+ @ Test
1136+ void removeViewWithKey_CustomView () {
1137+ Workspace workspace = new Workspace ("Name" );
1138+ workspace .getViews ().createCustomView ("key" , "title" );
1139+
1140+ assertFalse (workspace .getViews ().getCustomViews ().isEmpty ());
1141+ workspace .getViews ().removeViewWithKey ("key" );
1142+ assertTrue (workspace .getViews ().getCustomViews ().isEmpty ());
1143+ }
1144+
1145+ @ Test
1146+ void removeViewWithKey_SystemLandscapeView () {
1147+ Workspace workspace = new Workspace ("Name" );
1148+ workspace .getViews ().createSystemLandscapeView ("key" );
1149+
1150+ assertFalse (workspace .getViews ().getSystemLandscapeViews ().isEmpty ());
1151+ workspace .getViews ().removeViewWithKey ("key" );
1152+ assertTrue (workspace .getViews ().getSystemLandscapeViews ().isEmpty ());
1153+ }
1154+
1155+ @ Test
1156+ void removeViewWithKey_SystemContextView () {
1157+ Workspace workspace = new Workspace ("Name" );
1158+ SoftwareSystem softwareSystem = workspace .getModel ().addSoftwareSystem ("Name" );
1159+ workspace .getViews ().createSystemContextView (softwareSystem , "key" );
1160+
1161+ assertFalse (workspace .getViews ().getSystemContextViews ().isEmpty ());
1162+ workspace .getViews ().removeViewWithKey ("key" );
1163+ assertTrue (workspace .getViews ().getSystemContextViews ().isEmpty ());
1164+ }
1165+
1166+ @ Test
1167+ void removeViewWithKey_ContainerView () {
1168+ Workspace workspace = new Workspace ("Name" );
1169+ SoftwareSystem softwareSystem = workspace .getModel ().addSoftwareSystem ("Name" );
1170+ workspace .getViews ().createContainerView (softwareSystem , "key" );
1171+
1172+ assertFalse (workspace .getViews ().getContainerViews ().isEmpty ());
1173+ workspace .getViews ().removeViewWithKey ("key" );
1174+ assertTrue (workspace .getViews ().getContainerViews ().isEmpty ());
1175+ }
1176+
1177+ @ Test
1178+ void removeViewWithKey_ComponentView () {
1179+ Workspace workspace = new Workspace ("Name" );
1180+ SoftwareSystem softwareSystem = workspace .getModel ().addSoftwareSystem ("Name" );
1181+ Container container = softwareSystem .addContainer ("Name" );
1182+ workspace .getViews ().createComponentView (container , "key" );
1183+
1184+ assertFalse (workspace .getViews ().getComponentViews ().isEmpty ());
1185+ workspace .getViews ().removeViewWithKey ("key" );
1186+ assertTrue (workspace .getViews ().getComponentViews ().isEmpty ());
1187+ }
1188+
1189+ @ Test
1190+ void removeViewWithKey_DynamicView () {
1191+ Workspace workspace = new Workspace ("Name" );
1192+ workspace .getViews ().createDynamicView ("key" );
1193+
1194+ assertFalse (workspace .getViews ().getDynamicViews ().isEmpty ());
1195+ workspace .getViews ().removeViewWithKey ("key" );
1196+ assertTrue (workspace .getViews ().getDynamicViews ().isEmpty ());
1197+ }
1198+
1199+ @ Test
1200+ void removeViewWithKey_DeploymentView () {
1201+ Workspace workspace = new Workspace ("Name" );
1202+ workspace .getViews ().createDeploymentView ("key" );
1203+
1204+ assertFalse (workspace .getViews ().getDeploymentViews ().isEmpty ());
1205+ workspace .getViews ().removeViewWithKey ("key" );
1206+ assertTrue (workspace .getViews ().getDeploymentViews ().isEmpty ());
1207+ }
1208+
1209+ @ Test
1210+ void removeViewWithKey_FilteredView () {
1211+ Workspace workspace = new Workspace ("Name" );
1212+ SystemLandscapeView view = workspace .getViews ().createSystemLandscapeView ("landscape" );
1213+ workspace .getViews ().createFilteredView (view , "key" , FilterMode .Include , Tags .ELEMENT );
1214+
1215+ assertFalse (workspace .getViews ().getFilteredViews ().isEmpty ());
1216+ workspace .getViews ().removeViewWithKey ("key" );
1217+ assertTrue (workspace .getViews ().getFilteredViews ().isEmpty ());
1218+ }
1219+
1220+ @ Test
1221+ void removeViewWithKey_ImageView () {
1222+ Workspace workspace = new Workspace ("Name" );
1223+ workspace .getViews ().createImageView ("key" );
1224+
1225+ assertFalse (workspace .getViews ().getImageViews ().isEmpty ());
1226+ workspace .getViews ().removeViewWithKey ("key" );
1227+ assertTrue (workspace .getViews ().getImageViews ().isEmpty ());
1228+ }
1229+
10931230}
0 commit comments