Skip to content

Commit faa26bd

Browse files
committed
Fixed Some Minor Bugs And Reorganized Tests
Signed-off-by: Joshua Gager <[email protected]>
1 parent 37e9f9f commit faa26bd

File tree

6 files changed

+172
-162
lines changed

6 files changed

+172
-162
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
# JavaUltimateTools v1.5.0 [![Build Status](https://travis-ci.org/JGCompTech/JavaUltimateTools.svg?branch=master)](https://travis-ci.org/JGCompTech/JavaUltimateTools) [![CircleCI](https://circleci.com/gh/JGCompTech/JavaUltimateTools.svg?style=svg)](https://circleci.com/gh/JGCompTech/JavaUltimateTools) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.jgcomptech.tools/java-ultimate-tools/badge.svg?style=flat-square)](https://maven-badges.herokuapp.com/maven-central/com.jgcomptech.tools/java-ultimate-tools/) [![Javadocs](http://www.javadoc.io/badge/com.jgcomptech.tools/java-ultimate-tools.svg?style=flat-square)](http://www.javadoc.io/doc/com.jgcomptech.tools/java-ultimate-tools)
1+
# JavaUltimateTools v1.5.0
2+
[![Build Status](https://travis-ci.org/JGCompTech/JavaUltimateTools.svg?branch=master)](https://travis-ci.org/JGCompTech/JavaUltimateTools) [![Language grade: Java](https://img.shields.io/lgtm/grade/java/g/JGCompTech/JavaUltimateTools.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/JGCompTech/JavaUltimateTools/context:java) [![CircleCI](https://circleci.com/gh/JGCompTech/JavaUltimateTools.svg?style=svg)](https://circleci.com/gh/JGCompTech/JavaUltimateTools) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/280242febbb04309ac1212f3be380baa)](https://app.codacy.com/app/jlgager/JavaUltimateTools?utm_source=github.com&utm_medium=referral&utm_content=JGCompTech/JavaUltimateTools&utm_campaign=Badge_Grade_Dashboard) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.jgcomptech.tools/java-ultimate-tools/badge.svg?style=flat-square)](https://maven-badges.herokuapp.com/maven-central/com.jgcomptech.tools/java-ultimate-tools/) [![Javadocs](http://www.javadoc.io/badge/com.jgcomptech.tools/java-ultimate-tools.svg?style=flat-square)](http://www.javadoc.io/doc/com.jgcomptech.tools/java-ultimate-tools)
23

34
Java Ultimate Tools is a large repository of scripts for use in any Java program. It contains the following:
45
- OSInfo - Contains many classes that return information about the current Windows installation. This includes Architecture, Edition, Name, Product Key, Service Pack, User Info and Version.

src/main/java/com/jgcomptech/tools/authc/LoginDialogBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ LoginDialogBuilder setAttemptNewSession(final boolean attemptNewSession) {
131131
* @param loginError the error to set
132132
*/
133133
private void requestDialog(final LoginErrors loginError) {
134-
//Save previous tital and icon path
134+
//Save previous title and icon path
135135
var dialogTitle = "";
136136
var dialogIconPath = "";
137137
if(dialog != null) {

src/main/java/com/jgcomptech/tools/dialogs/FXMLDialogWrapper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ public FXMLDialogWrapper(final String title, final Image icon, final Stage owner
121121
if(title.trim().isEmpty()) throw new IllegalArgumentException("Title cannot be an empty string.");
122122
else dialogStage.setTitle(title);
123123
}
124-
if(title != null) {
124+
if(title != null && icon != null) {
125125
if(icon.isError()) throw new IllegalArgumentException("Icon cannot have loading errors.");
126126
else dialogStage.getIcons().add(icon);
127127
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
package com.jgcomptech.tools.authc;
2+
3+
import com.jgcomptech.tools.ExceptionUtils;
4+
import com.jgcomptech.tools.databasetools.jdbc.Database;
5+
import com.jgcomptech.tools.databasetools.jdbc.DatabaseType;
6+
import org.junit.Test;
7+
8+
import static org.junit.Assert.*;
9+
10+
public class SessionManagerTest {
11+
/** Tests the {@link SessionManager} class. */
12+
@Test
13+
public void testSessionManager() {
14+
try(final var db = new Database("./userdb.db", DatabaseType.H2)) {
15+
final var userManager = new UserManager(db);
16+
userManager.createUser("admin", "1234", UserRoleManager.SystemUserRoles.ADMIN);
17+
18+
ExceptionUtils.assertThrownIllegalArgumentException(() -> new SessionManager(null));
19+
20+
final var manager = userManager.getSessionManager();
21+
22+
try {
23+
manager.clone();
24+
fail( "This method should have thrown CloneNotSupportedException!" );
25+
} catch (final CloneNotSupportedException ignore) { }
26+
27+
manager.getEventListeners().setOnSessionOpened(e -> {});
28+
manager.getEventListeners().setOnSessionClosed(e -> {});
29+
manager.getEventListeners().setOnLoginSuccess(e -> {});
30+
manager.getEventListeners().setOnLoginFailure(e -> {});
31+
32+
assertFalse(manager.isUserLoggedIn());
33+
manager.loginUser("admin");
34+
assertTrue(manager.isUserLoggedIn());
35+
assertEquals("admin", manager.getLoggedInUsername());
36+
assertEquals(manager.getLoggedInUserRole(), UserRoleManager.SystemUserRoles.ADMIN.getRole());
37+
manager.logoutUser();
38+
39+
ExceptionUtils.assertThrownIllegalArgumentException(() -> manager.loginUser(null));
40+
ExceptionUtils.assertThrownIllegalArgumentException(() -> manager.loginUser(""));
41+
} catch (final Exception ignore) { }
42+
}
43+
}
Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
package com.jgcomptech.tools.authz;
2+
3+
import com.jgcomptech.tools.authc.UserRoleManager;
4+
import org.junit.Test;
5+
6+
import static org.junit.Assert.*;
7+
8+
public class PermissionManagerTest {
9+
/** Tests the {@link PermissionManager} class. */
10+
@Test
11+
public void testPermissionManager() {
12+
final var manager = PermissionManager.getInstance();
13+
14+
try {
15+
manager.clone();
16+
fail( "This method should have thrown CloneNotSupportedException!" );
17+
} catch (final CloneNotSupportedException ignore) { }
18+
19+
manager.getPermissions().clear();
20+
21+
assertTrue(manager.addCustomPermission("admin", null));
22+
assertTrue(manager.addCustomPermission("edit", null));
23+
assertTrue(manager.addCustomPermission("create", null));
24+
assertTrue(manager.addCustomPermission("read", null));
25+
26+
assertFalse(manager.removePermission("admin"));
27+
assertFalse(manager.removePermission("edit"));
28+
assertFalse(manager.removePermission("create"));
29+
assertFalse(manager.removePermission("read"));
30+
assertFalse(manager.addCustomPermission("admin", null));
31+
assertFalse(manager.addCustomPermission("edit", null));
32+
assertFalse(manager.addCustomPermission("create", null));
33+
assertFalse(manager.addCustomPermission("read", null));
34+
assertNotNull(manager.getReadPermission());
35+
assertNotNull(manager.getEditPermission());
36+
assertNotNull(manager.getCreatePermission());
37+
assertNotNull(manager.getReadPermission());
38+
assertFalse(manager.isAdminPermissionEnabled());
39+
assertFalse(manager.isEditPermissionEnabled());
40+
assertFalse(manager.isCreatePermissionEnabled());
41+
assertFalse(manager.isReadPermissionEnabled());
42+
manager.setAdminPermission(true);
43+
manager.setEditPermission(true);
44+
manager.setCreatePermission(true);
45+
manager.setReadPermission(true);
46+
assertTrue(manager.isAdminPermissionEnabled());
47+
assertTrue(manager.isEditPermissionEnabled());
48+
assertTrue(manager.isCreatePermissionEnabled());
49+
assertTrue(manager.isReadPermissionEnabled());
50+
manager.loadPermissions(false);
51+
assertFalse(manager.isAdminPermissionEnabled());
52+
assertFalse(manager.isEditPermissionEnabled());
53+
assertFalse(manager.isCreatePermissionEnabled());
54+
assertFalse(manager.isReadPermissionEnabled());
55+
manager.loadPermissions(true);
56+
assertTrue(manager.isAdminPermissionEnabled());
57+
assertTrue(manager.isEditPermissionEnabled());
58+
assertTrue(manager.isCreatePermissionEnabled());
59+
assertTrue(manager.isReadPermissionEnabled());
60+
61+
manager.loadPermissions(UserRoleManager.SystemUserRoles.NONE);
62+
assertFalse(manager.isAdminPermissionEnabled());
63+
assertFalse(manager.isEditPermissionEnabled());
64+
assertFalse(manager.isCreatePermissionEnabled());
65+
assertFalse(manager.isReadPermissionEnabled());
66+
manager.loadPermissions(UserRoleManager.SystemUserRoles.ADMIN);
67+
assertTrue(manager.isAdminPermissionEnabled());
68+
assertTrue(manager.isEditPermissionEnabled());
69+
assertTrue(manager.isCreatePermissionEnabled());
70+
assertTrue(manager.isReadPermissionEnabled());
71+
manager.loadPermissions(UserRoleManager.SystemUserRoles.EDITOR);
72+
assertFalse(manager.isAdminPermissionEnabled());
73+
assertTrue(manager.isEditPermissionEnabled());
74+
assertTrue(manager.isCreatePermissionEnabled());
75+
assertTrue(manager.isReadPermissionEnabled());
76+
manager.loadPermissions(UserRoleManager.SystemUserRoles.AUTHOR);
77+
assertFalse(manager.isAdminPermissionEnabled());
78+
assertFalse(manager.isEditPermissionEnabled());
79+
assertTrue(manager.isCreatePermissionEnabled());
80+
assertTrue(manager.isReadPermissionEnabled());
81+
manager.loadPermissions(UserRoleManager.SystemUserRoles.BASIC);
82+
assertFalse(manager.isAdminPermissionEnabled());
83+
assertFalse(manager.isEditPermissionEnabled());
84+
assertFalse(manager.isCreatePermissionEnabled());
85+
assertTrue(manager.isReadPermissionEnabled());
86+
87+
assertEquals(4, manager.getPermissionsNames().size());
88+
89+
final var name = "custom_1";
90+
assertTrue(manager.addCustomPermission(name, null));
91+
assertEquals(5, manager.getPermissionsNames().size());
92+
assertTrue(manager.isPermissionDisabled(name));
93+
assertFalse(manager.isPermissionEnabled(name));
94+
assertTrue(manager.enablePermission(name));
95+
assertFalse(manager.isPermissionDisabled(name));
96+
assertTrue(manager.isPermissionEnabled(name));
97+
assertTrue(manager.disablePermission(name));
98+
assertTrue(manager.isPermissionDisabled(name));
99+
assertFalse(manager.isPermissionEnabled(name));
100+
101+
// String name2 = "custom_2";
102+
// assertTrue(manager.addAndEnableCustomPermission(name2, null));
103+
// assertTrue(manager.addExistingChildPermission(name2, name));
104+
// assertTrue(manager.getPermissionChildren(name).size() ==1);
105+
// assertTrue(manager.getPermissionsNames().size() == 6);
106+
//
107+
// assertTrue(manager.removePermission(name2));
108+
// assertTrue(manager.getPermissionsNames().size() == 5);
109+
//
110+
// assertTrue(manager.removePermission(name));
111+
// assertTrue(manager.getPermissionsNames().size() == 4);
112+
//
113+
// assertTrue(manager.setPermissionOnEnabled("admin", e -> {}));
114+
// assertTrue(manager.setPermissionOnDisabled("admin", e -> {}));
115+
// assertFalse(manager.setPermissionOnEnabled("1", e -> {}));
116+
// assertFalse(manager.setPermissionOnDisabled("1", e -> {}));
117+
// manager.setOnPermissionsApplied(e -> {});
118+
// manager.setOnAllPermissionsEnabled(e -> {});
119+
// manager.setOnAllPermissionsDisabled(e -> {});
120+
//
121+
// assertFalse(manager.isPermissionEnabled("1"));
122+
// assertTrue(manager.isPermissionDisabled("1"));
123+
}
124+
}

src/test/java/com/jgcomptech/tools/tests/Tests.java

Lines changed: 1 addition & 159 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
11
package com.jgcomptech.tools.tests;
22

3-
import com.jgcomptech.tools.ExceptionUtils;
43
import com.jgcomptech.tools.Misc;
5-
import com.jgcomptech.tools.authc.SessionManager;
6-
import com.jgcomptech.tools.authc.UserManager;
7-
import com.jgcomptech.tools.authc.UserRoleManager;
8-
import com.jgcomptech.tools.authz.PermissionManager;
9-
import com.jgcomptech.tools.databasetools.jdbc.Database;
10-
import com.jgcomptech.tools.databasetools.jdbc.DatabaseType;
114
import com.jgcomptech.tools.dialogs.MessageBox;
125
import com.jgcomptech.tools.dialogs.MessageBoxIcon;
136
import org.junit.Test;
@@ -17,7 +10,7 @@
1710
import java.security.GeneralSecurityException;
1811

1912
import static com.jgcomptech.tools.SecurityTools.RSAHashes.*;
20-
import static org.junit.Assert.*;
13+
import static org.junit.Assert.assertEquals;
2114

2215
public class Tests {
2316
/** Tests the {@link Misc#ConvertBytes(double)} method. */
@@ -51,157 +44,6 @@ public void testRSAEncryptDecrypt() {
5144
}
5245
}
5346

54-
/** Tests the {@link PermissionManager} class. */
55-
@Test
56-
public void testPermissionManager() {
57-
final var manager = PermissionManager.getInstance();
58-
59-
try {
60-
manager.clone();
61-
fail( "This method should have thrown CloneNotSupportedException!" );
62-
} catch (final CloneNotSupportedException ignore) { }
63-
64-
manager.getPermissions().clear();
65-
66-
assertTrue(manager.addCustomPermission("admin", null));
67-
assertTrue(manager.addCustomPermission("edit", null));
68-
assertTrue(manager.addCustomPermission("create", null));
69-
assertTrue(manager.addCustomPermission("read", null));
70-
71-
assertFalse(manager.removePermission("admin"));
72-
assertFalse(manager.removePermission("edit"));
73-
assertFalse(manager.removePermission("create"));
74-
assertFalse(manager.removePermission("read"));
75-
assertFalse(manager.addCustomPermission("admin", null));
76-
assertFalse(manager.addCustomPermission("edit", null));
77-
assertFalse(manager.addCustomPermission("create", null));
78-
assertFalse(manager.addCustomPermission("read", null));
79-
assertNotNull(manager.getReadPermission());
80-
assertNotNull(manager.getEditPermission());
81-
assertNotNull(manager.getCreatePermission());
82-
assertNotNull(manager.getReadPermission());
83-
assertFalse(manager.isAdminPermissionEnabled());
84-
assertFalse(manager.isEditPermissionEnabled());
85-
assertFalse(manager.isCreatePermissionEnabled());
86-
assertFalse(manager.isReadPermissionEnabled());
87-
manager.setAdminPermission(true);
88-
manager.setEditPermission(true);
89-
manager.setCreatePermission(true);
90-
manager.setReadPermission(true);
91-
assertTrue(manager.isAdminPermissionEnabled());
92-
assertTrue(manager.isEditPermissionEnabled());
93-
assertTrue(manager.isCreatePermissionEnabled());
94-
assertTrue(manager.isReadPermissionEnabled());
95-
manager.loadPermissions(false);
96-
assertFalse(manager.isAdminPermissionEnabled());
97-
assertFalse(manager.isEditPermissionEnabled());
98-
assertFalse(manager.isCreatePermissionEnabled());
99-
assertFalse(manager.isReadPermissionEnabled());
100-
manager.loadPermissions(true);
101-
assertTrue(manager.isAdminPermissionEnabled());
102-
assertTrue(manager.isEditPermissionEnabled());
103-
assertTrue(manager.isCreatePermissionEnabled());
104-
assertTrue(manager.isReadPermissionEnabled());
105-
106-
manager.loadPermissions(UserRoleManager.SystemUserRoles.NONE);
107-
assertFalse(manager.isAdminPermissionEnabled());
108-
assertFalse(manager.isEditPermissionEnabled());
109-
assertFalse(manager.isCreatePermissionEnabled());
110-
assertFalse(manager.isReadPermissionEnabled());
111-
manager.loadPermissions(UserRoleManager.SystemUserRoles.ADMIN);
112-
assertTrue(manager.isAdminPermissionEnabled());
113-
assertTrue(manager.isEditPermissionEnabled());
114-
assertTrue(manager.isCreatePermissionEnabled());
115-
assertTrue(manager.isReadPermissionEnabled());
116-
manager.loadPermissions(UserRoleManager.SystemUserRoles.EDITOR);
117-
assertFalse(manager.isAdminPermissionEnabled());
118-
assertTrue(manager.isEditPermissionEnabled());
119-
assertTrue(manager.isCreatePermissionEnabled());
120-
assertTrue(manager.isReadPermissionEnabled());
121-
manager.loadPermissions(UserRoleManager.SystemUserRoles.AUTHOR);
122-
assertFalse(manager.isAdminPermissionEnabled());
123-
assertFalse(manager.isEditPermissionEnabled());
124-
assertTrue(manager.isCreatePermissionEnabled());
125-
assertTrue(manager.isReadPermissionEnabled());
126-
manager.loadPermissions(UserRoleManager.SystemUserRoles.BASIC);
127-
assertFalse(manager.isAdminPermissionEnabled());
128-
assertFalse(manager.isEditPermissionEnabled());
129-
assertFalse(manager.isCreatePermissionEnabled());
130-
assertTrue(manager.isReadPermissionEnabled());
131-
132-
assertEquals(4, manager.getPermissionsNames().size());
133-
134-
final var name = "custom_1";
135-
assertTrue(manager.addCustomPermission(name, null));
136-
assertEquals(5, manager.getPermissionsNames().size());
137-
assertTrue(manager.isPermissionDisabled(name));
138-
assertFalse(manager.isPermissionEnabled(name));
139-
assertTrue(manager.enablePermission(name));
140-
assertFalse(manager.isPermissionDisabled(name));
141-
assertTrue(manager.isPermissionEnabled(name));
142-
assertTrue(manager.disablePermission(name));
143-
assertTrue(manager.isPermissionDisabled(name));
144-
assertFalse(manager.isPermissionEnabled(name));
145-
146-
// String name2 = "custom_2";
147-
// assertTrue(manager.addAndEnableCustomPermission(name2, null));
148-
// assertTrue(manager.addExistingChildPermission(name2, name));
149-
// assertTrue(manager.getPermissionChildren(name).size() ==1);
150-
// assertTrue(manager.getPermissionsNames().size() == 6);
151-
//
152-
// assertTrue(manager.removePermission(name2));
153-
// assertTrue(manager.getPermissionsNames().size() == 5);
154-
//
155-
// assertTrue(manager.removePermission(name));
156-
// assertTrue(manager.getPermissionsNames().size() == 4);
157-
//
158-
// assertTrue(manager.setPermissionOnEnabled("admin", e -> {}));
159-
// assertTrue(manager.setPermissionOnDisabled("admin", e -> {}));
160-
// assertFalse(manager.setPermissionOnEnabled("1", e -> {}));
161-
// assertFalse(manager.setPermissionOnDisabled("1", e -> {}));
162-
// manager.setOnPermissionsApplied(e -> {});
163-
// manager.setOnAllPermissionsEnabled(e -> {});
164-
// manager.setOnAllPermissionsDisabled(e -> {});
165-
//
166-
// assertFalse(manager.isPermissionEnabled("1"));
167-
// assertTrue(manager.isPermissionDisabled("1"));
168-
}
169-
170-
/** Tests the {@link SessionManager} class and runs {@link Tests#testPermissionManager}. */
171-
@Test
172-
public void testSessionManager() {
173-
//TestPermissionManager();
174-
175-
try(final var db = new Database("./userdb.db", DatabaseType.H2)) {
176-
final var userManager = new UserManager(db);
177-
userManager.createUser("admin", "1234", UserRoleManager.SystemUserRoles.ADMIN);
178-
179-
ExceptionUtils.assertThrownIllegalArgumentException(() -> new SessionManager(null));
180-
181-
final var manager = userManager.getSessionManager();
182-
183-
try {
184-
manager.clone();
185-
fail( "This method should have thrown CloneNotSupportedException!" );
186-
} catch (final CloneNotSupportedException ignore) { }
187-
188-
manager.getEventListeners().setOnSessionOpened(e -> {});
189-
manager.getEventListeners().setOnSessionClosed(e -> {});
190-
manager.getEventListeners().setOnLoginSuccess(e -> {});
191-
manager.getEventListeners().setOnLoginFailure(e -> {});
192-
193-
assertFalse(manager.isUserLoggedIn());
194-
manager.loginUser("admin");
195-
assertTrue(manager.isUserLoggedIn());
196-
assertEquals("admin", manager.getLoggedInUsername());
197-
assertEquals(manager.getLoggedInUserRole(), UserRoleManager.SystemUserRoles.ADMIN.getRole());
198-
manager.logoutUser();
199-
200-
ExceptionUtils.assertThrownIllegalArgumentException(() -> manager.loginUser(null));
201-
ExceptionUtils.assertThrownIllegalArgumentException(() -> manager.loginUser(""));
202-
} catch (final Exception ignore) { }
203-
}
204-
20547
// /** Tests the {@link UserAccount} object. */
20648
// @Test
20749
// public void TestUserAccount() {

0 commit comments

Comments
 (0)