Merge branch 'DBBranch'
This commit is contained in:
commit
9fabb41d83
3 changed files with 1003 additions and 104 deletions
File diff suppressed because it is too large
Load diff
|
@ -46,15 +46,7 @@ public class ServiceProvider extends UserType {
|
||||||
*/
|
*/
|
||||||
ServiceProvider(String username, String password, String firstname, String lastname, String address,
|
ServiceProvider(String username, String password, String firstname, String lastname, String address,
|
||||||
String phonenumber, String companyname, boolean licensed){
|
String phonenumber, String companyname, boolean licensed){
|
||||||
super(username, password, firstname, lastname);
|
this(username, password, firstname, lastname, address, phonenumber, companyname, licensed, "");
|
||||||
services = new ArrayList<>();
|
|
||||||
availabilities = new int[7][4];
|
|
||||||
this.address = address;
|
|
||||||
this.phonenumber = phonenumber;
|
|
||||||
this.companyname = companyname;
|
|
||||||
this.licensed = licensed;
|
|
||||||
this.description = "";
|
|
||||||
this.rating = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ServiceProvider(String username, String password, String firstname, String lastname, String address,
|
ServiceProvider(String username, String password, String firstname, String lastname, String address,
|
||||||
|
@ -67,6 +59,7 @@ public class ServiceProvider extends UserType {
|
||||||
this.companyname = companyname;
|
this.companyname = companyname;
|
||||||
this.licensed = licensed;
|
this.licensed = licensed;
|
||||||
this.description = description;
|
this.description = description;
|
||||||
|
this.rating = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -18,6 +18,15 @@ import static org.junit.Assert.*;
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
@Config(packageName = "com.uottawa.olympus.olympusservices")
|
@Config(packageName = "com.uottawa.olympus.olympusservices")
|
||||||
public class DBIntegrationTest {
|
public class DBIntegrationTest {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enum for setting up before a test
|
||||||
|
*/
|
||||||
|
private enum TestAfter{
|
||||||
|
USER, SERVICE, LINK, AVAILABILITY, BOOKING, RATING;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private DBHelper dbHelper = new DBHelper(RuntimeEnvironment.application);
|
private DBHelper dbHelper = new DBHelper(RuntimeEnvironment.application);
|
||||||
|
|
||||||
//testing user login table
|
//testing user login table
|
||||||
|
@ -174,9 +183,10 @@ public class DBIntegrationTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetAllUsers(){
|
public void testGetAllUsers(){
|
||||||
dbHelper.addUser(new HomeOwner("jbO4aBF4dC", "soccer", "Miguel", "Garzon"));
|
setUp(TestAfter.USER);
|
||||||
|
|
||||||
List<String[]> allUsers = dbHelper.getAllUsers();
|
List<String[]> allUsers = dbHelper.getAllUsers();
|
||||||
|
assertEquals(allUsers.size(), 5);
|
||||||
|
|
||||||
for (String[] user : allUsers){
|
for (String[] user : allUsers){
|
||||||
/* for (String s : user){
|
/* for (String s : user){
|
||||||
|
@ -238,7 +248,7 @@ public class DBIntegrationTest {
|
||||||
added = dbHelper.addService(new Service("extermiNating fLatworms", 25.00));
|
added = dbHelper.addService(new Service("extermiNating fLatworms", 25.00));
|
||||||
assertTrue(!added);
|
assertTrue(!added);
|
||||||
|
|
||||||
dbHelper.deleteService("Exterminating flatworms");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -255,55 +265,41 @@ public class DBIntegrationTest {
|
||||||
assertEquals("exterminating flatworms", service.getName());
|
assertEquals("exterminating flatworms", service.getName());
|
||||||
assertEquals(25.00, service.getRate(), 0.001);
|
assertEquals(25.00, service.getRate(), 0.001);
|
||||||
|
|
||||||
dbHelper.deleteService("Exterminating flatworms");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetAllServices(){
|
public void testGetAllServices(){
|
||||||
dbHelper.addService(new Service("Exterminating flatworms", 20.00));
|
setUp(TestAfter.SERVICE);
|
||||||
|
|
||||||
List<String[]> allServices = dbHelper.getAllServices();
|
List<String[]> allServices = dbHelper.getAllServices();
|
||||||
|
assertTrue(allServices.size() == 3);
|
||||||
|
|
||||||
for (String[] service : allServices){
|
for (String[] service : allServices){
|
||||||
/* for (String s : user){
|
|
||||||
System.out.print(s + " ");
|
|
||||||
}
|
|
||||||
System.out.println();*/
|
|
||||||
Service dbService = dbHelper.findService(service[0]);
|
Service dbService = dbHelper.findService(service[0]);
|
||||||
assertEquals(dbService.getRate(), Double.parseDouble(service[1]), 0.001);
|
assertEquals(dbService.getRate(), Double.parseDouble(service[1]), 0.001);
|
||||||
}
|
}
|
||||||
|
|
||||||
dbHelper.deleteService("Exterminating flatworms");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAddAndDeleteServiceProvidedByUser(){
|
public void testAddAndDeleteServiceProvidedByUser(){
|
||||||
dbHelper.addUser(new ServiceProvider("jbO4aBF4dC", null, null, null,
|
setUp(TestAfter.SERVICE);
|
||||||
"testaddress", "8888888888", "companydotcom", true));
|
|
||||||
dbHelper.addService(new Service("Hitman", 12358));
|
|
||||||
boolean added = dbHelper.addServiceProvidedByUser("jbO4aBF4dC", "hitman");
|
boolean added = dbHelper.addServiceProvidedByUser("jbO4aBF4dC", "hitman");
|
||||||
assertTrue(added);
|
assertTrue(added);
|
||||||
boolean deleted = dbHelper.deleteServiceProvidedByUser("jbO4aBF4dC", "Hitman");
|
boolean deleted = dbHelper.deleteServiceProvidedByUser("jbO4aBF4dC", "Hitman");
|
||||||
assertTrue(deleted);
|
assertTrue(deleted);
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
|
||||||
dbHelper.deleteService("hitman");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetAllServicesProvidedByUserAndDeleteService(){
|
public void testGetAllServicesProvidedByUserAndDeleteService(){
|
||||||
ServiceProvider serviceProvider = new ServiceProvider("jbO4aBF4dC", null, null, null,
|
setUp(TestAfter.LINK);
|
||||||
"testaddress", "8888888888", "companydotcom", true);
|
|
||||||
dbHelper.addUser(serviceProvider);
|
|
||||||
|
|
||||||
Service service1 = new Service("Hitman", 12358);
|
List<String[]> servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
||||||
Service service2 = new Service("Exterminating flatworms", 392.457);
|
|
||||||
dbHelper.addService(service1);
|
|
||||||
dbHelper.addService(service2);
|
|
||||||
|
|
||||||
dbHelper.addServiceProvidedByUser(serviceProvider, service1);
|
|
||||||
dbHelper.addServiceProvidedByUser(serviceProvider, service2);
|
|
||||||
|
|
||||||
List<String[]> servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser(serviceProvider);
|
|
||||||
assertEquals(2, servicesProvidedByUser.size());
|
assertEquals(2, servicesProvidedByUser.size());
|
||||||
assertEquals("hitman", servicesProvidedByUser.get(0)[0]);
|
assertEquals("hitman", servicesProvidedByUser.get(0)[0]);
|
||||||
assertEquals(12358, Double.parseDouble(servicesProvidedByUser.get(0)[1]), 0.00001);
|
assertEquals(12358, Double.parseDouble(servicesProvidedByUser.get(0)[1]), 0.00001);
|
||||||
|
@ -318,47 +314,28 @@ public class DBIntegrationTest {
|
||||||
servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
||||||
assertEquals(0, servicesProvidedByUser.size());
|
assertEquals(0, servicesProvidedByUser.size());
|
||||||
|
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetAllProvidersByService(){
|
public void testGetAllProvidersByService(){
|
||||||
dbHelper.addService(new Service("Exterminating flatworms", 392.457));
|
setUp(TestAfter.LINK);
|
||||||
dbHelper.addUser(new ServiceProvider("jbO4aBF4dC", null, null, null,
|
|
||||||
"testaddress", "8888888888", "companydotcom", true));
|
|
||||||
dbHelper.addUser(new ServiceProvider("7MuF1c59XP", null, null, null,
|
|
||||||
"testaddress", "8888888888", "companydotcom", true));
|
|
||||||
|
|
||||||
dbHelper.addServiceProvidedByUser("jbO4aBF4dC", "exterminating flatworms");
|
|
||||||
dbHelper.addServiceProvidedByUser("7MuF1c59XP", "exterminating flatworms");
|
|
||||||
|
|
||||||
List<String[]> providersByService = dbHelper.getAllProvidersByService("exterminating flatworms");
|
List<String[]> providersByService = dbHelper.getAllProvidersByService("exterminating flatworms");
|
||||||
|
|
||||||
assertEquals(2, providersByService.size());
|
assertEquals(2, providersByService.size());
|
||||||
assertEquals("jbO4aBF4dC", providersByService.get(0)[0]);
|
assertEquals("jbO4aBF4dC", providersByService.get(0)[0]);
|
||||||
assertEquals("7MuF1c59XP", providersByService.get(1)[0]);
|
assertEquals("DW44FkUsX7", providersByService.get(1)[0]);
|
||||||
|
|
||||||
dbHelper.deleteService("Exterminating flatworms");
|
dbHelper.deleteAll();
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
|
||||||
dbHelper.deleteUser("7MuF1c59XP");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDeleteServiceProvidedByUser(){
|
public void testDeleteServiceProvidedByUser(){
|
||||||
ServiceProvider serviceProvider = new ServiceProvider("jbO4aBF4dC", null, null, null,
|
setUp(TestAfter.LINK);
|
||||||
"testaddress", "8888888888", "companydotcom", true);
|
|
||||||
dbHelper.addUser(serviceProvider);
|
|
||||||
|
|
||||||
Service service1 = new Service("Hitman", 12358);
|
List<String[]> servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
||||||
Service service2 = new Service("Exterminating flatworms", 392.457);
|
|
||||||
dbHelper.addService(service1);
|
|
||||||
dbHelper.addService(service2);
|
|
||||||
|
|
||||||
dbHelper.addServiceProvidedByUser(serviceProvider, service1);
|
|
||||||
dbHelper.addServiceProvidedByUser(serviceProvider, service2);
|
|
||||||
|
|
||||||
List<String[]> servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser(serviceProvider);
|
|
||||||
assertEquals(2, servicesProvidedByUser.size());
|
assertEquals(2, servicesProvidedByUser.size());
|
||||||
|
|
||||||
dbHelper.deleteServiceProvidedByUser("jbO4aBF4dC","hitman");
|
dbHelper.deleteServiceProvidedByUser("jbO4aBF4dC","hitman");
|
||||||
|
@ -369,7 +346,7 @@ public class DBIntegrationTest {
|
||||||
servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
servicesProvidedByUser = dbHelper.getAllServicesProvidedByUser("jbO4aBF4dC");
|
||||||
assertEquals(0, servicesProvidedByUser.size());
|
assertEquals(0, servicesProvidedByUser.size());
|
||||||
|
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -407,7 +384,7 @@ public class DBIntegrationTest {
|
||||||
assertEquals(availabilities[i][j], dbAvailabilities[i][j]);
|
assertEquals(availabilities[i][j], dbAvailabilities[i][j]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -432,7 +409,95 @@ public class DBIntegrationTest {
|
||||||
assertEquals(0, dbAvailabilities[i][j]);
|
assertEquals(0, dbAvailabilities[i][j]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dbHelper.deleteUser("jbO4aBF4dC");
|
dbHelper.deleteAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testAddBooking(){
|
||||||
|
setUp(TestAfter.BOOKING);
|
||||||
|
|
||||||
|
//December 1, 2020 is a Tuesday. Provider is available from 5:20 to 21:11
|
||||||
|
boolean added = dbHelper.addBooking("jbO4aBF4dC", "7MuF1c59XP", "Hitman",
|
||||||
|
2020, 12, 1, 8, 12, 10, 0);
|
||||||
|
assertTrue(added);
|
||||||
|
//Provider is available from 5:20 to 21:11, but has a booking from 8:12 to 10:00
|
||||||
|
added = dbHelper.addBooking("jbO4aBF4dC", "7MuF1c59XP", "Hitman",
|
||||||
|
2020, 12, 1, 9, 12, 12, 0);
|
||||||
|
assertTrue(!added);
|
||||||
|
|
||||||
|
//December 3, 2020 is was a Thursday. Provider is available from 7:12 to 15:14
|
||||||
|
added = dbHelper.addBooking("jbO4aBF4dC", "7MuF1c59XP", "Hitman",
|
||||||
|
2020, 12, 3, 6, 12, 7, 30);
|
||||||
|
assertTrue(!added);
|
||||||
|
|
||||||
|
//November 20, 2018 is in the past. Should not be able to add booking
|
||||||
|
added = dbHelper.addBooking("jbO4aBF4dC", "7MuF1c59XP", "Hitman",
|
||||||
|
2018, 11, 20, 8, 12, 10, 0);
|
||||||
|
assertTrue(!added);
|
||||||
|
|
||||||
|
dbHelper.deleteAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
// @Test
|
||||||
|
// public void testConfirmBooking(){
|
||||||
|
// setUp(TestAfter.RATING);
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Ever gotten tired of adding things at the start of a test just to delete it all again?
|
||||||
|
// I have.
|
||||||
|
// This is a work in progress
|
||||||
|
private void setUp(TestAfter testAfter){
|
||||||
|
dbHelper.deleteAll();
|
||||||
|
|
||||||
|
dbHelper.addUser(new Admin());
|
||||||
|
|
||||||
|
ServiceProvider serviceProvider1 = new ServiceProvider("jbO4aBF4dC", null, "Jack", "Black",
|
||||||
|
"testaddress", "8888888888", "companydotcom", true);
|
||||||
|
dbHelper.addUser(serviceProvider1);
|
||||||
|
|
||||||
|
ServiceProvider serviceProvider2 = new ServiceProvider("DW44FkUsX7", null, "Dwayne", "Johnson",
|
||||||
|
"testaddress", "1248921742", "companydotcom", false);
|
||||||
|
dbHelper.addUser(serviceProvider2);
|
||||||
|
|
||||||
|
HomeOwner homeOwner1 = new HomeOwner("7MuF1c59XP", null, "Mufasa", "Died");
|
||||||
|
dbHelper.addUser(homeOwner1);
|
||||||
|
|
||||||
|
HomeOwner homeOwner2 = new HomeOwner("wRV3phzpl5", null, "Wren", "Phillips");
|
||||||
|
dbHelper.addUser(homeOwner2);
|
||||||
|
|
||||||
|
Service service1 = new Service("Hitman", 12358);
|
||||||
|
dbHelper.addService(service1);
|
||||||
|
|
||||||
|
Service service2 = new Service("Exterminating flatworms", 392.457);
|
||||||
|
dbHelper.addService(service2);
|
||||||
|
|
||||||
|
Service service3 = new Service("Petting cats", 0);
|
||||||
|
dbHelper.addService(service3);
|
||||||
|
|
||||||
|
if (!(testAfter.equals(TestAfter.USER) || testAfter.equals(TestAfter.SERVICE))){
|
||||||
|
dbHelper.addServiceProvidedByUser(serviceProvider1, service1);
|
||||||
|
dbHelper.addServiceProvidedByUser(serviceProvider1, service2);
|
||||||
|
|
||||||
|
dbHelper.addServiceProvidedByUser(serviceProvider2, service3);
|
||||||
|
dbHelper.addServiceProvidedByUser(serviceProvider2, service2);
|
||||||
|
|
||||||
|
if (!testAfter.equals(TestAfter.LINK)){
|
||||||
|
serviceProvider1.setAvailabilities(0, 4, 18, 19, 30);
|
||||||
|
serviceProvider1.setAvailabilities(1, 5, 20, 21, 11);
|
||||||
|
serviceProvider1.setAvailabilities(3, 7, 12, 15, 14);
|
||||||
|
serviceProvider1.setAvailabilities(4, 0, 0, 23, 29);
|
||||||
|
|
||||||
|
dbHelper.updateAvailability(serviceProvider1);
|
||||||
|
|
||||||
|
if (!testAfter.equals(TestAfter.AVAILABILITY)){
|
||||||
|
Booking booking1 = new Booking(8, 12, 10, 0,1,
|
||||||
|
12, 2020, serviceProvider1, homeOwner1, service1);
|
||||||
|
dbHelper.addBooking(booking1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue