public static void test(StringBuilder sb) { var db = driverLow.create(); sb.AppendLine(); sb.AppendLine("*************************************************************"); sb.AppendLine("Admin/CompanyAdmin.ts"); db.testDeleteAll(); var adm = new adminCompanyController(); var globAdm = new adminGlobalController(); sb.AppendLine("***** otherCompanyAdmins, add, remove"); adm.setCompanyUserRoles("comp1", "p&p.p", CompRole.Department | CompRole.Admin); adm.setCompanyUserRoles("comp1", "p2&p.p", CompRole.HumanEvalManager); sb.AppendLine(JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); adm.setCompanyUserRoles("comp1", "p2&p.p", 0); sb.AppendLine(JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); db.testDeleteAll(); sb.AppendLine("***** otherCompanyAdmins, add company and system admin"); globAdm.createNewCompany("comp1", "[email protected]", true); adm.setCompanyUserRoles("comp1", "[email protected]", CompRole.Department); sb.AppendLine(JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); sb.AppendLine("***** otherCompanyAdmins, remove company admin"); adm.setCompanyUserRoles("comp1", "[email protected]", 0); sb.AppendLine(JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); sb.AppendLine(JsonConvert.SerializeObject(globAdm.getCompaniesAndTheirAdmins())); sb.AppendLine(); sb.AppendLine("*************************************************************"); sb.AppendLine("Admin/HumanEvalManager.ts"); db.testDeleteAll(); sb.AppendLine("***** evaluator: add, remove"); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English, LineIds.German }); sb.AppendLine("ADD: " + JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English }); sb.AppendLine("EDIT: " + JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[0]); sb.AppendLine("REMOVE:" + JsonConvert.SerializeObject(adm.getCompanyUserRoles("comp1"))); sb.AppendLine(JsonConvert.SerializeObject(db.compRead<Company_User>("comp1").usersObj)); }
public static void test(StringBuilder sb) { var db = driverLow.create(); //if (db.mode != azureMode.azure) return; var eval = new hmanEvalController(); var crs = new courseController(); var adm = new adminCompanyController(); evalLineResult evalLine; sb.AppendLine(); sb.AppendLine("*************************************************************"); db.testDeleteAll(); sb.AppendLine("***** setHumanEvaluator"); foreach (var em in Enumerable.Range(0, 10).Select(idx => string.Format("p{0}@p.p", idx))) foreach (var line in XExtension.Create(LineIds.English)) //, LineIds.German)) crs.saveData(em, "comp1", "/p/p/p1", 1, line, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "result", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval }, new AzureData.saveKeyDataObj { key = "ex", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval, } }); var lines = eval.linesToEval("comp1"); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English, LineIds.German }); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English, LineIds.German }); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English, LineIds.German }); evalLine = eval.getTestsToAssign("comp1", LineIds.English); sb.AppendLine("no assign evaluators: " + JsonConvert.SerializeObject(evalLine)); eval.setTestsToAssign("comp1", LineIds.English, new evaluator[] { new evaluator{email = "[email protected]", num = 3}, new evaluator{email = "[email protected]", num = 7}, }); evalLine = eval.getTestsToAssign("comp1", LineIds.English); sb.AppendLine("assign: " + JsonConvert.SerializeObject(evalLine)); foreach (var em in Enumerable.Range(0, 5).Select(idx => string.Format("p{0}@p.p", idx))) crs.saveData(em, "comp1", "/p/p/p1", 2, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "test", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval, shortData = "short", longData = "long" } }); evalLine = eval.getTestsToAssign("comp1", LineIds.English); eval.setTestsToAssign("comp1", LineIds.English, new evaluator[] { new evaluator{email = "[email protected]", num = 6}, new evaluator{email = "[email protected]", num = 3}, new evaluator{email = "[email protected]", num = 6}, }); evalLine = eval.getTestsToAssign("comp1", LineIds.English); sb.AppendLine("add test and assign: " + JsonConvert.SerializeObject(evalLine)); sb.AppendLine(); sb.AppendLine("*************************************************************"); db.testDeleteAll(); adm.setHumanEvaluator("comp1", "[email protected]", new LineIds[] { LineIds.English }); crs.saveData("[email protected]", "comp1", "/p/p/p1", 1, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "result", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval }, new AzureData.saveKeyDataObj { key = "ex1", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval, }, new AzureData.saveKeyDataObj { key = "ex2", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval, }, }); crs.saveData("[email protected]", "comp1", "/p/p/p1", 2, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "result", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval }, new AzureData.saveKeyDataObj { key = "ex1", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate | CourseDataFlag.needsEval, }, }); eval.setTestsToAssign("comp1", LineIds.English, new evaluator[] { new evaluator{email = "[email protected]", num = 2} }); evalLine = eval.getTestsToAssign("comp1", LineIds.English); var evTests = eval.getEvaluatorTests("comp1", "[email protected]"); var urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 1); sb.AppendLine("***** tests"); sb.AppendLine("add test and assign: " + JsonConvert.SerializeObject(evalLine)); sb.AppendLine("evaluator tests: " + JsonConvert.SerializeObject(evTests)); sb.AppendLine("test exercises: " + JsonConvert.SerializeObject(urls)); urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 2); crs.saveData("[email protected]", "comp1", "/p/p/p1", 1, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "ex1", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate }, }); urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 1); sb.AppendLine("***** evaluate exercise"); evalLine = eval.getTestsToAssign("comp1", LineIds.English); evTests = eval.getEvaluatorTests("comp1", "[email protected]"); urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 1); sb.AppendLine("add test and assign: " + JsonConvert.SerializeObject(evalLine)); sb.AppendLine("evaluator tests: " + JsonConvert.SerializeObject(evTests)); sb.AppendLine("test exercises: " + JsonConvert.SerializeObject(urls)); crs.saveData("[email protected]", "comp1", "/p/p/p1", 1, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "result", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate }, new AzureData.saveKeyDataObj { key = "ex2", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate }, }); sb.AppendLine("***** evaluate test"); evalLine = eval.getTestsToAssign("comp1", LineIds.English); evTests = eval.getEvaluatorTests("comp1", "[email protected]"); urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 1); sb.AppendLine("add test and assign: " + JsonConvert.SerializeObject(evalLine)); sb.AppendLine("evaluator tests: " + JsonConvert.SerializeObject(evTests)); sb.AppendLine("test exercises: " + JsonConvert.SerializeObject(urls)); crs.saveData("[email protected]", "comp1", "/p/p/p1", 2, LineIds.English, new AzureData.saveKeyDataObj[] { new AzureData.saveKeyDataObj { key = "result", flag = CourseDataFlag.testImpl_result | CourseDataFlag.pcCannotEvaluate }, new AzureData.saveKeyDataObj { key = "ex1", flag = CourseDataFlag.testEx | CourseDataFlag.pcCannotEvaluate, }, }); sb.AppendLine("***** evaluate all tests"); evalLine = eval.getTestsToAssign("comp1", LineIds.English); evTests = eval.getEvaluatorTests("comp1", "[email protected]"); urls = eval.getExerciseFromTest("[email protected]", "comp1", LineIds.English, "/p/p/p1", 1); sb.AppendLine("add test and assign: " + JsonConvert.SerializeObject(evalLine)); sb.AppendLine("evaluator tests: " + JsonConvert.SerializeObject(evTests)); sb.AppendLine("test exercises: " + JsonConvert.SerializeObject(urls)); return; }