public async Task <IActionResult> GenerateTest([FromBody] TestGeneration testGeneration) { var questions = await _context.Set <Question>().Include(x => x.Chapter) .Where(x => testGeneration.SelectedChapters.Contains(x.ChapterId.Value)) .GroupBy(x => x.Chapter.Title).Select(x => new Test() { Theme = x.Key, Questions = x.Select(y => new TestQuestion() { Text = y.Text, Content = y.Content }).ToArray() }).ToArrayAsync(); var tests = new List <Test>(); foreach (var question in questions) { tests.Add(Generate(question, testGeneration.Percentage)); } var serialized = JsonConvert.SerializeObject(tests, Formatting.Indented); using (var f = System.IO.File.CreateText("test.json")) { await f.WriteAsync(serialized); } return(Ok(tests)); }
public override void OnInspectorGUI() { TestGeneration testGeneration = (TestGeneration)target; if (DrawDefaultInspector()) { if (testGeneration.autoUpdate) { testGeneration.TestRenderer(); } } if (GUILayout.Button("Recurse")) { testGeneration.TestRecurse(); } if (GUILayout.Button("Render")) { testGeneration.TestRenderer(); } if (GUILayout.Button("Recurse & Render")) { testGeneration.RecurseAndRender(); } if (GUILayout.Button("Clear All")) { testGeneration.ClearPlants(); } }
private void FastRecenterOnLock(IAsyncCallResult ar) { var asyncState = ar.AsyncState as PrinterObject; if (asyncState == null) { throw new Exception("Big bad C# exception"); } if (ar.CallResult == CommandResult.Success_LockAcquired) { if (asyncState.Info.extruder.ishomed == Trilean.True) { List <string> stringList = TestGeneration.FastRecenter(asyncState.MyPrinterProfile); var num = (int)asyncState.SendManualGCode(new M3D.Spooling.Client.AsyncCallback(ReleaseAfterCommand), asyncState, stringList.ToArray()); } else { var num1 = (int)asyncState.SendManualGCode(new M3D.Spooling.Client.AsyncCallback(ReleaseAfterCommand), asyncState, "G28"); } } else { asyncState.ShowLockError(ar); } }
public void diagnosticsFrameButtonCallback(ButtonWidget button) { PrinterObject selectedPrinter = spooler_connection.SelectedPrinter; if (selectedPrinter == null || !selectedPrinter.IsConnected()) { return; } switch (button.ID) { case 1000: var num1 = (int)selectedPrinter.SendEmergencyStop(null, null); break; case 1020: var num2 = (int)selectedPrinter.DoFirmwareUpdate(); break; case 1021: selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, "G28"); break; case 1022: var num3 = (int)selectedPrinter.AcquireLock(new M3D.Spooling.Client.AsyncCallback(FastRecenterOnLock), selectedPrinter); break; case 1023: List <string> xspeedTest = TestGeneration.CreateXSpeedTest(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, xspeedTest.ToArray()); break; case 1024: List <string> yspeedTest = TestGeneration.CreateYSpeedTest(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, yspeedTest.ToArray()); break; case 1025: var num4 = (int)selectedPrinter.AcquireLock(new M3D.Spooling.Client.AsyncCallback(DoBacklashPrintOnLock), selectedPrinter); break; case 1026: List <string> xskipTestMinus = TestGeneration.CreateXSkipTestMinus(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, xskipTestMinus.ToArray()); break; case 1027: List <string> xskipTestPlus = TestGeneration.CreateXSkipTestPlus(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, xskipTestPlus.ToArray()); break; case 1028: List <string> yskipTestMinus = TestGeneration.CreateYSkipTestMinus(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, yskipTestMinus.ToArray()); break; case 1029: List <string> yskipTestPlus = TestGeneration.CreateYSkipTestPlus(selectedPrinter.MyPrinterProfile); selectedPrinter.SendCommandAutoLockRelease(new M3D.Spooling.Client.AsyncCallback(selectedPrinter.ShowLockError), selectedPrinter, yskipTestPlus.ToArray()); break; } }
// partial void Awake(); private void Start() { _ = new TestGeneration(); }