Added hashing of passwords
This commit is contained in:
		
							parent
							
								
									07d180b4c0
								
							
						
					
					
						commit
						b531cddc2b
					
				
					 15 changed files with 267 additions and 36 deletions
				
			
		| 
						 | 
					@ -17,6 +17,10 @@ public class Admin extends UserType {
 | 
				
			||||||
        super("admin", "admin", "Admin", "Admin");
 | 
					        super("admin", "admin", "Admin", "Admin");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Admin(String hash, String salt){
 | 
				
			||||||
 | 
					        super("admin", hash, salt, "Admin", "Admin");
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * The getRole() method returns a string "Admin"
 | 
					     * The getRole() method returns a string "Admin"
 | 
				
			||||||
     * the app gets role of user type objects for access
 | 
					     * the app gets role of user type objects for access
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -27,7 +27,7 @@ import com.uottawa.olympus.olympusservices.Booking.Status;
 | 
				
			||||||
public class DBHelper extends SQLiteOpenHelper {
 | 
					public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //version of db used for update method
 | 
					    //version of db used for update method
 | 
				
			||||||
    private static final int DB_VERSION = 6;
 | 
					    private static final int DB_VERSION = 7;
 | 
				
			||||||
    //name of db in app data
 | 
					    //name of db in app data
 | 
				
			||||||
    private static final String DB_NAME = "UsersDB.db";
 | 
					    private static final String DB_NAME = "UsersDB.db";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -265,7 +265,23 @@ public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
                        + ")");
 | 
					                        + ")");
 | 
				
			||||||
            case 5:
 | 
					            case 5:
 | 
				
			||||||
                db.execSQL("ALTER TABLE " + TABLE_BOOKINGS + " ADD COLUMN " + COLUMN_COMMENT + " TEXT DEFAULT ''");
 | 
					                db.execSQL("ALTER TABLE " + TABLE_BOOKINGS + " ADD COLUMN " + COLUMN_COMMENT + " TEXT DEFAULT ''");
 | 
				
			||||||
 | 
					            case 6:
 | 
				
			||||||
 | 
					                Cursor cursor = db.query(TABLE_LOGIN, new String[]{COLUMN_USERNAME, COLUMN_PASSWORD}, null, null,
 | 
				
			||||||
 | 
					                        null, null, null);
 | 
				
			||||||
 | 
					                if (cursor.moveToFirst()){
 | 
				
			||||||
 | 
					                    for (int i = 0; i<cursor.getCount(); i++){
 | 
				
			||||||
 | 
					                       String salt = PasswordEncryption.generateSalt();
 | 
				
			||||||
 | 
					                       String password = cursor.getString(1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                       values = new ContentValues();
 | 
				
			||||||
 | 
					                       values.put(COLUMN_PASSWORD, PasswordEncryption.encrypt(password, salt));
 | 
				
			||||||
 | 
					                       values.put(COLUMN_SALT, salt);
 | 
				
			||||||
 | 
					                       db.update(TABLE_LOGIN, values,
 | 
				
			||||||
 | 
					                               COLUMN_USERNAME + " = ?",
 | 
				
			||||||
 | 
					                               new String[]{cursor.getString(0)});
 | 
				
			||||||
 | 
					                       cursor.moveToNext();
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -304,9 +320,10 @@ public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
        //Put values of UserType into columns
 | 
					        //Put values of UserType into columns
 | 
				
			||||||
        ContentValues values = new ContentValues();
 | 
					        ContentValues values = new ContentValues();
 | 
				
			||||||
        values.put(COLUMN_USERNAME, userType.getUsername());
 | 
					        values.put(COLUMN_USERNAME, userType.getUsername());
 | 
				
			||||||
        values.put(COLUMN_PASSWORD, userType.getPassword());
 | 
					        values.put(COLUMN_PASSWORD, userType.getHash());
 | 
				
			||||||
        values.put(COLUMN_FIRSTNAME, userType.getFirstname());
 | 
					        values.put(COLUMN_FIRSTNAME, userType.getFirstname());
 | 
				
			||||||
        values.put(COLUMN_LASTNAME, userType.getLastname());
 | 
					        values.put(COLUMN_LASTNAME, userType.getLastname());
 | 
				
			||||||
 | 
					        values.put(COLUMN_SALT, userType.getSalt());
 | 
				
			||||||
        values.put(COLUMN_USERTYPE, userType.getClass().getSimpleName());
 | 
					        values.put(COLUMN_USERTYPE, userType.getClass().getSimpleName());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        //special case for ServiceProvider
 | 
					        //special case for ServiceProvider
 | 
				
			||||||
| 
						 | 
					@ -373,7 +390,7 @@ public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
                new String[]{username});
 | 
					                new String[]{username});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (cursor.moveToFirst()){
 | 
					        if (cursor.moveToFirst()){
 | 
				
			||||||
            String password = cursor.getString(1);
 | 
					            String hash = cursor.getString(1);
 | 
				
			||||||
            String firstname = cursor.getString(2);
 | 
					            String firstname = cursor.getString(2);
 | 
				
			||||||
            String lastname = cursor.getString(3);
 | 
					            String lastname = cursor.getString(3);
 | 
				
			||||||
            String address = cursor.getString(5);
 | 
					            String address = cursor.getString(5);
 | 
				
			||||||
| 
						 | 
					@ -381,17 +398,18 @@ public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
            String companyname = cursor.getString(7);
 | 
					            String companyname = cursor.getString(7);
 | 
				
			||||||
            boolean licensed = Boolean.parseBoolean(cursor.getString(8));
 | 
					            boolean licensed = Boolean.parseBoolean(cursor.getString(8));
 | 
				
			||||||
            String description = cursor.getString(9);
 | 
					            String description = cursor.getString(9);
 | 
				
			||||||
 | 
					            String salt = cursor.getString(10);
 | 
				
			||||||
            if (cursor.getString(4)
 | 
					            if (cursor.getString(4)
 | 
				
			||||||
                    .equals("Admin")){
 | 
					                    .equals("Admin")){
 | 
				
			||||||
                usertype = new Admin();
 | 
					                usertype = new Admin(hash, salt);
 | 
				
			||||||
            } else if (cursor.getString(4)
 | 
					            } else if (cursor.getString(4)
 | 
				
			||||||
                    .equals("ServiceProvider")){
 | 
					                    .equals("ServiceProvider")){
 | 
				
			||||||
                ServiceProvider serviceProvider = new ServiceProvider(username, password, firstname, lastname, address, phonenumber, companyname, licensed, description);
 | 
					                ServiceProvider serviceProvider = new ServiceProvider(username, hash, salt, firstname, lastname, address, phonenumber, companyname, licensed, description);
 | 
				
			||||||
                getAllServicesProvidedByUser(serviceProvider);
 | 
					                getAllServicesProvidedByUser(serviceProvider);
 | 
				
			||||||
                getAvailabilities(serviceProvider);
 | 
					                getAvailabilities(serviceProvider);
 | 
				
			||||||
                usertype = serviceProvider;
 | 
					                usertype = serviceProvider;
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                usertype = new HomeOwner(username, password, firstname, lastname);
 | 
					                usertype = new HomeOwner(username, hash, salt, firstname, lastname);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -441,7 +459,13 @@ public class DBHelper extends SQLiteOpenHelper {
 | 
				
			||||||
        if (username == null) return false;
 | 
					        if (username == null) return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ContentValues values = new ContentValues();
 | 
					        ContentValues values = new ContentValues();
 | 
				
			||||||
        if (password != null && !password.equals("")) values.put(COLUMN_PASSWORD, password);
 | 
					        if (password != null && !password.equals("")) {
 | 
				
			||||||
 | 
					            String salt = PasswordEncryption.generateSalt();
 | 
				
			||||||
 | 
					            values.put(COLUMN_SALT, salt);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            String hash = PasswordEncryption.encrypt(password, salt);
 | 
				
			||||||
 | 
					            values.put(COLUMN_PASSWORD, hash);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
        if (firstname != null && !firstname.equals("")) values.put(COLUMN_FIRSTNAME, firstname);
 | 
					        if (firstname != null && !firstname.equals("")) values.put(COLUMN_FIRSTNAME, firstname);
 | 
				
			||||||
        if (lastname != null && !lastname.equals(""))values.put(COLUMN_LASTNAME, lastname);
 | 
					        if (lastname != null && !lastname.equals(""))values.put(COLUMN_LASTNAME, lastname);
 | 
				
			||||||
        if (address != null && !address.equals(""))values.put(COLUMN_ADDRESS, address);
 | 
					        if (address != null && !address.equals(""))values.put(COLUMN_ADDRESS, address);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,21 @@ public class HomeOwner extends UserType {
 | 
				
			||||||
        super(username, password, firstname, lastname);
 | 
					        super(username, password, firstname, lastname);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Constructor of the HomeOwner object that takes the username, password,
 | 
				
			||||||
 | 
					     * lastname, and firstname as parameters to use for the creation of a
 | 
				
			||||||
 | 
					     * HomeOwner object.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @param username String for username.
 | 
				
			||||||
 | 
					     * @param hash String for hash.
 | 
				
			||||||
 | 
					     * @param salt String for salt.
 | 
				
			||||||
 | 
					     * @param firstname String for firstname.
 | 
				
			||||||
 | 
					     * @param lastname String for lastname.
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    HomeOwner(String username, String hash, String salt, String firstname, String lastname){
 | 
				
			||||||
 | 
					        super(username, hash, salt, firstname, lastname);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Returns the type of role the user is for this class.
 | 
					     * Returns the type of role the user is for this class.
 | 
				
			||||||
     * will return the string "HomeOwner".
 | 
					     * will return the string "HomeOwner".
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,7 +29,7 @@ public class HomeOwnerEditProfile extends AppCompatActivity {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        firstname.setText(user.getFirstname());
 | 
					        firstname.setText(user.getFirstname());
 | 
				
			||||||
        lastname.setText(user.getLastname());
 | 
					        lastname.setText(user.getLastname());
 | 
				
			||||||
        password.setText(user.getPassword());
 | 
					        password.setText("");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -56,7 +56,7 @@ public class HomeOwnerEditProfile extends AppCompatActivity {
 | 
				
			||||||
        TextView password = findViewById(R.id.PasswordInput);
 | 
					        TextView password = findViewById(R.id.PasswordInput);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        //Checks for the fields
 | 
					        //Checks for the fields
 | 
				
			||||||
        if(password.getText().toString().length()>=5 && firstname.getText().toString().length()>0
 | 
					        if(firstname.getText().toString().length()>0
 | 
				
			||||||
                && lastname.getText().toString().length()>0
 | 
					                && lastname.getText().toString().length()>0
 | 
				
			||||||
                && password.getText().toString().matches("[a-zA-Z0-9]*")
 | 
					                && password.getText().toString().matches("[a-zA-Z0-9]*")
 | 
				
			||||||
                && firstname.getText().toString().matches("[a-zA-Z]*")
 | 
					                && firstname.getText().toString().matches("[a-zA-Z]*")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,8 @@ public class LogIn extends AppCompatActivity {
 | 
				
			||||||
            if (dbHelper.findUserByUsername(username) != null) {
 | 
					            if (dbHelper.findUserByUsername(username) != null) {
 | 
				
			||||||
                UserType user = dbHelper.findUserByUsername(username);
 | 
					                UserType user = dbHelper.findUserByUsername(username);
 | 
				
			||||||
                if (user.getUsername().equals(username) &&
 | 
					                if (user.getUsername().equals(username) &&
 | 
				
			||||||
                        user.getPassword().equals(password)) {
 | 
					                        PasswordEncryption.slowEquals(user.getHash(),
 | 
				
			||||||
 | 
					                                PasswordEncryption.encrypt(password, user.getSalt()))) {
 | 
				
			||||||
                    if(user.getRole()=="Admin"){
 | 
					                    if(user.getRole()=="Admin"){
 | 
				
			||||||
                        Intent intent = new Intent(getApplicationContext(),AdminWelcome.class);
 | 
					                        Intent intent = new Intent(getApplicationContext(),AdminWelcome.class);
 | 
				
			||||||
                        startActivity(intent);
 | 
					                        startActivity(intent);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,80 @@
 | 
				
			||||||
 | 
					package com.uottawa.olympus.olympusservices;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import android.os.Message;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.security.MessageDigest;
 | 
				
			||||||
 | 
					import java.security.NoSuchAlgorithmException;
 | 
				
			||||||
 | 
					import java.security.SecureRandom;
 | 
				
			||||||
 | 
					import java.lang.Math;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PasswordEncryption {
 | 
				
			||||||
 | 
					    private static final MessageDigest MESSAGE_DIGEST;
 | 
				
			||||||
 | 
					    private static final char[] POSSIBLE_CHARS;
 | 
				
			||||||
 | 
					    private static final SecureRandom random;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    static{
 | 
				
			||||||
 | 
					        MessageDigest messageDigest;
 | 
				
			||||||
 | 
					        try{
 | 
				
			||||||
 | 
					            messageDigest = MessageDigest.getInstance("SHA-256");
 | 
				
			||||||
 | 
					        } catch (NoSuchAlgorithmException e){
 | 
				
			||||||
 | 
					            messageDigest = null;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        MESSAGE_DIGEST = messageDigest;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        POSSIBLE_CHARS = new char[94];
 | 
				
			||||||
 | 
					        for (int i = 33; i<127; i++){
 | 
				
			||||||
 | 
					            POSSIBLE_CHARS[i-33] = (char)i;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        random = new SecureRandom();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static String encrypt(String password, String salt){
 | 
				
			||||||
 | 
					        password = salt + password;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        byte[] passwordBytes = password.getBytes();
 | 
				
			||||||
 | 
					        byte[] hashedPassword;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        MESSAGE_DIGEST.reset();
 | 
				
			||||||
 | 
					        MESSAGE_DIGEST.update(passwordBytes);
 | 
				
			||||||
 | 
					        hashedPassword = MESSAGE_DIGEST.digest();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        StringBuilder sb = new StringBuilder();
 | 
				
			||||||
 | 
					        for (int i = 0; i < hashedPassword.length; i++) {
 | 
				
			||||||
 | 
					            if ((hashedPassword[i] & 0xff) < 0x10) {
 | 
				
			||||||
 | 
					                sb.append("0");
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            sb.append(Long.toString(hashedPassword[i] & 0xff, 16));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return sb.toString();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static String generateSalt(){
 | 
				
			||||||
 | 
					        long stringID = Math.abs(random.nextLong());
 | 
				
			||||||
 | 
					        String salt = "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        while(stringID > 0){
 | 
				
			||||||
 | 
					            //the least significant digit is added to nonce string first
 | 
				
			||||||
 | 
					            int index = (int)(stringID%94);
 | 
				
			||||||
 | 
					            salt += POSSIBLE_CHARS[index];
 | 
				
			||||||
 | 
					            stringID /= 94;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return salt;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static boolean slowEquals(String one, String two){
 | 
				
			||||||
 | 
					        byte[] first = one.getBytes();
 | 
				
			||||||
 | 
					        byte[] second = two.getBytes();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        int length = first.length > second.length ? second.length : first.length;
 | 
				
			||||||
 | 
					        boolean same = true;
 | 
				
			||||||
 | 
					        for (int i = 0; i<length; i++){
 | 
				
			||||||
 | 
					            if (first[i] != second[i]){
 | 
				
			||||||
 | 
					                same = false;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return same;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -49,6 +49,18 @@ public class ServiceProvider extends UserType {
 | 
				
			||||||
        this(username, password, firstname, lastname, address, phonenumber, companyname, licensed, "");
 | 
					        this(username, password, firstname, lastname, address, phonenumber, companyname, licensed, "");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @param username
 | 
				
			||||||
 | 
					     * @param password
 | 
				
			||||||
 | 
					     * @param firstname
 | 
				
			||||||
 | 
					     * @param lastname
 | 
				
			||||||
 | 
					     * @param address
 | 
				
			||||||
 | 
					     * @param phonenumber
 | 
				
			||||||
 | 
					     * @param companyname
 | 
				
			||||||
 | 
					     * @param licensed
 | 
				
			||||||
 | 
					     * @param description
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
    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 description){
 | 
					                    String phonenumber, String companyname, boolean licensed, String description){
 | 
				
			||||||
        super(username, password, firstname, lastname);
 | 
					        super(username, password, firstname, lastname);
 | 
				
			||||||
| 
						 | 
					@ -62,6 +74,33 @@ public class ServiceProvider extends UserType {
 | 
				
			||||||
        this.rating = 0;
 | 
					        this.rating = 0;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @param username
 | 
				
			||||||
 | 
					     * @param hash
 | 
				
			||||||
 | 
					     * @param salt
 | 
				
			||||||
 | 
					     * @param firstname
 | 
				
			||||||
 | 
					     * @param lastname
 | 
				
			||||||
 | 
					     * @param address
 | 
				
			||||||
 | 
					     * @param phonenumber
 | 
				
			||||||
 | 
					     * @param companyname
 | 
				
			||||||
 | 
					     * @param licensed
 | 
				
			||||||
 | 
					     * @param description
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    ServiceProvider(String username, String hash, String salt, String firstname, String lastname, String address,
 | 
				
			||||||
 | 
					                    String phonenumber, String companyname, boolean licensed, String description){
 | 
				
			||||||
 | 
					        super(username, hash, salt, firstname, lastname);
 | 
				
			||||||
 | 
					        services = new ArrayList<>();
 | 
				
			||||||
 | 
					        availabilities = new int[7][4];
 | 
				
			||||||
 | 
					        this.address = address;
 | 
				
			||||||
 | 
					        this.phonenumber = phonenumber;
 | 
				
			||||||
 | 
					        this.companyname = companyname;
 | 
				
			||||||
 | 
					        this.licensed = licensed;
 | 
				
			||||||
 | 
					        this.description = description;
 | 
				
			||||||
 | 
					        this.rating = 0;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * gets the role of the UserType.
 | 
					     * gets the role of the UserType.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -37,15 +37,13 @@ public class ServiceProviderEditProfile extends AppCompatActivity {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        firstname.setText(user.getFirstname());
 | 
					        firstname.setText(user.getFirstname());
 | 
				
			||||||
        lastname.setText(user.getLastname());
 | 
					        lastname.setText(user.getLastname());
 | 
				
			||||||
        password.setText(user.getPassword());
 | 
					        password.setText("");
 | 
				
			||||||
        companyname.setText(user.getCompanyname());
 | 
					        companyname.setText(user.getCompanyname());
 | 
				
			||||||
        address.setText(user.getAddress());
 | 
					        address.setText(user.getAddress());
 | 
				
			||||||
        phonenumber.setText(user.getPhonenumber());
 | 
					        phonenumber.setText(user.getPhonenumber());
 | 
				
			||||||
        description.setText(user.getDescription());
 | 
					        description.setText(user.getDescription());
 | 
				
			||||||
        licensed.setChecked(user.isLicensed());
 | 
					        licensed.setChecked(user.isLicensed());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -76,7 +74,7 @@ public class ServiceProviderEditProfile extends AppCompatActivity {
 | 
				
			||||||
        CheckBox licensed = findViewById(R.id.LicensedInput);
 | 
					        CheckBox licensed = findViewById(R.id.LicensedInput);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        //Checks for the fields
 | 
					        //Checks for the fields
 | 
				
			||||||
        if(password.getText().toString().length()>=5 && firstname.getText().toString().length()>0
 | 
					        if(firstname.getText().toString().length()>0
 | 
				
			||||||
            && lastname.getText().toString().length()>0 && companyname.getText().toString().length()>0
 | 
					            && lastname.getText().toString().length()>0 && companyname.getText().toString().length()>0
 | 
				
			||||||
            && address.getText().toString().length()>0 && phonenumber.getText().toString().length()>0
 | 
					            && address.getText().toString().length()>0 && phonenumber.getText().toString().length()>0
 | 
				
			||||||
            && password.getText().toString().matches("[a-zA-Z0-9]*")
 | 
					            && password.getText().toString().matches("[a-zA-Z0-9]*")
 | 
				
			||||||
| 
						 | 
					@ -88,6 +86,7 @@ public class ServiceProviderEditProfile extends AppCompatActivity {
 | 
				
			||||||
            && phonenumber.getText().toString().matches("^(\\+\\d{1,2}\\s)?\\(?\\d{3}\\)?[\\s.-]?\\d{3}[\\s.-]?\\d{4}$")
 | 
					            && phonenumber.getText().toString().matches("^(\\+\\d{1,2}\\s)?\\(?\\d{3}\\)?[\\s.-]?\\d{3}[\\s.-]?\\d{4}$")
 | 
				
			||||||
            && address.getText().toString().replaceAll("\\s+","").length()>0) {
 | 
					            && address.getText().toString().replaceAll("\\s+","").length()>0) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if(dbHelper.updateUserInfo(username, password.getText().toString(), firstname.getText().toString(), lastname.getText().toString(),
 | 
					            if(dbHelper.updateUserInfo(username, password.getText().toString(), firstname.getText().toString(), lastname.getText().toString(),
 | 
				
			||||||
                address.getText().toString(), phonenumber.getText().toString(), companyname.getText().toString(), licensed.isChecked(), description.getText().toString())){
 | 
					                address.getText().toString(), phonenumber.getText().toString(), companyname.getText().toString(), licensed.isChecked(), description.getText().toString())){
 | 
				
			||||||
                //add comment method here
 | 
					                //add comment method here
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,12 +13,14 @@ public abstract class UserType {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //field for the username attached to the userType.
 | 
					    //field for the username attached to the userType.
 | 
				
			||||||
    String username;
 | 
					    String username;
 | 
				
			||||||
    //field for the password attached to the userType.
 | 
					    //field for the password hash attached to the userType.
 | 
				
			||||||
    String password;
 | 
					    String hash;
 | 
				
			||||||
    //field for the firstname attached to the userType.
 | 
					    //field for the firstname attached to the userType.
 | 
				
			||||||
    String firstname;
 | 
					    String firstname;
 | 
				
			||||||
    //field for the lastname attached to the userType.
 | 
					    //field for the lastname attached to the userType.
 | 
				
			||||||
    String lastname;
 | 
					    String lastname;
 | 
				
			||||||
 | 
					    //field for the salt attached to the userType.
 | 
				
			||||||
 | 
					    String salt;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -32,9 +34,30 @@ public abstract class UserType {
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    UserType(String username, String password, String firstname, String lastname){
 | 
					    UserType(String username, String password, String firstname, String lastname){
 | 
				
			||||||
        this.username = username;
 | 
					        this.username = username;
 | 
				
			||||||
        this.password = password;
 | 
					 | 
				
			||||||
        this.firstname = firstname;
 | 
					        this.firstname = firstname;
 | 
				
			||||||
        this.lastname = lastname;
 | 
					        this.lastname = lastname;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        this.salt = PasswordEncryption.generateSalt();
 | 
				
			||||||
 | 
					        this.hash = PasswordEncryption.encrypt(password, salt);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Constructor filling out all the field values with given parameters
 | 
				
			||||||
 | 
					     * entered by a new user for the app.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @param username String object containing the username.
 | 
				
			||||||
 | 
					     * @param hash String object containing the password hash.
 | 
				
			||||||
 | 
					     * @param firstname String object containing the firstname.
 | 
				
			||||||
 | 
					     * @param lastname String object containing the lastname.
 | 
				
			||||||
 | 
					     * @param salt String object containing the salt.
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    UserType(String username, String hash, String salt, String firstname, String lastname){
 | 
				
			||||||
 | 
					        this.username = username;
 | 
				
			||||||
 | 
					        this.firstname = firstname;
 | 
				
			||||||
 | 
					        this.lastname = lastname;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        this.salt = salt;
 | 
				
			||||||
 | 
					        this.hash = hash;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -54,12 +77,12 @@ public abstract class UserType {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Gets the password field of userType.
 | 
					     * Gets the hash field of userType.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * @return String of the password.
 | 
					     * @return String of the hash.
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public String getPassword() {
 | 
					    public String getHash() {
 | 
				
			||||||
        return password;
 | 
					        return hash;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -80,6 +103,15 @@ public abstract class UserType {
 | 
				
			||||||
        return lastname;
 | 
					        return lastname;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Gets the salt field of userType.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @return String of salt
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public String getSalt() {
 | 
				
			||||||
 | 
					        return salt;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Sets the username field with given parameters.
 | 
					     * Sets the username field with given parameters.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
| 
						 | 
					@ -102,7 +134,8 @@ public abstract class UserType {
 | 
				
			||||||
        //remember to call updateUser(String username, String password, String firstname, String lastname)
 | 
					        //remember to call updateUser(String username, String password, String firstname, String lastname)
 | 
				
			||||||
        //in activity whenever a setter is called. DBHelper requires a Context (Activity) to be initialized
 | 
					        //in activity whenever a setter is called. DBHelper requires a Context (Activity) to be initialized
 | 
				
			||||||
        //so cannot be initialized in this class
 | 
					        //so cannot be initialized in this class
 | 
				
			||||||
        this.password = password;
 | 
					        this.salt = PasswordEncryption.generateSalt();
 | 
				
			||||||
 | 
					        this.hash = PasswordEncryption.encrypt(password, salt);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
| 
						 | 
					@ -130,8 +163,9 @@ public abstract class UserType {
 | 
				
			||||||
     * @param other Usertype object that is compared to this userType.
 | 
					     * @param other Usertype object that is compared to this userType.
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public boolean equals(UserType other){
 | 
					    public boolean equals(UserType other){
 | 
				
			||||||
        if(this.username.equals(other.username)&&this.password.equals(other.password)&&
 | 
					        if(this.username.equals(other.username)&&this.hash.equals(other.hash)&&
 | 
				
			||||||
                this.firstname.equals(other.firstname)&&this.lastname.equals(other.lastname)){
 | 
					                this.firstname.equals(other.firstname)&&this.lastname.equals(other.lastname)
 | 
				
			||||||
 | 
					                &&this.salt.equals(other.salt)){
 | 
				
			||||||
            return true;
 | 
					            return true;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        return false;
 | 
					        return false;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,13 +14,12 @@ public class AdminTest {
 | 
				
			||||||
    public void testAdmin() {
 | 
					    public void testAdmin() {
 | 
				
			||||||
        Admin admin = new Admin();
 | 
					        Admin admin = new Admin();
 | 
				
			||||||
        String username = admin.getUsername();
 | 
					        String username = admin.getUsername();
 | 
				
			||||||
        String password = admin.getPassword();
 | 
					 | 
				
			||||||
        String firstname = admin.getFirstname();
 | 
					        String firstname = admin.getFirstname();
 | 
				
			||||||
        String lastname = admin.getLastname();
 | 
					        String lastname = admin.getLastname();
 | 
				
			||||||
        String role = admin.getRole();
 | 
					        String role = admin.getRole();
 | 
				
			||||||
        assertEquals("Admin", role);
 | 
					        assertEquals("Admin", role);
 | 
				
			||||||
        assertEquals("admin", username);
 | 
					        assertEquals("admin", username);
 | 
				
			||||||
        assertEquals("admin", password);
 | 
					        assertEquals(PasswordEncryption.encrypt("admin", admin.getSalt()), admin.getHash());
 | 
				
			||||||
        assertEquals("Admin", firstname);
 | 
					        assertEquals("Admin", firstname);
 | 
				
			||||||
        assertEquals("Admin", lastname);
 | 
					        assertEquals("Admin", lastname);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,9 +38,9 @@ public class DBIntegrationTest {
 | 
				
			||||||
        UserType dbUser = dbHelper.findUserByUsername("admin");
 | 
					        UserType dbUser = dbHelper.findUserByUsername("admin");
 | 
				
			||||||
        assertEquals("Admin", dbUser.getClass().getSimpleName());
 | 
					        assertEquals("Admin", dbUser.getClass().getSimpleName());
 | 
				
			||||||
        assertEquals("admin", dbUser.getUsername());
 | 
					        assertEquals("admin", dbUser.getUsername());
 | 
				
			||||||
        assertEquals("admin", dbUser.getPassword());
 | 
					 | 
				
			||||||
        assertEquals("Admin", dbUser.getFirstname());
 | 
					        assertEquals("Admin", dbUser.getFirstname());
 | 
				
			||||||
        assertEquals("Admin", dbUser.getLastname());
 | 
					        assertEquals("Admin", dbUser.getLastname());
 | 
				
			||||||
 | 
					        assertEquals(PasswordEncryption.encrypt("admin", dbUser.getSalt()), dbUser.getHash());
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Test
 | 
					    @Test
 | 
				
			||||||
| 
						 | 
					@ -56,7 +56,8 @@ public class DBIntegrationTest {
 | 
				
			||||||
        dbUser = dbHelper.findUserByUsername("mgarzon");
 | 
					        dbUser = dbHelper.findUserByUsername("mgarzon");
 | 
				
			||||||
        assertEquals("HomeOwner", dbUser.getClass().getSimpleName());
 | 
					        assertEquals("HomeOwner", dbUser.getClass().getSimpleName());
 | 
				
			||||||
        assertEquals("mgarzon", dbUser.getUsername());
 | 
					        assertEquals("mgarzon", dbUser.getUsername());
 | 
				
			||||||
        assertEquals("soccer", dbUser.getPassword());
 | 
					        assertEquals(originalUser.getHash(), dbUser.getHash());
 | 
				
			||||||
 | 
					        assertEquals(originalUser.getSalt(), dbUser.getSalt());
 | 
				
			||||||
        assertEquals("Miguel", dbUser.getFirstname());
 | 
					        assertEquals("Miguel", dbUser.getFirstname());
 | 
				
			||||||
        assertEquals("Garzon", dbUser.getLastname());
 | 
					        assertEquals("Garzon", dbUser.getLastname());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -69,7 +70,8 @@ public class DBIntegrationTest {
 | 
				
			||||||
        dbUser = dbHelper.findUserByUsername("jbO4aBF4dC");
 | 
					        dbUser = dbHelper.findUserByUsername("jbO4aBF4dC");
 | 
				
			||||||
        assertEquals("ServiceProvider", dbUser.getClass().getSimpleName());
 | 
					        assertEquals("ServiceProvider", dbUser.getClass().getSimpleName());
 | 
				
			||||||
        assertEquals("jbO4aBF4dC", dbUser.getUsername());
 | 
					        assertEquals("jbO4aBF4dC", dbUser.getUsername());
 | 
				
			||||||
        assertEquals("seg2105", dbUser.getPassword());
 | 
					        assertEquals(originalUser.getHash(), dbUser.getHash());
 | 
				
			||||||
 | 
					        assertEquals(originalUser.getSalt(), dbUser.getSalt());
 | 
				
			||||||
        assertEquals("Juan", dbUser.getFirstname());
 | 
					        assertEquals("Juan", dbUser.getFirstname());
 | 
				
			||||||
        assertEquals("Guzman", dbUser.getLastname());
 | 
					        assertEquals("Guzman", dbUser.getLastname());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -171,7 +173,6 @@ public class DBIntegrationTest {
 | 
				
			||||||
        dbUser = dbHelper.findUserByUsername("jbO4aBF4dC");
 | 
					        dbUser = dbHelper.findUserByUsername("jbO4aBF4dC");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        assertEquals("jbO4aBF4dC", dbUser.getUsername());
 | 
					        assertEquals("jbO4aBF4dC", dbUser.getUsername());
 | 
				
			||||||
        assertEquals("soccer", dbUser.getPassword());
 | 
					 | 
				
			||||||
        assertEquals("Juan", dbUser.getFirstname());
 | 
					        assertEquals("Juan", dbUser.getFirstname());
 | 
				
			||||||
        assertEquals("Guzman", dbUser.getLastname());
 | 
					        assertEquals("Guzman", dbUser.getLastname());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -561,6 +562,11 @@ public class DBIntegrationTest {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Test
 | 
				
			||||||
 | 
					    public void printUsersTable(){
 | 
				
			||||||
 | 
					        dbHelper.printTable("user");
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // Ever gotten tired of adding things at the start of a test just to delete it all again?
 | 
					    // Ever gotten tired of adding things at the start of a test just to delete it all again?
 | 
				
			||||||
    // I have.
 | 
					    // I have.
 | 
				
			||||||
    // This is a work in progress
 | 
					    // This is a work in progress
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,9 +14,10 @@ public class HomeOwnerTest {
 | 
				
			||||||
    public void testHomeOwner(){
 | 
					    public void testHomeOwner(){
 | 
				
			||||||
        UserType user = new HomeOwner( "John123", "1234567890", "John", "Doe" );
 | 
					        UserType user = new HomeOwner( "John123", "1234567890", "John", "Doe" );
 | 
				
			||||||
        String role = user.getRole();
 | 
					        String role = user.getRole();
 | 
				
			||||||
 | 
					        String salt = user.getSalt();
 | 
				
			||||||
        assertEquals("HomeOwner", role);
 | 
					        assertEquals("HomeOwner", role);
 | 
				
			||||||
        assertEquals("John123", user.getUsername());
 | 
					        assertEquals("John123", user.getUsername());
 | 
				
			||||||
        assertEquals("1234567890", user.getPassword());
 | 
					        assertEquals( PasswordEncryption.encrypt("1234567890", salt), user.getHash());
 | 
				
			||||||
        assertEquals("John", user.getFirstname());
 | 
					        assertEquals("John", user.getFirstname());
 | 
				
			||||||
        assertEquals("Doe", user.getLastname());
 | 
					        assertEquals("Doe", user.getLastname());
 | 
				
			||||||
        user.setUsername( "username" );
 | 
					        user.setUsername( "username" );
 | 
				
			||||||
| 
						 | 
					@ -24,7 +25,10 @@ public class HomeOwnerTest {
 | 
				
			||||||
        user.setFirstname( "firstname" );
 | 
					        user.setFirstname( "firstname" );
 | 
				
			||||||
        user.setLastname( "lastname" );
 | 
					        user.setLastname( "lastname" );
 | 
				
			||||||
        assertNotEquals("John123", user.getUsername());
 | 
					        assertNotEquals("John123", user.getUsername());
 | 
				
			||||||
        assertNotEquals("1234567890", user.getPassword());
 | 
					        assertNotEquals("1234567890", user.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals("password", user.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals( PasswordEncryption.encrypt("1234567890", salt), user.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals(PasswordEncryption.encrypt("password", salt), user.getHash());
 | 
				
			||||||
        assertNotEquals("John", user.getFirstname());
 | 
					        assertNotEquals("John", user.getFirstname());
 | 
				
			||||||
        assertNotEquals("Doe", user.getLastname());
 | 
					        assertNotEquals("Doe", user.getLastname());
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package com.uottawa.olympus.olympusservices;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.junit.Test;
 | 
				
			||||||
 | 
					import static org.junit.Assert.*;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class PasswordTest {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Test
 | 
				
			||||||
 | 
					    public void testHashes(){
 | 
				
			||||||
 | 
					        String string1 = PasswordEncryption.encrypt("helloworld", "i]/S9evY\\,");
 | 
				
			||||||
 | 
					        String string2 = PasswordEncryption.encrypt("helloworld", "i]/S9evY\\,");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assertTrue(PasswordEncryption.slowEquals(string1, string2));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        String string3 = PasswordEncryption.encrypt("helloworld", "i]/S9evY\\");
 | 
				
			||||||
 | 
					        assertTrue(!PasswordEncryption.slowEquals(string1, string3));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        String string4 = PasswordEncryption.encrypt("helloworl", "i]/S9evY\\,");
 | 
				
			||||||
 | 
					        assertTrue(!PasswordEncryption.slowEquals(string1, string4));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -17,8 +17,9 @@ public class ServiceProviderTest {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Test
 | 
					    @Test
 | 
				
			||||||
    public void testServiceProvider() {
 | 
					    public void testServiceProvider() {
 | 
				
			||||||
 | 
					        String salt = serviceprovider.getSalt();
 | 
				
			||||||
        assertEquals( "John123", serviceprovider.getUsername());
 | 
					        assertEquals( "John123", serviceprovider.getUsername());
 | 
				
			||||||
        assertEquals( "1234567890", serviceprovider.getPassword());
 | 
					        assertEquals( PasswordEncryption.encrypt("1234567890", salt), serviceprovider.getHash());
 | 
				
			||||||
        assertEquals( "John", serviceprovider.getFirstname());
 | 
					        assertEquals( "John", serviceprovider.getFirstname());
 | 
				
			||||||
        assertEquals( "Doe", serviceprovider.getLastname());
 | 
					        assertEquals( "Doe", serviceprovider.getLastname());
 | 
				
			||||||
        assertEquals( "ServiceProvider", serviceprovider.getRole());
 | 
					        assertEquals( "ServiceProvider", serviceprovider.getRole());
 | 
				
			||||||
| 
						 | 
					@ -27,7 +28,10 @@ public class ServiceProviderTest {
 | 
				
			||||||
        serviceprovider.setFirstname("firstname");
 | 
					        serviceprovider.setFirstname("firstname");
 | 
				
			||||||
        serviceprovider.setLastname("lastname");
 | 
					        serviceprovider.setLastname("lastname");
 | 
				
			||||||
        assertNotEquals("John123", serviceprovider.getUsername());
 | 
					        assertNotEquals("John123", serviceprovider.getUsername());
 | 
				
			||||||
        assertNotEquals("1234567890", serviceprovider.getPassword());
 | 
					        assertNotEquals("1234567890", serviceprovider.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals("password", serviceprovider.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals( PasswordEncryption.encrypt("1234567890", salt), serviceprovider.getHash());
 | 
				
			||||||
 | 
					        assertNotEquals(PasswordEncryption.encrypt("password", salt), serviceprovider.getHash());
 | 
				
			||||||
        assertNotEquals("John", serviceprovider.getFirstname());
 | 
					        assertNotEquals("John", serviceprovider.getFirstname());
 | 
				
			||||||
        assertNotEquals("Doe", serviceprovider.getLastname());
 | 
					        assertNotEquals("Doe", serviceprovider.getLastname());
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -27,8 +27,8 @@ public class UserTypeTest {
 | 
				
			||||||
        assertNotEquals( true, useradmin );
 | 
					        assertNotEquals( true, useradmin );
 | 
				
			||||||
        assertNotEquals( true, serviceadmin );
 | 
					        assertNotEquals( true, serviceadmin );
 | 
				
			||||||
        assertNotEquals( true, userservice );
 | 
					        assertNotEquals( true, userservice );
 | 
				
			||||||
        user.setFirstname(serviceprovider.getFirstname());
 | 
					        user = new HomeOwner(serviceprovider.getUsername(), serviceprovider.getHash(), serviceprovider.getSalt(),
 | 
				
			||||||
        user.setUsername(serviceprovider.getUsername());
 | 
					                serviceprovider.getFirstname(), serviceprovider.getLastname());
 | 
				
			||||||
        userservice = user.equals(serviceprovider);
 | 
					        userservice = user.equals(serviceprovider);
 | 
				
			||||||
        assertEquals( true, userservice );
 | 
					        assertEquals( true, userservice );
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue