Inheritance: ApiController
        public void Remove_WithValidTest_ShouldCallService()
        {
            //Arrange
            var testModel = new InterviewerTestDetailsViewModel()
            {
                Id   = 1,
                Name = "Test 1",
                Url  = "https://www.mysite.bg/"
            };

            bool serviceCalled = false;

            var mockRepository = new Mock <IInterviewerTestsService>();

            mockRepository.Setup(service => service.Remove(1))
            .Callback(() => serviceCalled = true);

            var controller = new TestsController(mockRepository.Object);

            //Act
            var result = controller.Remove(1);

            //Assert
            Assert.IsTrue(serviceCalled);
        }
        public async Task Details_ShouldReturnTest()
        {
            //Arrange
            var testModel = new InterviewerTestDetailsViewModel()
            {
                Id   = 1,
                Name = "Test 1",
                Url  = "https://www.mysite.bg/"
            };

            bool serviceCalled = false;

            var mockRepository = new Mock <IInterviewerTestsService>();

            mockRepository.Setup(service => service.Details(It.IsAny <int>()))
            .ReturnsAsync(testModel)
            .Callback(() => serviceCalled = true);

            var controller = new TestsController(mockRepository.Object);

            //Act
            var result = await controller.Details(1);

            //Assert
            Assert.IsInstanceOfType(result, typeof(ViewResult));
            Assert.IsTrue(serviceCalled);
        }
Example #3
0
        public void CopyTestFile_should_save_existing_test_file_with_new_name(bool expectedResult)
        {
            // given
            const string sourceFilename = "I AM YO FILENAME BRO.FML";
            const string targetFilename = "<insert virus script here so I can break Chris' computer...>";

            var testRepositoryMock = new Mock <ITestRepository>();

            var expectedExistingTestFile = new TestFile {
                Filename = sourceFilename
            };

            testRepositoryMock
            .Setup(x => x.GetTestFile(sourceFilename))
            .Returns(expectedExistingTestFile);

            testRepositoryMock
            .Setup(x => x.CreateTestFile(expectedExistingTestFile))
            .Returns(expectedResult);

            // when
            var  controller = new TestsController(testRepositoryMock.Object, null);
            bool result     = controller.CopyTestFile(sourceFilename, targetFilename);

            // then
            Assert.That(result, Is.EqualTo(expectedResult));
            Assert.That(expectedExistingTestFile.Filename, Is.EqualTo(targetFilename));
        }
Example #4
0
        public void CopyTest_should_save_test_file_with_additional_test(bool expectedResult)
        {
            // given
            const int    expectedPosition = 4;
            const string expectedFilename = "I AM YO FILENAME BRO.FML";

            var testRepositoryMock = new Mock <ITestRepository>();

            var expectedExistingTest = new Test {
                Description = "Initial description"
            };

            testRepositoryMock
            .Setup(x => x.GetTest(expectedFilename, expectedPosition))
            .Returns(expectedExistingTest);

            testRepositoryMock
            .Setup(x => x.CreateTest(expectedFilename, expectedExistingTest))
            .Returns(expectedResult);

            // when
            var  controller = new TestsController(testRepositoryMock.Object, null);
            bool result     = controller.CopyTest(expectedPosition, expectedFilename);

            // then
            Assert.That(result, Is.EqualTo(expectedResult));
            Assert.That(expectedExistingTest.Description, Is.EqualTo("Copy of Initial description"));
        }
Example #5
0
        public void TestControllerCreateReturnsCorrectView()
        {
            var controller   = new TestsController(mockContext.Object);
            var CreateResult = controller.Create() as ViewResult;

            //Assert
            Assert.AreEqual("Create", CreateResult.ViewName);
        }
Example #6
0
 public void SetUp()
 {
     storage     = A.Fake <IStorage>();
     testStorage = A.Fake <ITestStorage>();
     factory     = A.Fake <ITestBuilderFactory>();
     controller  = new TestsController(storage, testStorage, factory, new IExerciseGenerator[0], null);
     ControllerTestsHelper.AttachUserToControllerContext(controller, "admin");
 }
Example #7
0
        public void TestControllerDetailsReturnsCorrectTestById()
        {
            var controller    = new TestsController(mockContext.Object);
            var detailsResult = controller.Details(1);

            //TODO

            Assert.AreEqual(false, true);
        }
Example #8
0
        public void TestControllerReturnsCorrectTestIndex()
        {
            //Act
            var controller = new TestsController(mockContext.Object);
            var TestResult = controller.Index() as ViewResult;
            var model      = (List <Test>)TestResult.ViewData.Model;

            //Assert
            Assert.AreEqual(test, model.FirstOrDefault(c => c.Test_Name == "Начално ниво"));
        }
Example #9
0
        public void ExportActionShouldReturnNotNullableResult()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "Problem").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.IsNotNull(result);
        }
Example #10
0
        public void ExportActionShouldReturnZipFileWith24Files()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "Problem").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.AreEqual(zipFile.Count, 26);
        }
Example #11
0
        public void ExportActionShouldReturnOnlyNonTrialTestsIfProblemDoesNotHaveTrialOnes()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "OnlyNormalTests").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.AreEqual(20, zipFile.Count);
        }
Example #12
0
        public void ExportActionShouldReturnProperTrialTestsContentIfTheProblemDoesNotHaveNonTrialTests()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "OnlyTrialTests").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.001.in.txt").FirstOrDefault()), "Zero test 1\nZero test 1 second line");
            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.001.out.txt").FirstOrDefault()), "Zero test 1\nZero test 1 second lint output");
        }
Example #13
0
        public void ExportActionShouldReturnProperTrialTestsIfTheProblemDoesNotHaveNonTrial()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "OnlyTrialTests").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.IsTrue(zipFile.EntryFileNames.Contains(string.Format("test.000.{0:D3}.in.txt", 1)));
            Assert.IsTrue(zipFile.EntryFileNames.Contains(string.Format("test.000.{0:D3}.out.txt", 1)));
        }
Example #14
0
        public void ExportActionShouldNotHaveNotNeededTrialTestFiles()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "Problem").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.IsFalse(zipFile.EntryFileNames.Contains(string.Format("test.000.{0:D3}.in.txt", 3)));
            Assert.IsFalse(zipFile.EntryFileNames.Contains(string.Format("test.000.{0:D3}.out.txt", 3)));
        }
Example #15
0
        public void IndexTestWithId()
        {
            // Arrange
            TestsController controller = new TestsController();

            // Act
            string     id     = "testtwo";
            ViewResult result = controller.Index(id) as ViewResult;

            // Assert
            Assert.IsNotNull(result);
        }
Example #16
0
        public void Constructor_ShouldInitializeCorrectly()
        {
            // Arrange
            var mockFullTestService  = new Mock <ITestService>();
            var mockHelperFactory    = new Mock <IHelperFactory>();
            var mockViewModelFactory = new Mock <IViewModelFactory>();

            // Act
            var controller = new TestsController(mockFullTestService.Object, mockHelperFactory.Object, mockViewModelFactory.Object);

            // Assert
            Assert.IsNotNull(controller);
        }
Example #17
0
        public void TestGetOneIDNotFound()
        {
            //Arrange
            TestsController controller = new TestsController();

            //Act
            IActionResult    p      = controller.Get(50);
            StatusCodeResult result = p as StatusCodeResult;

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(result.StatusCode, 404);
        }
Example #18
0
        public void TestGetOne()
        {
            //Arrange
            TestsController controller = new TestsController();

            //Act
            IActionResult  p      = controller.Get(3);
            OkObjectResult result = p as OkObjectResult;

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(result.StatusCode, 200);
        }
Example #19
0
        public void TestGetAll()
        {
            //Arrange
            List <Test>     tests      = new List <Test>();
            TestsController controller = new TestsController();
            bool            check;

            //Act
            tests = controller.Get();
            check = tests.Count > 0;

            //Assert
            Assert.AreEqual(check, true);
        }
