/// <summary> /// Method requesting the questionnaire xml and returning the results locally. /// </summary> internal void performTest5() { log("Start Test 5"); setQuestionnaireXMLData(createExampleQuestionnaireData()); String xml = getPPA().getQuestionnaireXML(); QuestionnaireData qd = getQuestionnaireDataFromXmlString(xml); int numberOfChoices = qd.choiceList.choiceItemList.Count; Dictionary <string, int> answers = new Dictionary <string, int>(); int i = 0; foreach (QuestionItem qi in qd.questionList.questionItemList) { if (i % 2 == 0) { answers.Add(qi.question, numberOfChoices - 2); } else { answers.Add(qi.question, numberOfChoices - 1); } i++; } getPPA().setQuestionnaireAnswers(answers); Dictionary <string, double> results = getPPA().getResults(); foreach (String groupName in results.Keys) { log(groupName + ": " + results[groupName]); } log("A" + ": " + results["A"]); log("End test 5"); }
/// <summary> /// Method creating example questionnaire data and outputting it. /// </summary> internal void performTest1() { log("Start Test 1"); QuestionnaireData qd = createExampleQuestionnaireData(); log(qd.toXmlString()); writeQuestionnaireDataToHTMLFile(qd, "QuestionnaireDataTest1.html"); log("End test 1"); }
/// <summary> /// Method for deserialization of a XML-String to the coressponding QuestionnaireData. /// </summary> /// /// <param name="str"> String containing the XML-QuestionnaireData for deserialization. </param> /// /// <returns> /// QuestionnaireData-type coressponding to the parameter "str" after deserialization. /// </returns> internal QuestionnaireData getQuestionnaireDataFromXmlString(String str) { XmlSerializer serializer = new XmlSerializer(typeof(QuestionnaireData)); using (TextReader reader = new StringReader(str)) { QuestionnaireData result = (QuestionnaireData)serializer.Deserialize(reader); return(result); } }
/// <summary> /// Method for storing Questionnaire data as html in a File. /// </summary> /// /// <param name="qd"> Questionnaire data to store. </param> /// <param name="fileId"> String containing the file identification. </param> internal void writeQuestionnaireDataToHTMLFile(QuestionnaireData qd, String fileId) { IDataStorage ids = (IDataStorage)AssetManager.Instance.Bridge; if (ids != null) { log("Storing Questionnaire data to HTML File."); //testid given from program! ids.Save(fileId, qd.toHTMLString("testid")); } else { log("No IDataStorage - Bridge implemented!", Severity.Warning); } }
public void performTest1() { Initialize(); log("Start Test 1"); try { QuestionnaireData qd = createExampleQuestionnaireData(); log(qd.toXmlString()); writeQuestionnaireDataToHTMLFile(qd, "QuestionnaireDataTest1.html"); } catch { Assert.Fail(); } log("End test 1"); }
public void performTest6() { log("Start Test 6"); setQuestionnaireXMLData(createExampleQuestionnaireData()); String xml = getPPA().getQuestionnaireXML(); try { QuestionnaireData qd = QuestionnaireData.getQuestionnaireData(xml); if (!xml.Equals(qd.toXmlString())) { Assert.Fail(); } } catch { Assert.Fail(); } log("End Test 6"); }
/// <summary> /// Method creating an example Questionnaire datastructure for test purpose4s. /// </summary> /// <returns> example Questionnaire datastructure </returns> internal QuestionnaireData createExampleQuestionnaireData() { QuestionItem q1 = new QuestionItem(1, "How do you feel?"); q1.group = "A"; QuestionItem q2 = new QuestionItem(2, "Do you like games?"); q2.group = "A"; QuestionItem q3 = new QuestionItem(3, "Do you like fast cars?"); q3.group = "A"; QuestionItem q4 = new QuestionItem(4, "Do you enjoy silence?"); q4.group = "A"; QuestionItem q5 = new QuestionItem(5, "Do you like swimming?"); q5.group = "A"; QuestionItem[] qia = { q1, q2, q3, q4, q5 }; List <QuestionItem> qil = new List <QuestionItem>(qia); ChoiceItem c1 = new ChoiceItem(0, "Very good/much."); ChoiceItem c2 = new ChoiceItem(1, "I do not know."); ChoiceItem c3 = new ChoiceItem(2, "Very bad/Not very much."); ChoiceItem[] cia = { c1, c2, c3 }; List <ChoiceItem> cil = new List <ChoiceItem>(cia); QuestionnaireData qd = new QuestionnaireData(qil, cil); qd.title = "Fancy questionnaire:"; qd.instructions = "Please fill in the following form."; qd.groupList = new QuestionnaireGroupList(); QuestionnaireGroup qg1 = new QuestionnaireGroup("A", "SUM/5"); QuestionnaireGroup[] qga = { qg1 }; qd.groupList.groups = new List <QuestionnaireGroup>(qga); return(qd); }
internal void setQuestionnaireXMLData(QuestionnaireData qd) { string fileId = "QuestionnaireDataFileIdTest.xml"; //store dm to file IDataStorage ids = (IDataStorage)AssetManager.Instance.Bridge; if (ids != null) { log("Storing DomainModel to File."); ids.Save(fileId, qd.toXmlString()); } else { log("No IDataStorage - Bridge implemented!", Severity.Warning); } PlayerProfilingAssetSettings ppas = new PlayerProfilingAssetSettings(); ppas.QuestionnaireDataXMLFileId = fileId; getPPA().Settings = ppas; }
protected virtual void SendAnalytics() { int videoID = ChicagoSceneTransition.Instance.GetLastVideo() != null?ChicagoSceneTransition.Instance.GetLastVideo().videoID : -1; QuestionnaireData questionnaireData = new QuestionnaireData(userID, headsetID, testTimestamp, videoID, responses[0], responses[1], responses[2], responses[3]); var data = new List <QuestionnaireData> { questionnaireData }; AnalyticsUtilities.Event(ANALYTICS_TITLE, data); Analytics.CustomEvent(ANALYTICS_TITLE, new Dictionary <string, object> { { "UserID", questionnaireData.UserID }, { "HeadsetID", questionnaireData.HeadsetID }, { "TestTimestamp", questionnaireData.TestTimestamp }, { "VideoID", questionnaireData.VideoID }, { "EmpathyAntwaun", questionnaireData.EmpathyAntwuan }, { "EmpathyTony", questionnaireData.EmpathyTony }, { "EmpathySantana", questionnaireData.EmpathySantana }, { "EmpathyDanny", questionnaireData.EmpathyDanny } }); }