예제 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("BatchId,BatchVersion,TestId,TestVersion,Passed")] BatchTest batchTest)
        {
            if (id != batchTest.BatchId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(batchTest);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BatchTestExists(batchTest.BatchId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BatchId"] = new SelectList(_context.Batch, "BatchId", "Status", batchTest.BatchId);
            ViewData["TestId"]  = new SelectList(_context.Test, "TestId", "TestId", batchTest.TestId);
            return(View(batchTest));
        }
예제 #2
0
        //============================================================================*
        // Export() - XML
        //============================================================================*

        public void Export(cRWXMLDocument XMLDocument, XmlElement XMLParentElement)
        {
            if (Count > 0)
            {
                XmlElement XMLElement = XMLDocument.CreateElement(ExportName, XMLParentElement);

                foreach (cBatchTest BatchTest in this)
                {
                    BatchTest.Export(XMLDocument, XMLElement);
                }
            }
        }
예제 #3
0
        public async Task <IActionResult> Create([Bind("BatchId,BatchVersion,TestId,TestVersion,Passed")] BatchTest batchTest)
        {
            if (ModelState.IsValid)
            {
                _context.Add(batchTest);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BatchId"] = new SelectList(_context.Batch, "BatchId", "Status", batchTest.BatchId);
            ViewData["TestId"]  = new SelectList(_context.Test, "TestId", "TestId", batchTest.TestId);
            return(View(batchTest));
        }
예제 #4
0
        /// <summary>
        /// Generates the test.
        /// </summary>
        /// <param name="template">The template.</param>
        /// <param name="entityExamples">The entity examples.</param>
        /// <param name="output">The output.</param>
        public void GenerateTest(Stream template, Stream entityExamples, Stream output)
        {
            var templateBatch = JsonHelper.DeserializeFromStream <BatchTest>(template);
            var batchExamples = JsonHelper.DeserializeFromStream <BatchExamples>(entityExamples);

            var batchTest = new BatchTest();

            foreach (var example in batchExamples.Examples)
            {
                var intent             = example.Intent;
                var templatesForIntent = templateBatch.BatchTestItems.Where(b => b.Intent.Equals(intent, StringComparison.InvariantCultureIgnoreCase));
                foreach (var entityExample in example.ExamplesByEntity)
                {
                    foreach (var intentTemplate in templatesForIntent)
                    {
                        LuisBatchTestItem item = new LuisBatchTestItem
                        {
                            Intent   = intent,
                            Entities = new List <Entity>()
                        };
                        var text = intentTemplate.Text;
                        foreach (var entityKeyValue in entityExample)
                        {
                            var    entityName  = entityKeyValue.Key;
                            var    entityValue = entityKeyValue.Value;
                            Entity newEntity   = new Entity {
                                Name = entityName
                            };
                            var placeHolder = $"<{entityName}>";
                            newEntity.StartPosition = text.IndexOf(placeHolder);
                            text = text.Replace(placeHolder, entityValue);
                            newEntity.EndPosition = newEntity.StartPosition + entityValue.Length;

                            item.Entities.Add(newEntity);
                        }

                        item.Text = text;
                        batchTest.BatchTestItems.Add(item);
                    }
                }
            }

            JsonHelper.SerializeToStream(batchTest.BatchTestItems, output);
        }
예제 #5
0
        public async Task <IActionResult> AddTests(int TestId, int BatchId, int BatchVersion)
        {
            string    firstName = HttpContext.Request.Form["Batchid"];
            BatchTest batchTest = new BatchTest();

            batchTest.BatchId      = BatchId;
            batchTest.BatchVersion = BatchVersion;
            batchTest.TestId       = TestId;
            batchTest.TestVersion  = 1;

            if (ModelState.IsValid)
            {
                _context.Add(batchTest);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BatchId"] = new SelectList(_context.Batch, "BatchId", "Status", batchTest.BatchId);
            ViewData["TestId"]  = new SelectList(_context.Test, "TestId", "TestId", batchTest.TestId);
            return(View(batchTest));
        }
예제 #6
0
        public async Task <IActionResult> AddTestsConfirmed(int TestId, int TestVersion, int BatchId, int BatchVersion)
        {
            BatchTest batchTest = new BatchTest();

            batchTest.BatchId      = BatchId;
            batchTest.BatchVersion = BatchVersion;
            batchTest.TestId       = TestId;
            batchTest.TestVersion  = TestVersion;

            var testProcsContext = _context.TestProc.Where(m => (m.BatchId == 0 && m.BatchVersion == 0 && m.TestId == TestId && m.TestVersion == TestVersion));
            var testProcs        = from info in testProcsContext select info;

            foreach (TestProc tp in testProcs)
            {
                TestProc newTestProc = new TestProc();
                newTestProc.BatchId      = BatchId;
                newTestProc.BatchVersion = BatchVersion;
                newTestProc.TestId       = TestId;
                newTestProc.TestVersion  = TestVersion;
                newTestProc.ProcId       = tp.ProcId;
                newTestProc.ReqId        = tp.ReqId;
                newTestProc.Parameters   = tp.Parameters;
                newTestProc.Passed       = null;
                newTestProc.Order        = tp.Order;

                _context.Add(newTestProc);
            }

            if (ModelState.IsValid)
            {
                _context.Add(batchTest);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Edit), new { id = BatchId, version = BatchVersion }));
            }
            ViewData["BatchId"] = new SelectList(_context.Batch, "BatchId", "Status", batchTest.BatchId);
            ViewData["TestId"]  = new SelectList(_context.Test, "TestId", "TestId", batchTest.TestId);
            return(RedirectToAction(nameof(Edit), new { id = BatchId, version = BatchVersion }));
        }