Example #20
0
        public void ExportActionShouldReturnCorrectTrialTestFileContent()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "Problem").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.001.in.txt").FirstOrDefault()), "Trial input test 1");
            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.001.out.txt").FirstOrDefault()), "Trial output test 1");
            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.002.in.txt").FirstOrDefault()), "Trial input test 2");
            Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == "test.000.002.out.txt").FirstOrDefault()), "Trial output test 2");
        }
Example #21
0
        private void btnSubmitRest_Click(object sender, RoutedEventArgs e)
        {
            var request = new RESTRequest
            {
                EndPoint    = txtboxUrlRest.Text + txtboxParams.Text,
                Method      = dropdownMethod.Text,
                PostData    = txtboxRestRequest.Text,
                ContentType = contentTypeList.Text,
            };

            var test = TestsController.GetRESTResponse(request, User);

            txtboxRestResponse.Text  = test.Response;
            timeProcessing_Rest.Text = test.ProcessingTime.ToString();

            if (!string.IsNullOrWhiteSpace(key1rest.Text) && (!string.IsNullOrWhiteSpace(value1rest.Text)))
            {
                var validare = TestsController.ValidateResponseREST(key1rest.Text, value1rest.Text, test.Response);
                if (validare == 1)
                {
                    assert1rest.Background = System.Windows.Media.Brushes.Green;
                }
                else if (validare == 0)
                {
                    assert1rest.Background = System.Windows.Media.Brushes.Red;
                }
                else
                {
                    assert1rest.Background = System.Windows.Media.Brushes.Yellow;
                }
            }
            ;
            if (!string.IsNullOrWhiteSpace(key2rest.Text) && (!string.IsNullOrWhiteSpace(value2rest.Text)))
            {
                var validare = TestsController.ValidateResponseREST(key2rest.Text, value2rest.Text, test.Response);
                if (validare == 1)
                {
                    assert2rest.Background = System.Windows.Media.Brushes.Green;
                }
                else if (validare == 0)
                {
                    assert2rest.Background = System.Windows.Media.Brushes.Red;
                }
                else
                {
                    assert2rest.Background = System.Windows.Media.Brushes.Yellow;
                }
            }
        }
Example #22
0
        private void btnSubmitSoap_Click(object sender, RoutedEventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(txtboxUrlSoap.Text))
            {
                var header = new Headers
                {
                    Name  = headername1.ToString(),
                    Value = headervalue1.ToString()
                };
                var test = TestsController.GetSOAPResponse(txtboxUrlSoap.Text, txtboxSoapRequest.Text, User, header);
                txtboxSoapResponse.Text  = test.Response;
                timeProcessing_Soap.Text = test.ProcessingTime.ToString();

                if (!string.IsNullOrWhiteSpace(key1soap.Text) && (!string.IsNullOrWhiteSpace(value1soap.Text)))
                {
                    var validare = TestsController.ValidateResponse(key1soap.Text, value1soap.Text, test.Response);
                    if (validare == 1)
                    {
                        assert1.Background = System.Windows.Media.Brushes.Green;
                    }
                    else if (validare == 0)
                    {
                        assert1.Background = System.Windows.Media.Brushes.Red;
                    }
                    else
                    {
                        assert1.Background = System.Windows.Media.Brushes.Yellow;
                    }
                }
                ;
                if (!string.IsNullOrWhiteSpace(key2soap.Text) && (!string.IsNullOrWhiteSpace(value2soap.Text)))
                {
                    var validare = TestsController.ValidateResponse(key2soap.Text, value2soap.Text, test.Response);
                    if (validare == 1)
                    {
                        assert2.Background = System.Windows.Media.Brushes.Green;
                    }
                    else if (validare == 0)
                    {
                        assert2.Background = System.Windows.Media.Brushes.Red;
                    }
                    else
                    {
                        assert2.Background = System.Windows.Media.Brushes.Yellow;
                    }
                }
            }
            ;
        }
Example #23
0
        public void ExportActionShouldReturnOnlyNonTrialTestsContentIfProblemDoesNotHaveTrialOnes()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "OnlyNormalTests").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            for (int i = 0; i < 10; i++)
            {
                Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == string.Format("test.{0:D3}.in.txt", i + 1)).FirstOrDefault()), "Only normal tests " + i.ToString());
                Assert.AreEqual(ZippedTestsManipulator.ExtractFileFromStream(zipFile.EntriesSorted.Where(x => x.FileName == string.Format("test.{0:D3}.out.txt", i + 1)).FirstOrDefault()), "Only normal tests output" + i.ToString());
            }
        }
