⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testexamination.cs

📁 本在线考试系统采用了面向对象的分析和设计
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Text;
using NUnit.Framework;
using ExaminationSystem.BLL.Domain;

namespace ExaminationSystem.Test.Domain.Domain
{
    [TestFixture]
    public class TestExamination
    {
        [Test]
        [ExpectedException(typeof(Exception))]
        //学生不在参加班级
        public void TestEnterExamination1()
        {
            Student student = new Student();
            Class cls1 = new Class();

            cls1.AddStudent(student);
           
            Examination exam = new Examination();
            exam.AddClass(new Class());

            exam.EnterExamination(student);
        }
        [Test]
        [ExpectedException(typeof(Exception))]
        //学生迟到了
        public void TestEnterExamination2()
        {
            Student student = new Student();
            Class cs = new Class();
            cs.AddStudent(student);
        

            Examination exam = new Examination();
            exam.AddClass(cs);
            exam.StartTime = DateTime.Now - TimeSpan.FromMinutes(40);
            exam.LateMinutes = 30;

            exam.EnterExamination(student);
        }

        [Test]
        //正常情况
        public void TestEnterExamination3()
        {
            Student student = new Student();
            Class cs = new Class();
            cs.AddStudent(student);


            Examination exam = new Examination();
            exam.PaperStrategy = TestGlobal.PaperStrategy1;

            exam.AddClass(cs);
            exam.StartTime = DateTime.Now - TimeSpan.FromMinutes(29);
            exam.LateMinutes = 30;

            Assert.IsTrue(student.CurrentPaper == null);


            exam.EnterExamination(student);
            Assert.IsFalse(student.CurrentPaper == null);    
            Assert.IsTrue(student.CurrentPaper.Examination == exam);
            Assert.IsTrue(student.CurrentPaper.Student == student);
        }
        //提前入场
        [Test]
        [ExpectedException(typeof(Exception))]
        public void TestEnterExamination4()
        {
            Examination exam = new Examination();
            exam.StartTime = DateTime.Now + TimeSpan.FromMinutes(10);

            Class cs = new Class();
            Student student = new Student();

            cs.AddStudent(student);
            exam.AddClass(cs);

            exam.EnterExamination(student);

        }

        //提前交卷
        [Test]
        [ExpectedException(typeof(Exception))]
        public void TestSubmitPaper()
        {
            Examination exam = new Examination();
            Class cs = new Class();
            Student student = new Student();
            cs.AddStudent(student);
            exam.AddClass(cs);

            exam.PermitSubmitMinutes = 30;
            exam.StartTime = DateTime.Now - TimeSpan.FromMinutes(29);
            exam.LateMinutes = 30;
            exam.PaperStrategy = TestGlobal.PaperStrategy1;

            exam.EnterExamination(student);
            exam.SubmitPaper(student);

        }
        [Test]
        //正常交卷
        public void TestSubmitPaper1()
        {
            Examination exam = new Examination();
            Class cs = new Class();
            Student student = new Student();
            cs.AddStudent(student);
            exam.AddClass(cs);

            exam.PermitSubmitMinutes = 30;
            exam.StartTime = DateTime.Now - TimeSpan.FromMinutes(50);
            exam.LateMinutes = 51;
            exam.PaperStrategy = TestGlobal.PaperStrategy1;

            exam.EnterExamination(student);

            Assert.IsTrue(student.CurrentPaper != null);
            Assert.IsTrue(student.CurrentPaper.IsSubmited == false);
            int count = student.Papers.Count;
            exam.SubmitPaper(student);

            Assert.IsTrue(student.CurrentPaper == null);
            Assert.IsTrue(student.Papers[0].IsSubmited == true);
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -