diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFApplicationBinder.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFApplicationBinder.java index 2daf3651085d4a0c4e1d020aaf52d91c64c572ac..6ffde6e89fef8ca74e399b2a63461e2feb9e6c0c 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFApplicationBinder.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/config/GFApplicationBinder.java @@ -10,6 +10,7 @@ import unipotsdam.gf.interfaces.*; import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment; import unipotsdam.gf.modules.assessment.controller.service.PeerAssessmentDummy; import unipotsdam.gf.modules.communication.service.CommunicationDummyService; +import unipotsdam.gf.modules.groupfinding.DummyGroupfinding; import unipotsdam.gf.modules.journal.DummyJournalImpl; import unipotsdam.gf.modules.journal.model.Journal; import unipotsdam.gf.modules.journal.service.DummyJournalService; @@ -34,5 +35,7 @@ public class GFApplicationBinder extends AbstractBinder { bind(ManagementImpl.class).to(Management.class); bind(DummyResearchReportManagement.class).to(ResearchReportManagement.class); bind(TestList.class).to(TestListInterface.class); + bind(DummyGroupfinding.class).to(IGroupFinding.class); + } } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java index 85dc6d81bbda007d11a2cb35a6cde66ed00f51c6..7bcf8a20fdb75120b33e7dae2b5cba48013ec3d7 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java @@ -19,16 +19,12 @@ import javax.inject.Singleton; @ManagedBean public class PhasesImpl implements IPhases { - @Inject private IPeerAssessment iPeerAssessment; - @Inject private Feedback feedback; - @Inject private ICommunication iCommunication; - @Inject private IJournal iJournal; public PhasesImpl() { @@ -41,6 +37,7 @@ public class PhasesImpl implements IPhases { * @param iCommunication * @param iJournal */ + @Inject public PhasesImpl(IPeerAssessment iPeerAssessment, Feedback feedback, ICommunication iCommunication, IJournal iJournal) { this.iPeerAssessment = iPeerAssessment; this.feedback = feedback; diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java new file mode 100644 index 0000000000000000000000000000000000000000..f776d8f2f21cbaa4c613b9887986dd4e56201cd9 --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IGroupFinding.java @@ -0,0 +1,35 @@ +package unipotsdam.gf.interfaces; + +import unipotsdam.gf.core.management.group.Group; +import unipotsdam.gf.core.management.project.Project; +import unipotsdam.gf.modules.groupfinding.GroupFormationMechanism; +import unipotsdam.gf.modules.groupfinding.GroupfindingCriteria; + +public interface IGroupFinding { + + /** + * Select the groupfinding criteria used + * @param groupfindingCriteria + */ + void selectGroupfindingCriteria(GroupfindingCriteria groupfindingCriteria); + + /** + * Persist the selected manual groups + * @param groupComposition + */ + void persistGroups(java.util.List<Group> groupComposition, Project project); + + /** + * @param project + * @return + */ + java.util.List<Group> getGroups(Project project); + + /** + * + * @param groupFindingMechanism + */ + void formGroups(GroupFormationMechanism groupFindingMechanism); + + +} diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java index 869de710426fb0da5f54ba4039616f0fb9e8e7da..8f11eec4a9eef4c21a9d96997856224ecb411f64 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IJournal.java @@ -2,7 +2,14 @@ package unipotsdam.gf.interfaces; import unipotsdam.gf.core.management.project.Project; +import unipotsdam.gf.core.management.user.User; import unipotsdam.gf.modules.assessment.controller.model.StudentIdentifier; +import unipotsdam.gf.modules.journal.model.Journal; +import unipotsdam.gf.modules.researchreport.ResearchReport; + +import javax.swing.text.html.HTML; +import java.io.File; +import java.util.List; /** * Interface for learning journal @@ -29,4 +36,29 @@ public interface IJournal { * @param project */ void assignMissingPortfolioTasks(Project project); + + /** + * after user has uploaded a journal entry this function is called + * @param journalEntry + * @param student + */ + void uploadJournalEntry(Journal journalEntry, User student); + + /** + * persist final portfolio for assessment + * + * Maybe create a class for the collected portfolio + * @param journalEntries + * @param finalResearchReport + * @param presentation + */ + void uploadFinalPortfolio(Project project, List<Journal> journalEntries, ResearchReport finalResearchReport, File + presentation, User user); + + /** + * + * @param project + * @return + */ + HTML getFinalPortfolioForAssessment(Project project, User user); } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java index e3b65f1474d62074a4cf33b422a11ebda2d478b0..07ccd75fe304acb09016ec9405eebba4ac72e72d 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java @@ -1,5 +1,6 @@ package unipotsdam.gf.interfaces; +import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; import java.util.ArrayList; @@ -74,4 +75,11 @@ public interface IPeerAssessment { * @param groupId */ void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId); + + /** + * + * @param studentAndQuiz + * @param quizAnswer + */ + void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer); } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/QuizAnswer.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/QuizAnswer.java new file mode 100644 index 0000000000000000000000000000000000000000..6e94987dbaaa741b8c7da6a15a3c3148743a08f8 --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/QuizAnswer.java @@ -0,0 +1,4 @@ +package unipotsdam.gf.modules.assessment; + +public class QuizAnswer { +} diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java index 4f5f5c0976bffc1bc51602c7c1cc886f294ac1d5..ce8d9bfdff59fbe2edfcf6ec56137cecf1bb1ca1 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java @@ -1,5 +1,9 @@ package unipotsdam.gf.modules.assessment.controller.model; + +/** + * TODO @Axel: Normally a quiz would have a student field property instead of creating a new class + */ public class StudentAndQuiz { @Override public String toString() { diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java index df592667c5c569eaaa9f60dd7f6d75f30bc34789..a00736d6be46da151e31deb2323b3c4c3115eba6 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java @@ -1,5 +1,6 @@ package unipotsdam.gf.modules.assessment.controller.service; +import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; import java.util.ArrayList; @@ -57,4 +58,9 @@ public class FBAssessement extends AssessmentDAO { public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId) { } + + @Override + public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) { + + } } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java index 9ab276c63b7e61ed7d1fbd121717f3ab1b8f8232..a4ff7b02053678a112a681d5e6cba1866fe0109a 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java @@ -1,10 +1,9 @@ package unipotsdam.gf.modules.assessment.controller.service; import unipotsdam.gf.core.management.ManagementImpl; -import unipotsdam.gf.core.management.user.User; import unipotsdam.gf.interfaces.IPeerAssessment; +import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; -import unipotsdam.gf.core.database.mysql.MysqlConnect; import java.util.ArrayList; import java.util.List; @@ -56,4 +55,9 @@ public class PeerAssessment implements IPeerAssessment { public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId, String groupId) { } + + @Override + public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) { + + } } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java index 35920c8470ac2a075579c14183cbd7fa89818e52..368c39df41e9e7866efd372220eb19b16c316458 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java @@ -1,6 +1,7 @@ package unipotsdam.gf.modules.assessment.controller.service; import unipotsdam.gf.interfaces.IPeerAssessment; +import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; import java.util.ArrayList; @@ -64,6 +65,11 @@ public class PeerAssessmentDummy implements IPeerAssessment { int breakpoint = 0; //todo: print an http-answer for the ajax-request to receive } + @Override + public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) { + + } + @Override public Assessment getAssessmentDataFromDB(StudentIdentifier student) { int[] quizAnswer = {1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1}; diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java index 4ee52595c40fdc7cc9163884de28199e63f1456e..e0b8b99371a91ecad1853d22b855f81b7b9ddd4e 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java @@ -1,8 +1,8 @@ package unipotsdam.gf.modules.assessment.controller.view; import unipotsdam.gf.interfaces.IPeerAssessment; +import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; -import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment; import unipotsdam.gf.modules.assessment.controller.service.PeerAssessmentDummy; import javax.ws.rs.*; @@ -39,6 +39,11 @@ public class QuizView implements IPeerAssessment { //todo: checkout the POST-variable. should be peerRating but its null atm. } + @Override + public void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer) { + + } + @POST @Produces(MediaType.TEXT_PLAIN) @Consumes(MediaType.APPLICATION_JSON) diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java new file mode 100644 index 0000000000000000000000000000000000000000..1afe531452428511fac7d179801c537f5227d35a --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/DummyGroupfinding.java @@ -0,0 +1,30 @@ +package unipotsdam.gf.modules.groupfinding; + +import unipotsdam.gf.core.management.group.Group; +import unipotsdam.gf.core.management.project.Project; +import unipotsdam.gf.interfaces.IGroupFinding; + +import java.util.List; + +public class DummyGroupfinding implements IGroupFinding { + @Override + public void selectGroupfindingCriteria(GroupfindingCriteria groupfindingCriteria) { + + } + + @Override + public void persistGroups( + List<Group> groupComposition, Project project) { + + } + + @Override + public List<Group> getGroups(Project project) { + return null; + } + + @Override + public void formGroups(GroupFormationMechanism groupFindingMechanism) { + + } +} diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingCriteria.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingCriteria.java new file mode 100644 index 0000000000000000000000000000000000000000..39c33ca8191322925f08aae951bbc83d3532f485 --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingCriteria.java @@ -0,0 +1,10 @@ +package unipotsdam.gf.modules.groupfinding; + +/** + * TODO: implementieren + * - Self efficacy scale + * - Uncertainty tolerance scale + * - Other sources + */ +public class GroupfindingCriteria { +} diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..8987f63c3863e21673bbf067fccced65dbff08ed --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/GroupfindingImpl.java @@ -0,0 +1,30 @@ +package unipotsdam.gf.modules.groupfinding; + +import unipotsdam.gf.core.management.group.Group; +import unipotsdam.gf.core.management.project.Project; +import unipotsdam.gf.interfaces.IGroupFinding; + +import java.util.List; + +public class GroupfindingImpl implements IGroupFinding { + @Override + public void selectGroupfindingCriteria(GroupfindingCriteria groupfindingCriteria) { + + } + + @Override + public void persistGroups( + List<Group> groupComposition, Project project) { + + } + + @Override + public List<Group> getGroups(Project project) { + return null; + } + + @Override + public void formGroups(GroupFormationMechanism groupFindingMechanism) { + + } +} diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java index 469ac93850bbde4ece18e5e03a7a524636e8a4fc..ea5bc7e48132e436094ab4c4db783536e0937a4d 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/DummyJournalImpl.java @@ -3,9 +3,15 @@ package unipotsdam.gf.modules.journal; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import unipotsdam.gf.core.management.project.Project; +import unipotsdam.gf.core.management.user.User; import unipotsdam.gf.interfaces.IJournal; import unipotsdam.gf.modules.assessment.controller.model.StudentIdentifier; -import unipotsdam.gf.modules.journal.service.DummyJournalService; +import unipotsdam.gf.modules.journal.model.Journal; +import unipotsdam.gf.modules.researchreport.ResearchReport; + +import javax.swing.text.html.HTML; +import java.io.File; +import java.util.List; public class DummyJournalImpl implements IJournal { @@ -30,4 +36,22 @@ public class DummyJournalImpl implements IJournal { public void assignMissingPortfolioTasks(Project project) { log.debug("assigning fake MissingPortfolioTasks"); } + + @Override + public void uploadJournalEntry(Journal journalEntry, User student) { + + } + + @Override + public void uploadFinalPortfolio( + Project project, List<Journal> journalEntries, ResearchReport finalResearchReport, File presentation, + User user) { + + } + + @Override + public HTML getFinalPortfolioForAssessment( + Project project, User user) { + return null; + } } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java index f01e37c68684bd9e1b3bc3c041cd2d54ceb9149d..c24769c309522632fa10ff82955a6c3e435afeed 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/peer2peerfeedback/DummyFeedback.java @@ -1,5 +1,6 @@ package unipotsdam.gf.modules.peer2peerfeedback; +import org.mockito.Mockito; import uk.co.jemos.podam.api.PodamFactory; import uk.co.jemos.podam.api.PodamFactoryImpl; import unipotsdam.gf.core.management.project.Project; @@ -19,6 +20,11 @@ public class DummyFeedback implements Feedback { private static Boolean missingTaskAssigned = false; + + public DummyFeedback() { + + } + @Override public Peer2PeerFeedback createPeer2PeerFeedbackmask( User feedbackuser, User selectedstudent, File document) { diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/ActivityFlowTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/ActivityFlowTest.java index bc3c725fce74fe3f9206e02381ed46e63aedfea1..65248217c3fa9ed816fe96ffe1e6ca88ebed0ddf 100644 --- a/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/ActivityFlowTest.java +++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/ActivityFlowTest.java @@ -17,19 +17,27 @@ import uk.co.jemos.podam.api.PodamFactory; import uk.co.jemos.podam.api.PodamFactoryImpl; import unipotsdam.gf.config.GFApplicationBinder; import unipotsdam.gf.core.management.Management; +import unipotsdam.gf.core.management.group.Group; import unipotsdam.gf.core.management.project.Project; import unipotsdam.gf.core.management.project.ProjectConfiguration; import unipotsdam.gf.core.management.user.User; import unipotsdam.gf.core.states.ProjectPhase; +import unipotsdam.gf.modules.assessment.QuizAnswer; +import unipotsdam.gf.modules.assessment.controller.model.StudentAndQuiz; +import unipotsdam.gf.modules.groupfinding.GroupFormationMechanism; +import unipotsdam.gf.modules.groupfinding.GroupfindingCriteria; +import unipotsdam.gf.modules.journal.model.Journal; import unipotsdam.gf.modules.peer2peerfeedback.Category; import unipotsdam.gf.modules.peer2peerfeedback.Peer2PeerFeedback; import unipotsdam.gf.modules.researchreport.ResearchReport; import unipotsdam.gf.modules.researchreport.ResearchReportManagement; import javax.inject.Inject; +import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; @@ -53,10 +61,22 @@ public class ActivityFlowTest { @Inject Feedback feedback; - @Inject IPhases phases; + @Inject + IGroupFinding groupFinding; + + @Inject + ICommunication iCommunication; + + @Inject + IJournal iJournal; + + @Inject + IPeerAssessment iPeerAssessment; + + private final Project project = factory.manufacturePojo(Project.class); private final ArrayList<User> students = new ArrayList<>(); private final User teacher = factory.manufacturePojo(User.class); @@ -64,6 +84,8 @@ public class ActivityFlowTest { @Rule public MockitoRule mockitoRule = MockitoJUnit.rule(); + + @Before public void setUp() { final ServiceLocator locator = ServiceLocatorUtilities.bind(new GFApplicationBinder()); @@ -72,9 +94,12 @@ public class ActivityFlowTest { feedback = Mockito.spy(feedback); researchReportManagement = Mockito.spy(researchReportManagement); phases = Mockito.spy(phases); + iCommunication = Mockito.spy(iCommunication); + // TODO @Julian: Find out more elegant way of doing this researchReportManagement.setFeedback(feedback); phases.setFeedback(feedback); + } @Test @@ -88,6 +113,9 @@ public class ActivityFlowTest { // register students loginStudents(); + // form groups + formGroups(); + // end first phase phases.endPhase(ProjectPhase.CourseCreation, project); @@ -105,6 +133,18 @@ public class ActivityFlowTest { } + + public void formGroups() { + + // form groups based on user profil + groupFinding.formGroups(GroupFormationMechanism.UserProfilStrategy); + + // update groups manually + groupFinding.formGroups(GroupFormationMechanism.Manual); + + } + + public void loginTeacher() { teacher.setStudent(false); management.create(teacher, null); @@ -122,10 +162,32 @@ public class ActivityFlowTest { public void uploadReflections() { // update single reflection + Journal journalEntry = factory.manufacturePojo(Journal.class); + + for (User student : students) { + iJournal.uploadJournalEntry(journalEntry, student); + } - // answer quiz - // + // create quiz TODO@Axel this should be a quiz dependend on the student for easier initialization and + // de-coupling + StudentAndQuiz studentAndQuiz = factory.manufacturePojo(StudentAndQuiz.class); + QuizAnswer quizAnswer = factory.manufacturePojo(QuizAnswer.class); + iPeerAssessment.createQuiz(studentAndQuiz); + iPeerAssessment.answerQuiz(studentAndQuiz, quizAnswer); + + // finales Portfolio zusammenstellen + java.util.List<Journal> journalEntries = new ArrayList<Journal>(); + journalEntries.add(journalEntry); + + ResearchReport finalResearchReport = factory.manufacturePojo(ResearchReport.class); + File presentation = new File("dummy.pptx"); + + for (User student : students) { + iJournal.uploadFinalPortfolio(project,journalEntries, finalResearchReport, presentation, student); + } + assertNotNull(true); + } public void uploadDossiers() { @@ -193,7 +255,9 @@ public class ActivityFlowTest { ProjectConfiguration projectConfiguration = factory.manufacturePojo(ProjectConfiguration.class); management.create(projectConfiguration, project); - // + GroupfindingCriteria groupfindingCriteria = factory.manufacturePojo(GroupfindingCriteria.class); + groupFinding.selectGroupfindingCriteria(groupfindingCriteria); + } } diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/SpiedListHolder.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/SpiedListHolder.java new file mode 100644 index 0000000000000000000000000000000000000000..de9f94dff4e159f7cfc9076f9ee89092356a65ca --- /dev/null +++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/SpiedListHolder.java @@ -0,0 +1,20 @@ +package unipotsdam.gf.testsandbox; + +import unipotsdam.gf.core.testsandbox.TestListInterface; +import unipotsdam.gf.interfaces.Feedback; + +import javax.inject.Inject; + +public class SpiedListHolder { + private TestListInterface spiedList; + + + @Inject + public SpiedListHolder(TestListInterface spiedList) { + this.spiedList = spiedList; + } + + public TestListInterface getSpiedList() { + return spiedList; + } +} diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/TestTestTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/TestTestTest.java index 5cbe3ac44fcbbdbde2617c28f7afa03cda5a632b..74a6a1f5839925856c853efda71829164cb164ba 100644 --- a/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/TestTestTest.java +++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/testsandbox/TestTestTest.java @@ -28,12 +28,15 @@ public class TestTestTest { @Inject TestListInterface spiedList2; - - @Inject @Spy TestListInterface spiedList3; + + @Inject + SpiedListHolder spiedListHolder; + + @Before public void setUp() { final ServiceLocator locator = ServiceLocatorUtilities.bind(new GFApplicationBinder()); @@ -97,4 +100,19 @@ public class TestTestTest { assertEquals(2, spiedList3.size()); } + + /* // + @Test + public void howSpiesWorkWithConstructorInjection() { + + java.util.List<String> spiedList4 = Mockito.spy(spiedListHolder.getSpiedList()); + + spiedList4.add("one"); + spiedList4.add("two"); + + Mockito.verify(spiedList4).add("one"); + Mockito.verify(spiedList4).add("two"); + + assertEquals(2, spiedList4.size()); + }*/ }