Repository navigation
Expand file tree
/
Copy pathModuleTest.java
More file actions
140 lines (114 loc) · 3.88 KB
/
Copy pathModuleTest.java
File metadata and controls
140 lines (114 loc) · 3.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
package test;
import java.sql.SQLException;
import database.bean.Admin;
import database.bean.Module;
import database.managers.BeanType;
import database.managers.ConnectionManager;
import database.managers.DatabaseManager;
import database.managers.ModuleManager;
import exception.InvalidAdminException;
import exception.InvalidBeanException;
public class ModuleTest
{
public static void main(String[] args)
{
// First and very important step is to specify the Admin that is
// making the change as follows
Admin currentAdmin = new Admin("Chidiebere", "Fred" );
DatabaseManager.setCurrentAdmin(currentAdmin);
// Rest of the code
try
{
TestUtils.displayBean(BeanType.MODULE , 0 );
System.out.println("---------------CREATING A NEW MODULE TEST--------------");
Module newModule = getNewModule();
try
{
if( ModuleManager.addNewModule(newModule) ) {
System.out.println("Successfully created a new module and "
+ "also updated the dateCreated attribute.");
TestUtils.displayBean(BeanType.MODULE , 0 );
}
else
{
System.out.println("Was Unsuccessful for unknown reasons!!!");
}
}
catch (InvalidBeanException e)
{
e.printStackTrace();
System.err.println( "The format of the Modular Class was invalid" );
}
System.out.println("---------------REMOVING AN EXISTING MODULE TEST--------------");
String name = TestUtils.getStringInput("Enter the existing module name: ");
/*This should be used when we want to remove an existing Module*/
Module existingModule = new Module(name);
try
{
if( ModuleManager.removeModule(existingModule)){
System.out.println( "Module was removed succcessfullly!!!");
TestUtils.displayBean(BeanType.MODULE , 0 );
}
else
{
System.out.println("Nothing was removed! "
+ "Maybe the module name you inputed is not in the database");
}
}
catch (InvalidBeanException e)
{
System.err.println( "The format of the Module object was invalid" );
}
System.out.println("-------------UPDATING AN EXISTING CLASS TEST--------------");
name = TestUtils.getStringInput("Enter the existing module name: ");
existingModule = new Module( name ); // ony name is required for existing module
newModule = getNewModule();// name, numberOfUnits and amount are all required for units
try
{
if( ModuleManager.updateModule(newModule, existingModule) ){
System.out.println( "The Module was updated succcessfullly!!!");
TestUtils.displayBean(BeanType.MODULE, 0 );
}
else
{
System.out.println("Nothing was removed! "
+ "Maybe the module name you inputed is not in the database");
}
}
catch (InvalidBeanException e)
{
System.err.println( "The format one of the Module "
+ "object(s) is invalid" );
}
}
catch ( InvalidAdminException e)
{
System.err.println( e );
System.err.println("The Admin was invalid");
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
// This is also very important. Close the ConnectionManager
ConnectionManager.close();
}
}
/**
* @return
* @throws NumberFormatException
*/
public static Module getNewModule() throws NumberFormatException
{
String name = TestUtils.getStringInput("Enter the new module name: ");
int numberOfUnits = Integer.parseInt(
TestUtils.getStringInput("Enter the number of units for this module: "));
double amount = Double.parseDouble(
TestUtils.getStringInput("Enter the amount per unit for this module: "));
/*This constructor should be used when adding a new Module*/
Module newModule = new Module(name, numberOfUnits, amount);
return newModule;
}
}