You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
2.0 KiB

10 years ago
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using Rhino.Mocks;
  3. using Sevomin.Models.Helpers;
  4. using Sevomin.WebFrontend.Controllers;
  5. using System.Security.Principal;
  6. using System.Threading.Tasks;
  7. using System.Web;
  8. using System.Web.Mvc;
  9. namespace Sevomin.Tests.Controllers.Job
  10. {
  11. [TestClass]
  12. public class NewJob
  13. {
  14. HttpContextBase fakeContext = MockRepository.GenerateStub<HttpContextBase>();
  15. public JobController GetCUT()
  16. {
  17. FakeJobRepository.Init();
  18. fakeContext = MockRepository.GenerateStub<HttpContextBase>();
  19. fakeContext.User = MockRepository.GenerateStub<IPrincipal>();
  20. fakeContext.User.Stub(x => x.Identity).Return(new FakeIdentity());
  21. JobController cut = new JobController(FakeJobRepository.Instance(),
  22. MockRepository.GenerateMock<SevominUserManager>(FakeDbContext.Instance()), fakeContext);
  23. return cut;
  24. }
  25. [TestMethod]
  26. public void MyTestMethod()
  27. {
  28. }
  29. [TestMethod]
  30. public async Task Returns_View_NewJob_JobController()
  31. {
  32. // Arrange
  33. JobController cut = GetCUT();
  34. // Act
  35. var result = (await cut.NewJob()) as ViewResult;
  36. // Assert
  37. Assert.IsNotNull(result);
  38. Assert.AreEqual(string.Empty, result.ViewName);
  39. }
  40. [TestMethod]
  41. public async Task Returns_EmptyJobModel_NewJob_JobController()
  42. {
  43. // Arrange
  44. JobController cut = GetCUT();
  45. // Act
  46. var result = (await cut.NewJob()) as ViewResult;
  47. // Assert
  48. Assert.IsNotNull(result);
  49. Assert.IsNotNull(result.Model);
  50. Assert.IsInstanceOfType(result.Model, typeof(Models.Job));
  51. Assert.AreNotEqual((result.Model as Models.Job).JobParameters.Count, 0);
  52. }
  53. }
  54. }