use of SQLDatabase.SQLDatabaseException.ClientAlreadyExist in project SmartCity-Market by TechnionYP5777.
the class SQLDatabaseConnectionTest method testCustomerCanSetProfile.
@Test
public void testCustomerCanSetProfile() {
SQLDatabaseConnection sqlConnection = new SQLDatabaseConnection();
CustomerProfile p = new CustomerProfile(customerName, customerName, "name", "last", "number", "email", "city", "street", date112000, new HashSet<>(), new ForgotPasswordData("question", "answer"));
CustomerProfile result = null;
try {
sqlConnection.registerCustomer(customerName, customerName);
} catch (CriticalError | ClientAlreadyExist e) {
fail();
}
try {
sqlConnection.setCustomerProfile(customerName, p);
result = Serialization.deserialize(sqlConnection.getCustomerProfile(customerName), CustomerProfile.class);
} catch (CriticalError | ClientNotExist | IngredientNotExist e1) {
fail();
} finally {
try {
sqlConnection.removeCustomer(customerName);
} catch (CriticalError | ClientNotExist e) {
e.printStackTrace();
}
}
assertEquals(p.getBirthdate(), result.getBirthdate());
assertEquals(p.getCity(), result.getCity());
assertEquals(p.getEmailAddress(), result.getEmailAddress());
assertEquals(p.getFirstName(), result.getFirstName());
assertEquals(p.getLastName(), result.getLastName());
assertEquals(p.getPhoneNumber(), result.getPhoneNumber());
assertEquals(p.getStreet(), result.getStreet());
assertEquals(p.getUserName(), result.getUserName());
}
use of SQLDatabase.SQLDatabaseException.ClientAlreadyExist in project SmartCity-Market by TechnionYP5777.
the class SQLDatabaseConnectionTest method testCustomerCanLoginLogout.
@Test
public void testCustomerCanLoginLogout() {
SQLDatabaseConnection sqlConnection = new SQLDatabaseConnection();
try {
sqlConnection.registerCustomer(customerName, customerName);
} catch (CriticalError | ClientAlreadyExist e) {
fail();
}
try {
int sessionID = sqlConnection.loginCustomer(customerName, customerName);
sqlConnection.logout(sessionID, customerName);
} catch (AuthenticationError | ClientAlreadyConnected | CriticalError | NumberOfConnectionsExceeded | ClientNotConnected e1) {
fail();
} finally {
try {
sqlConnection.removeCustomer(customerName);
} catch (CriticalError | ClientNotExist e) {
e.printStackTrace();
}
}
}
use of SQLDatabase.SQLDatabaseException.ClientAlreadyExist in project SmartCity-Market by TechnionYP5777.
the class SQLDatabaseConnectionTest method testCustomerCanLoginWithNewPassword.
@Test
public void testCustomerCanLoginWithNewPassword() {
SQLDatabaseConnection sqlConnection = new SQLDatabaseConnection();
try {
sqlConnection.registerCustomer(customerName, customerName);
} catch (CriticalError | ClientAlreadyExist e) {
fail();
}
try {
sqlConnection.setPasswordCustomer(customerName, "newPass");
//try to login with new password
int sessionID = sqlConnection.loginCustomer(customerName, "newPass");
sqlConnection.logout(sessionID, customerName);
} catch (CriticalError | ClientNotExist | AuthenticationError | ClientAlreadyConnected | NumberOfConnectionsExceeded | ClientNotConnected e1) {
fail();
} finally {
try {
sqlConnection.removeCustomer(customerName);
} catch (CriticalError | ClientNotExist e) {
e.printStackTrace();
}
}
}
use of SQLDatabase.SQLDatabaseException.ClientAlreadyExist in project SmartCity-Market by TechnionYP5777.
the class SQLDatabaseConnectionTest method testCustomerCanSetSecurityQA.
@Test
public void testCustomerCanSetSecurityQA() {
SQLDatabaseConnection sqlConnection = new SQLDatabaseConnection();
ForgotPasswordData p = new ForgotPasswordData("question", "answer");
String result = null;
try {
sqlConnection.registerCustomer(customerName, customerName);
} catch (CriticalError | ClientAlreadyExist e) {
fail();
}
try {
sqlConnection.setSecurityQACustomer(customerName, p);
result = sqlConnection.getSecurityQuestionCustomer(customerName);
assertTrue(sqlConnection.verifySecurityAnswerCustomer(customerName, "answer"));
assertEquals("question", result);
} catch (CriticalError | ClientNotExist e1) {
fail();
} finally {
try {
sqlConnection.removeCustomer(customerName);
} catch (CriticalError | ClientNotExist e) {
e.printStackTrace();
}
}
}
Aggregations