Example #24
0
        public void ExportActionShouldReturnCorrectNonTrialTestFiles()
        {
            var problemId = this.Data.Problems.All().Where(x => x.Name == "Problem").FirstOrDefault().Id;

            var result = TestsController
                         .Export(problemId) as FileStreamResult;

            var zipFile = ZipFile.Read(result.FileStream);

            for (int i = 1; i <= 10; i++)
            {
                Assert.IsTrue(zipFile.EntryFileNames.Contains(string.Format("test.{0:D3}.in.txt", i)));
                Assert.IsTrue(zipFile.EntryFileNames.Contains(string.Format("test.{0:D3}.out.txt", i)));
            }
        }
Example #25
0
        public async Task Testcase_TestsController_Returns_TestModel()
        {
            //arrange
            var testContext = await GetWeTestDbContext();

            TestsController sut = new TestsController(testContext);

            //act
            var result = await sut.Details("8") as ViewResult;

            var modelToTest = result.Model as Test;

            //assert
            Assert.NotNull(modelToTest);
            Assert.NotNull(modelToTest.TestTitle);
        }
Example #26
0
        public void TestPostOneRPI_IDOutOfRang()
        {
            //Arrange
            DateTime date = DateTime.Now;
            Test     t    = new Test()
            {
                Temperature         = 35.029838,
                TimeOfDataRecording = date,
                ID            = 1,
                HasFever      = false,
                RaspberryPiID = 118723,
            };
            TestsController controller = new TestsController();

            //Act
            StatusCodeResult response = (StatusCodeResult)controller.Post(t);

            //Assert
            Assert.AreEqual(response.StatusCode, 400);
        }
Example #27
0
        public void TestPostOne()
        {
            //Arrange
            DateTime date = DateTime.Now;
            Test     t    = new Test()
            {
                Temperature         = 35.029838,
                TimeOfDataRecording = date,
                ID            = 1,
                HasFever      = false,
                RaspberryPiID = 1,
            };
            TestsController controller = new TestsController();

            //Act
            CreatedAtActionResult response = (CreatedAtActionResult)controller.Post(t);

            //Assert
            Assert.AreEqual(response.StatusCode, 201);
        }
Example #28
0
        public void TestUpdateOneIDOutOfRange()
        {
            //Arrange
            DateTime date = DateTime.Now;
            Test     u    = new Test()
            {
                Temperature         = 37.029838,
                TimeOfDataRecording = date,
                ID            = 50,
                HasFever      = true,
                RaspberryPiID = 1,
            };
            TestsController controller = new TestsController();

            //Act
            StatusCodeResult response = (StatusCodeResult)controller.Put(50, u);

            //Assert
            Assert.AreEqual(response.StatusCode, StatusCodes.Status404NotFound);
        }
Example #29
0
        public void TestUpdateOne()
        {
            //Arrange
            DateTime date = DateTime.Now;
            Test     t    = new Test()
            {
                Temperature         = 37.029838,
                TimeOfDataRecording = date,
                ID            = 3,
                HasFever      = true,
                RaspberryPiID = 1,
            };
            TestsController controller = new TestsController();

            //Act
            StatusCodeResult response = (StatusCodeResult)controller.Put(3, t);

            //Assert
            Assert.AreEqual(response.StatusCode, 200);
        }
Example #30
0
        public void Create_WithValidApplicant_ShouldCallService()
        {
            //Arrange
            var model = new InterviewerTestBindingModel();

            bool serviceCalled = false;

            var mockRepository = new Mock <IInterviewerTestsService>();

            mockRepository.Setup(r => r.Create(model))
            .Callback(() => serviceCalled = true);

            var controller = new TestsController(mockRepository.Object);

            //Act
            var result = controller.Create(model);

            //Assert
            Assert.IsTrue(serviceCalled);
        }