Example #1
0
    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));
    }
Example #2
0
    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;
    }