Skip to content

Commit

Permalink
merge remote into local
Browse files Browse the repository at this point in the history
  • Loading branch information
WeAreDevo committed Apr 25, 2020
2 parents 98a3524 + c60bb17 commit 3fe5a20
Show file tree
Hide file tree
Showing 13 changed files with 1,012 additions and 187 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,7 @@ public void setUp() throws Exception {
FirebaseAuth.getInstance().signInWithCredential(authCredential).addOnCompleteListener(y->{
Log.d("REEEEEE", "Logged in");
});
// loginRule.getScenario().onActivity(activity -> {
// activity.signIn();
// Log.d("REEEEEE", "HELLO " + FirebaseAuth.getInstance().getCurrentUser());
// });
// Log.d("REEEEEE", "HELLO1 " + FirebaseAuth.getInstance().getCurrentUser());
Thread.sleep(TIME_TO_SLEEP);
}

@Test
Expand Down
4 changes: 3 additions & 1 deletion app/src/androidTest/java/com/sd/a3kleingroup/RSATest.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

@RunWith(JUnit4.class)
public class RSATest {

// /*
@org.junit.Test
public void encrypt() {
RSA rsa = new RSA();
Expand Down Expand Up @@ -71,4 +71,6 @@ byte[] getByteArrayFromIS(InputStream is){
}
return buffer.toByteArray();
}

// */
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import com.sd.a3kleingroup.classes.MyError;

import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
Expand All @@ -20,71 +21,82 @@

import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertNotNull;
import static org.junit.Assert.assertFalse;

@RunWith(JUnit4.class)
//@RunWith(JUnit4.class)
public class ReceiveFilesActivityTest {
/*
@Rule
public ActivityScenarioRule<ReceiveFilesActivity> activityScenarioRule
= new ActivityScenarioRule<>(ReceiveFilesActivity.class);
public ActivityScenarioRule<ReceiveFilesActivity> activityScenarioRule = new ActivityScenarioRule<>(ReceiveFilesActivity.class);;;
@Before
public void setUp() throws Exception {
@BeforeClass
public static void setUp() throws Exception {
// Log IN first
Log.d("REEEEEE", "HELLO1 " + FirebaseAuth.getInstance().getCurrentUser());
AuthCredential authCredential = GoogleAuthProvider.getCredential("eyJhbGciOiJSUzI1NiIsImtpZCI6ImE1NDFkNmVmMDIyZDc3YTIzMThmN2RkNjU3ZjI3NzkzMjAzYmVkNGEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI3ODU2NzM4NTAzOTMtbDhldjFqdHRmNDByaXM3Y2Y1aDZuMW4ya29yYXZzYTIuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI3ODU2NzM4NTAzOTMtMHBxaWY3dWo4bWNlNW1kZjBqczV2cWU3NHA1c2xldWwuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMTU4Njk1MzUxMDQ5MzE4NDE3MTYiLCJlbWFpbCI6Im1pZ2h0eW1hbjc3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwibmFtZSI6Im1pZ2h0eSBtYW4iLCJwaWN0dXJlIjoiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tLy1BUWh0SXh4VzhQMC9BQUFBQUFBQUFBSS9BQUFBQUFBQUFBQS9BS0YwNW5ERFFNZmoyS3F1cGI1c0ZuVXhZZjhYZDFLTjFnL3M5Ni1jL3Bob3RvLmpwZyIsImdpdmVuX25hbWUiOiJtaWdodHkiLCJmYW1pbHlfbmFtZSI6Im1hbiIsImxvY2FsZSI6ImVuLUdCIiwiaWF0IjoxNTg0NDQxNjI1LCJleHAiOjE1ODQ0NDUyMjV9.ZlOafZtimOrVINgjlS0uh8LMrX_3R0l1rq55b9nyIL7GIQu8luF_REHUrBjAxmJwEG2KqfOEJ4DMdMFbWvA_jLyWgNqLt2JL4BumGn53KRhGIVHwSzW_eNQ_0p5X4hJ_o9lftIDQ6B7sdX4kKuB0ihJ8h0mDBt-RRy6JxHv2WdxdJYrtQcGRSxB5HdLi2I5CAvSoxJ_wCDchSmkqtuuZTmn_GQIep-nHvfKJwWZP41oaIaFoeNqstHEkIYh860ne93jA90aRO7LDv7ZPaMXdb89zHG9R5ig49XO6c5YclracuhX4m0xCakdUG4BiTEyizMgYE2-rwdBhn6tTK8kAFA", null);
// AuthCredential authCredential = GoogleAuthProvider.getCredential("eyJhbGciOiJSUzI1NiIsImtpZCI6ImE1NDFkNmVmMDIyZDc3YTIzMThmN2RkNjU3ZjI3NzkzMjAzYmVkNGEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI3ODU2NzM4NTAzOTMtbDhldjFqdHRmNDByaXM3Y2Y1aDZuMW4ya29yYXZzYTIuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI3ODU2NzM4NTAzOTMtMHBxaWY3dWo4bWNlNW1kZjBqczV2cWU3NHA1c2xldWwuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMTU4Njk1MzUxMDQ5MzE4NDE3MTYiLCJlbWFpbCI6Im1pZ2h0eW1hbjc3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwibmFtZSI6Im1pZ2h0eSBtYW4iLCJwaWN0dXJlIjoiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tLy1BUWh0SXh4VzhQMC9BQUFBQUFBQUFBSS9BQUFBQUFBQUFBQS9BS0YwNW5ERFFNZmoyS3F1cGI1c0ZuVXhZZjhYZDFLTjFnL3M5Ni1jL3Bob3RvLmpwZyIsImdpdmVuX25hbWUiOiJtaWdodHkiLCJmYW1pbHlfbmFtZSI6Im1hbiIsImxvY2FsZSI6ImVuLUdCIiwiaWF0IjoxNTg0NDQxNjI1LCJleHAiOjE1ODQ0NDUyMjV9.ZlOafZtimOrVINgjlS0uh8LMrX_3R0l1rq55b9nyIL7GIQu8luF_REHUrBjAxmJwEG2KqfOEJ4DMdMFbWvA_jLyWgNqLt2JL4BumGn53KRhGIVHwSzW_eNQ_0p5X4hJ_o9lftIDQ6B7sdX4kKuB0ihJ8h0mDBt-RRy6JxHv2WdxdJYrtQcGRSxB5HdLi2I5CAvSoxJ_wCDchSmkqtuuZTmn_GQIep-nHvfKJwWZP41oaIaFoeNqstHEkIYh860ne93jA90aRO7LDv7ZPaMXdb89zHG9R5ig49XO6c5YclracuhX4m0xCakdUG4BiTEyizMgYE2-rwdBhn6tTK8kAFA", null);
AuthCredential authCredential = GoogleAuthProvider.getCredential("eyJhbGciOiJSUzI1NiIsImtpZCI6IjI4Yjc0MWU4ZGU5ODRhNDcxNTlmMTllNmQ3NzgzZTlkNGZhODEwZGIiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI3ODU2NzM4NTAzOTMtbDhldjFqdHRmNDByaXM3Y2Y1aDZuMW4ya29yYXZzYTIuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI3ODU2NzM4NTAzOTMtMHBxaWY3dWo4bWNlNW1kZjBqczV2cWU3NHA1c2xldWwuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMTU4Njk1MzUxMDQ5MzE4NDE3MTYiLCJlbWFpbCI6Im1pZ2h0eW1hbjc3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwibmFtZSI6Im1pZ2h0eSBtYW4iLCJwaWN0dXJlIjoiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tLy1BUWh0SXh4VzhQMC9BQUFBQUFBQUFBSS9BQUFBQUFBQUFBQS9BQUtXSkpPRWs3dUNiRnM2dFJvb0c2TkluVjUweEUtbUZ3L3M5Ni1jL3Bob3RvLmpwZyIsImdpdmVuX25hbWUiOiJtaWdodHkiLCJmYW1pbHlfbmFtZSI6Im1hbiIsImxvY2FsZSI6ImVuLUdCIiwiaWF0IjoxNTg3ODE2ODk2LCJleHAiOjE1ODc4MjA0OTZ9.pvs4nu6KO_lZyqYK-cLJ1l48BHawC8E-iMvl3uQ6DXyxSdwqhzSf2utiJOWpSrJofY4pvM2185DzrW4GhUYp1TcbjVfToGU1ZiD7S7d_HZ1XKXDyiWhoRiDclhSE-GdI4fDWFdbP-w1g9JemI36mOdA6RtNtiXbW4yYvK1FbuKfu_meEEoA8eTytVFHbRWnBCPr2LNnQTJ9hB8p5kbAaKUCfF-EOyXeajkPXtx7OLeA-gigg_x7r4aLIqjLbdsjF2s74TiDW9cTu3ENZtSwUjsTxXLw1L9tuye81ApHlE1ew_qZcplcQypmDqaNhzCmLKfOYUgdH159FriX_yw1nuQ", null);
FirebaseAuth.getInstance().signInWithCredential(authCredential).addOnCompleteListener(y->{
Log.d("REEEEEE", "Logged in");
Log.d("REEEEEE", "Logged in " + FirebaseAuth.getInstance().getCurrentUser() + " success " + y.isSuccessful() + (y.getException() !=null ? y.getException().getMessage() : "No exception"));
// assertFalse(true);
});
Thread.sleep(3000);
}
// @Test
// public void testGetAsync() throws InterruptedException {
// // Correct, test twice
// activityScenarioRule.getScenario().onActivity(activity -> {
// activity.getAsync(activity.USER_COLLECTION_NAME, "25MsMCqDk0TxwoQB5IjwExZnJHf2", new Callback() {
// @Override
// public void onSuccess(Map<String, Object> data, String message) {
//
// assertEquals(data.get("email"), "g.axelrod1@gmail.com");
// assertEquals(data.get("name"), "Guy Axelrod");
// assertNotNull(data.get("notificationToken"));
// }
//
// @Override
// public void onFailure(String error, MyError.ErrorCode errorCode) {
// assertEquals(1, 0);
// }
// });
// });
// activityScenarioRule.getScenario().onActivity(activity -> activity.getAsync(activity.FILE_COLLECTION_NAME, "lgOW6jYP1hXPmHJKE4i2", new Callback() {
// @Override
// public void onSuccess(Map<String, Object> data, String message) {
// assertEquals(data.get("filename"), "/document/acc=1;doc=15");
// assertEquals(data.get("filepath"), "MxTtBm9zkTaesi86UH5uaqGKvlA2/_document_acc=1;doc=15");
// assertEquals(data.get("storageURL"), "https://firebasestorage.googleapis.com/v0/b/kleingroupv2.appspot.com/o/MxTtBm9zkTaesi86UH5uaqGKvlA2%2F_document_acc%3D1%3Bdoc%3D15?alt=media&token=112d10a8-42f1-4321-ba39-154b1d177cab");
// assertEquals(data.get("userID"), "En8fRBqxPiZ13HvOabUx7uOXN2T2");
// }
@Test
public void testGetAsync() throws InterruptedException {
//
// @Override
// public void onFailure(String error, MyError.ErrorCode errorCode) {
// assertEquals(1,0);
// }
// }));
//
// activityScenarioRule.getScenario().onActivity(activity -> activity.getAsync(activity.USER_COLLECTION_NAME, "badID", new Callback() {
// @Override
// public void onSuccess(Map<String, Object> data, String message) {
// assertEquals(1,0);
// }
//
// @Override
// public void onFailure(String error, MyError.ErrorCode errorCode) {
// assertEquals("No data", error);
// assertEquals(MyError.ErrorCode.NOT_FOUND, errorCode);
// }
// }));
//
// Thread.sleep(2000);
// }
// activityScenarioRule = new ActivityScenarioRule<>(ReceiveFilesActivity.class);
// Correct, test twice
activityScenarioRule.getScenario().onActivity(activity -> {
activity.getAsync(activity.USER_COLLECTION_NAME, "25MsMCqDk0TxwoQB5IjwExZnJHf2", new Callback() {
@Override
public void onSuccess(Map<String, Object> data, String message) {
assertEquals(data.get("email"), "g.axelrod1@gmail.com");
assertEquals(data.get("name"), "Guy Axelrod");
assertNotNull(data.get("notificationToken"));
}
@Override
public void onFailure(String error, MyError.ErrorCode errorCode) {
assertEquals(1, 0);
}
});
});
activityScenarioRule.getScenario().onActivity(activity -> activity.getAsync(activity.FILE_COLLECTION_NAME, "lgOW6jYP1hXPmHJKE4i2", new Callback() {
@Override
public void onSuccess(Map<String, Object> data, String message) {
assertEquals(data.get("filename"), "/document/acc=1;doc=15");
assertEquals(data.get("filepath"), "MxTtBm9zkTaesi86UH5uaqGKvlA2/_document_acc=1;doc=15");
assertEquals(data.get("storageURL"), "https://firebasestorage.googleapis.com/v0/b/kleingroupv2.appspot.com/o/MxTtBm9zkTaesi86UH5uaqGKvlA2%2F_document_acc%3D1%3Bdoc%3D15?alt=media&token=112d10a8-42f1-4321-ba39-154b1d177cab");
assertEquals(data.get("userID"), "En8fRBqxPiZ13HvOabUx7uOXN2T2");
}
@Override
public void onFailure(String error, MyError.ErrorCode errorCode) {
assertEquals(1,0);
}
}));
activityScenarioRule.getScenario().onActivity(activity -> activity.getAsync(activity.USER_COLLECTION_NAME, "badID", new Callback() {
@Override
public void onSuccess(Map<String, Object> data, String message) {
assertEquals(1,0);
}
@Override
public void onFailure(String error, MyError.ErrorCode errorCode) {
assertEquals("No data", error);
assertEquals(MyError.ErrorCode.NOT_FOUND, errorCode);
}
}));
Thread.sleep(2000);
}
*/
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
package com.sd.a3kleingroup;

import android.util.Log;

import androidx.annotation.NonNull;

import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthCredential;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.GoogleAuthProvider;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.Query;
import com.google.firebase.firestore.QuerySnapshot;
import com.sd.a3kleingroup.classes.MyError;
import com.sd.a3kleingroup.classes.callbacks.ArrayCallback;
import com.sd.a3kleingroup.classes.db.dbAgreement;
import com.sd.a3kleingroup.classes.db.dbFile;
import com.sd.a3kleingroup.classes.db.dbUser;
import com.sd.a3kleingroup.classes.querying.GetAgreementsUsersFiles;
import com.sd.a3kleingroup.classes.querying.GetAgreementsUsersFiles.*;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;

import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertTrue;
import static junit.framework.TestCase.fail;

@RunWith(JUnit4.class)
public class TestGetAgreementsUsersFiles {
int TIME_TO_SLEEP = 2000;
ArrayList<FileUserAgreementTriple> testData;

@Before
public void setUp() throws Exception {
// Log IN first
Log.d("REEEEEE", "HELLO1 " + FirebaseAuth.getInstance().getCurrentUser());
AuthCredential authCredential = GoogleAuthProvider.getCredential("eyJhbGciOiJSUzI1NiIsImtpZCI6ImE1NDFkNmVmMDIyZDc3YTIzMThmN2RkNjU3ZjI3NzkzMjAzYmVkNGEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiI3ODU2NzM4NTAzOTMtbDhldjFqdHRmNDByaXM3Y2Y1aDZuMW4ya29yYXZzYTIuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI3ODU2NzM4NTAzOTMtMHBxaWY3dWo4bWNlNW1kZjBqczV2cWU3NHA1c2xldWwuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMTU4Njk1MzUxMDQ5MzE4NDE3MTYiLCJlbWFpbCI6Im1pZ2h0eW1hbjc3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwibmFtZSI6Im1pZ2h0eSBtYW4iLCJwaWN0dXJlIjoiaHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tLy1BUWh0SXh4VzhQMC9BQUFBQUFBQUFBSS9BQUFBQUFBQUFBQS9BS0YwNW5ERFFNZmoyS3F1cGI1c0ZuVXhZZjhYZDFLTjFnL3M5Ni1jL3Bob3RvLmpwZyIsImdpdmVuX25hbWUiOiJtaWdodHkiLCJmYW1pbHlfbmFtZSI6Im1hbiIsImxvY2FsZSI6ImVuLUdCIiwiaWF0IjoxNTg0NDQxNjI1LCJleHAiOjE1ODQ0NDUyMjV9.ZlOafZtimOrVINgjlS0uh8LMrX_3R0l1rq55b9nyIL7GIQu8luF_REHUrBjAxmJwEG2KqfOEJ4DMdMFbWvA_jLyWgNqLt2JL4BumGn53KRhGIVHwSzW_eNQ_0p5X4hJ_o9lftIDQ6B7sdX4kKuB0ihJ8h0mDBt-RRy6JxHv2WdxdJYrtQcGRSxB5HdLi2I5CAvSoxJ_wCDchSmkqtuuZTmn_GQIep-nHvfKJwWZP41oaIaFoeNqstHEkIYh860ne93jA90aRO7LDv7ZPaMXdb89zHG9R5ig49XO6c5YclracuhX4m0xCakdUG4BiTEyizMgYE2-rwdBhn6tTK8kAFA", null);
FirebaseAuth.getInstance().signInWithCredential(authCredential).addOnCompleteListener(y -> {
Log.d("REEEEEE", "Logged in");
});


insertTestData();
}

@After
public void tearDown(){
}


@Test
public void testEmpty() throws InterruptedException {
FirebaseFirestore db = FirebaseFirestore.getInstance();

Query empty = db.collection("Agreements")
.whereEqualTo("non_existant_field", "-1");

GetAgreementsUsersFiles agr = new GetAgreementsUsersFiles(empty, new ArrayCallback<FileUserAgreementTriple>() {
@Override
public void onSuccess(ArrayList<GetAgreementsUsersFiles.FileUserAgreementTriple> arr, String message) {
assertEquals(0, arr.size());
Log.d("MY_TESTING", "In here");
}
@Override
public void onFailure(String error, MyError.ErrorCode errorCode) {
assertTrue(false);
}
}, "userID", db);

Thread.sleep(TIME_TO_SLEEP);
agr.getData();
}

@Test
public void testNonEmpty() throws InterruptedException {
FirebaseFirestore db = FirebaseFirestore.getInstance();

Query nonEmpty = db.collection("Agreements")
.whereEqualTo("fileID", "TEST_fileID1")
.whereEqualTo("ownerID", "TEST_userID1");

GetAgreementsUsersFiles agr = new GetAgreementsUsersFiles(nonEmpty, new ArrayCallback<FileUserAgreementTriple>() {
@Override
public void onSuccess(ArrayList<GetAgreementsUsersFiles.FileUserAgreementTriple> arr, String message) {
assertEquals(1, arr.size());
// assertEquals(testData, arr);
Log.d("MY_TESTING", "In here with size " +arr.size());
System.out.println("MY_TESTING " + "In here with size " +arr.size() + Arrays.toString(arr.toArray()));

}
@Override
public void onFailure(String error, MyError.ErrorCode errorCode) {
fail("Shouldn't be here");
}
// userID is me, i.e. current user, not the owner
}, "TEST_userID2", db);

Thread.sleep(TIME_TO_SLEEP * 3);
agr.getData();
}



private void insertTestData() throws InterruptedException {
// inserts data so that we can see if it works
FirebaseFirestore db = FirebaseFirestore.getInstance();
testData = new ArrayList<>();
testData.add(new FileUserAgreementTriple(
new dbFile("path1", "name1", "TEST_userID1", "url1", "key1"),
new dbAgreement("TEST_fileID1", "TEST_userID2", new Date(), "TEST_userID1"),
new dbUser("email1", "username1")
));
for (FileUserAgreementTriple t: testData){
db.collection("Agreements").document("TEST_agreementID1").set(t.agreement.getHashmap());

db.collection("Users").document("TEST_userID1").set(t.user.getHashmap());

db.collection("Files").document("TEST_fileID1").set(t.file.getHashmap());
}

Thread.sleep(TIME_TO_SLEEP);
}
}
Loading

0 comments on commit 3fe5a20

Please sign in to comment.