コード例 #1
0
        public void TestInit()
        {
            votableIssue  = Mock.Of <Issue>(i => i.Id == 1 && i.IsVotableIssue == true && i.Author.Id == "AuthId" && i.GetPrettyPercentage() == "67");
            fundableIssue = Mock.Of <Issue>(i => i.IsFundable == true && i.Author.Id == "AuthId");
            newIssue      = Mock.Of <IssueViewModel>();
            votableIssues = new List <Issue>()
            {
                votableIssue, votableIssue, votableIssue
            };
            fundableIssues = new List <Issue>()
            {
                fundableIssue, fundableIssue, fundableIssue
            };

            _repo = new Mock <IIssueRepository>();
            _repo.Setup(r => r.Find(1)).Returns(votableIssue);
            _repo.Setup(r => r.Add(newIssue)).Verifiable();
            _repo.Setup(r => r.GetAllVotableIssuesSortedByDate()).Returns(votableIssues);
            _repo.Setup(r => r.GetAllFundableIssuesSortedByDate()).Returns(fundableIssues);
            //&& r.GetAllVotableIssuesSortedByVoteCount() == votableIssues

            controller = new IssuesController(_repo.Object);

            var user            = Mock.Of <IPrincipal>(p => p.Identity.Name == "TestUid");
            var httpContextMock = Mock.Of <HttpContextBase>(ctx => ctx.User == user);

            var controllerContext = new ControllerContext {
                HttpContext = httpContextMock
            };

            controllerContext.Controller = controller;
            controller.ControllerContext = controllerContext;
        }
コード例 #2
0
        public async void AddTagToIssue_CodeShouldBe204()
        {
            var issueCtrlPost = new IssuesController();

            issueCtrlPost.Request = new HttpRequestMessage()
            {
                Method = HttpMethod.Post
            };

            //TODO estes dados tem de existir de alguma forma
            string projectName = "Aplicacao-movel-via-verde", tagName = "bug";
            int    id       = 16;
            var    response = await issueCtrlPost.AssociationBetweenTagAndIssue(projectName, id, tagName);

            Assert.Equal(HttpStatusCode.NoContent, response.StatusCode);

            //repor dados com DELETE da associação criada anteriormente
            var issueCtrlDelete = new IssuesController();

            issueCtrlDelete.Request = new HttpRequestMessage()
            {
                Method = HttpMethod.Delete
            };
            var deleteResp = await issueCtrlDelete.AssociationBetweenTagAndIssue(projectName, id, tagName);

            Assert.Equal(HttpStatusCode.OK, deleteResp.StatusCode);

            //BUG ha aqui um .. O delete não executa, lança exception, possivel race-condition
        }
コード例 #3
0
        public void Setup()
        {
            var issuesJson = File.ReadAllText(Path.Combine(".", "issues.json"));
            var issues     = JsonConvert.DeserializeObject <Issue[]>(issuesJson);
            var mockRepo   = new Mock <IIssueRepository>();

            mockRepo.Setup(m => m.GetBugAll(_cts.Token)).ReturnsAsync(issues);
            mockRepo.Setup(m => m.GetBugSingle(It.Is <int>(i => i > 0), _cts.Token)).ReturnsAsync(issues[0]);
            mockRepo.Setup(m => m.GetBugSingle(-1, _cts.Token)).ReturnsAsync((Issue)null);
            mockRepo.Setup(m => m.AddBug(It.IsAny <Issue>(), _cts.Token)).ReturnsAsync(3);

            AutoMapper.Mapper.Reset();
            AutoMapper.Mapper.Initialize(mapper =>
            {
                mapper.CreateMap <Issue, IssueDto>().ReverseMap();
                mapper.CreateMap <Issue, IssueCreateDto>().ReverseMap();
                mapper.CreateMap <Issue, IssueUpdateDto>().ReverseMap();
            });

            _mockRepo = mockRepo.Object;

            _controller = new IssuesController(_mockRepo)
            {
                ControllerContext = new ControllerContext
                {
                    HttpContext = new DefaultHttpContext()
                }
            };
        }
コード例 #4
0
        public async Task CanBringBackTheIssue()
        {
            _controller = new IssuesController(_context, _mapper);
            _controller.ControllerContext = TestInitializer.GetContext();

            string _projectName = "Velocity";
            string _screenName  = "Install";
            string _locale      = "pl-PL";

            //var result = await _controller.Get(_projectName) as OkObjectResult;
            var OkObjectTask = _controller.Get(_projectName, _screenName, _locale);

            OkObjectTask.Wait();

            var result = OkObjectTask.Result as OkObjectResult;

            Assert.IsNotNull(result);

            var issues = result.Value as ICollection <IssueDto>;

            Assert.IsNotNull(issues);

            Assert.IsTrue(issues.Count == 2);


            // update old issue

            string _build = "1.0";

            CreateIssueDto newIssue = new CreateIssueDto {
                Text = "C0rrpu4Ed!", Severity = IssueSeverity.Error, Type = IssueType.CharacterCorruption
            };

            var OkObjectTask2 = _controller.Post(_projectName, _screenName, _locale, _build, newIssue);

            OkObjectTask2.Wait();

            var result2 = OkObjectTask2.Result as CreatedAtRouteResult;

            Assert.IsNotNull(result2);



            // check if it is not visible

            var OkObjectTask3 = _controller.Get(_projectName, _screenName, _locale);

            OkObjectTask3.Wait();

            var result3 = OkObjectTask3.Result as OkObjectResult;

            Assert.IsNotNull(result3);

            var issues3 = result3.Value as ICollection <IssueDto>;

            Assert.IsNotNull(issues3);

            Assert.IsTrue(issues3.Count == 3);
        }
コード例 #5
0
        public void DefaultView_HasSomeIssues()
        {
            var controller = new IssuesController();

            var result = controller.Index() as ViewResult;
            var issues = result.Model as IEnumerable <Issue>;

            Assert.IsNotEmpty(issues);
            //Assert.AreEqual("Teach mocks", issues.First().Title);
        }
コード例 #6
0
        private HttpResponseMessage RequestSingleIssue(string projectName, int issueId)
        {
            var ctrler = new IssuesController
            {
                Configuration = new HttpConfiguration(),
                Request       = new HttpRequestMessage()
            };

            return(ctrler.GetSingleIssue(projectName, issueId).Result);
        }
コード例 #7
0
        public void Edit_Get_returns_an_EditViewModel_for_the_correct_issue()
        {
            // Arrange
            var editableIssue = Mock.Of <Issue>(i => i.Title == "Title" && i.Id == 1 && i.ShortDescription == "Short" && i.LongDescription == "Long");

            _repo = new Mock <IIssueRepository>();
            _repo.Setup(r => r.Find(1)).Returns(editableIssue);
            var newController = new IssuesController(_repo.Object);

            // Act
            var result = newController.Edit(1) as ViewResult;

            // Assert
            result.Model.ShouldDeepEqual((EditViewModel)editableIssue);
        }
コード例 #8
0
        public void FundIssue_Get_maps_the_found_issue_to_the_vm()
        {
            // Arrange
            var issue = Mock.Of <Issue>(i => i.Id == 3 && i.Title == "Test Title" && i.ShortDescription == "Short Desc");

            _repo.Setup(r => r.Find(3)).Returns(issue);
            controller = new IssuesController(_repo.Object);
            FundViewModel issueVm = issue;

            // Act
            var result = controller.FundIssue(3) as ViewResult;

            // Assert
            result.Model.ShouldDeepEqual(issueVm);
        }
コード例 #9
0
        public void GetAllIssue()
        {
            //Arrange
            var mockIssueRepo = new Mock <IssueInterface>();

            mockIssueRepo.Setup(x => x.GetById(3)).Returns(new Issue {
                IssueID = 3
            });

            var controller = new IssuesController(mockIssueRepo.Object);

            //Act
            IssueDTO issueDTO = controller.GetById(3);

            //Assert
            Assert.AreEqual(3, issueDTO.IssueID);
        }
コード例 #10
0
        public IssuesControllerTests()
        {
            var config = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile(new IssueReturnProfile());
                cfg.AddProfile(new BookProfile());
                cfg.AddProfile(new MemberProfile());
            });
            var mapper = config.CreateMapper();

            _mockRepo       = new Mock <ITransactionRepository>();
            _mockMemberRepo = new Mock <IMemberRepository>();
            _mockBookRepo   = new Mock <IBookRepository>();
            _mockUnitOfWork = new Mock <IUnitOfWork>();
            _controller     = new IssuesController(_mockUnitOfWork.Object, mapper);

            _mockUnitOfWork.Setup(uow => uow.Members).Returns(_mockMemberRepo.Object);
            _mockUnitOfWork.Setup(uow => uow.Books).Returns(_mockBookRepo.Object);
        }
コード例 #11
0
        public async Task CanCreateIssue()
        {
            _controller = new IssuesController(_context, _mapper);

            _controller.ControllerContext = TestInitializer.GetContext();


            string _projectName = "Velocity";
            string _screenName  = "Install";
            string _locale      = "pl-PL";
            string _build       = "1.0";

            CreateIssueDto newIssue = new CreateIssueDto {
                Height = 10, Width = 10, X = 5, Y = 6, Text = "Test issue", Severity = IssueSeverity.Error, Type = IssueType.Linguistic
            };

            var OkObjectTask = _controller.Post(_projectName, _screenName, _locale, _build, newIssue);

            OkObjectTask.Wait();

            var result = OkObjectTask.Result as CreatedAtRouteResult;

            Assert.IsNotNull(result);

            var issue = result.Value as IssueDto;

            Assert.IsNotNull(issue);

            Assert.AreEqual(_projectName, issue.ProjectName);
            Assert.AreEqual(_screenName, issue.ScreenName);
            Assert.AreEqual(_locale, issue.LocaleCode);
            Assert.AreEqual(_build, issue.BuildModified);
            Assert.AreEqual(newIssue.Height, issue.Height);
            Assert.AreEqual(newIssue.Width, issue.Width);
            Assert.AreEqual(newIssue.X, issue.X);
            Assert.AreEqual(newIssue.Y, issue.Y);
            Assert.AreEqual(newIssue.Type, issue.Type);
            Assert.AreEqual(newIssue.Severity, issue.Severity);
            Assert.AreEqual(newIssue.Identifier, issue.Identifier);
            Assert.AreEqual(newIssue.Text, issue.Text);
        }
コード例 #12
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            int profileId = 0;

            int.TryParse(AppSettingsHelper.ReadSetting("ElectricScaleProfile"), out profileId);
            electricScaleProfile = ElectricScaleProfileHelper.ElectricScaleProfileList().Where(p => p.ProfileId == profileId).FirstOrDefault();
            //gridIssues.Children.Clear();
            issuesList = IssuesController.Select();
            txtSecurityCode.Focus();
            if (receiveOutputModel != null)
            {
                this.Title = "Storing System - OUTPUT Report";
            }
            if (receiveStoringModel != null)
            {
                if (issuesType == IssuesType.Issues.IssuesCompareWeight)
                {
                    this.Title = "Storing System - INPUT Report - Weight Problem";
                }
                if (issuesType == IssuesType.Issues.IssuesFirstCartonOfSizeOfPO)
                {
                    this.Title = "Storing System - INPUT Report - First Carton Problem";
                }
            }

            StackPanel stack = new StackPanel();

            stack.Orientation = Orientation.Vertical;
            for (int i = 0; i < issuesList.Count; i++)
            {
                RadioButton rad = new RadioButton();
                rad.Margin     = new Thickness(0, 15, 0, 0);
                rad.GroupName  = "Issues";
                rad.Tag        = i + 1;
                rad.Content    = issuesList[i].IssuesName.ToString();
                rad.Foreground = Brushes.Red;
                rad.Click     += new RoutedEventHandler(rad_Click);
                stack.Children.Add(rad);
            }
            gridIssues.Children.Add(stack);
        }
コード例 #13
0
        public async Task CanGetIssues()
        {
            _controller = new IssuesController(_context, _mapper);

            string _projectName = "Velocity";
            string _screenName  = "Install";
            string _locale      = "pl-PL";

            //var result = await _controller.Get(_projectName) as OkObjectResult;
            var OkObjectTask = _controller.Get(_projectName, _screenName, _locale);

            OkObjectTask.Wait();

            var result = OkObjectTask.Result as OkObjectResult;

            Assert.IsNotNull(result);

            var issues = result.Value as ICollection <IssueDto>;

            Assert.IsNotNull(issues);

            Assert.IsTrue(issues.Count == 2);

            var OkObjectTaskAll = _controller.Get(_projectName, _screenName, _locale, false);

            OkObjectTaskAll.Wait();

            var resultAll = OkObjectTaskAll.Result as OkObjectResult;

            Assert.IsNotNull(resultAll);

            var issuesAll = resultAll.Value as ICollection <IssueDto>;

            Assert.IsNotNull(issuesAll);

            Assert.IsTrue(issuesAll.Count == 3);
        }
コード例 #14
0
        public async Task CanUpdateIssue()
        {
            _controller = new IssuesController(_context, _mapper);
            _controller.ControllerContext = TestInitializer.GetContext();

            string _projectName = "Velocity";
            string _screenName  = "Install";
            string _locale      = "pl-PL";
            string _build       = "1.0";

            CreateIssueDto newIssue = new CreateIssueDto {
                Height = 10, Width = 10, X = 5, Y = 6, Text = "Test issue", Identifier = "ID1", Severity = IssueSeverity.Error, Type = IssueType.Linguistic, Status = IssueStatus.Active
            };

            var OkObjectTask = _controller.Put(_projectName, _screenName, _locale, _build, newIssue);

            OkObjectTask.Wait();

            var result = OkObjectTask.Result as CreatedAtRouteResult;

            Assert.IsNotNull(result);

            var issue = result.Value as IssueDto;

            Assert.IsNotNull(issue);

            Assert.AreEqual(_projectName, issue.ProjectName);
            Assert.AreEqual(_screenName, issue.ScreenName);
            Assert.AreEqual(_locale, issue.LocaleCode);
            Assert.AreEqual(_build, issue.BuildModified);
            Assert.AreEqual(newIssue.Height, issue.Height);
            Assert.AreEqual(newIssue.Width, issue.Width);
            Assert.AreEqual(newIssue.X, issue.X);
            Assert.AreEqual(newIssue.Y, issue.Y);
            Assert.AreEqual(newIssue.Type, issue.Type);
            Assert.AreEqual(newIssue.Severity, issue.Severity);
            Assert.AreEqual(newIssue.Identifier, issue.Identifier);
            Assert.AreEqual(newIssue.Text, issue.Text);


            IssueDto updatedIssue = new IssueDto();

            //_mapper.CreateMap<IssueDto, IssueDto>();
            _mapper.Map <IssueDto, IssueDto>(issue, updatedIssue);

            updatedIssue.Text     = "New text";
            updatedIssue.X        = issue.X + 5;
            updatedIssue.Y        = issue.Y + 5;
            updatedIssue.Height   = issue.Height + 5;
            updatedIssue.Width    = issue.Width + 5;
            updatedIssue.Severity = IssueSeverity.Info;
            updatedIssue.Status   = IssueStatus.Resolved;
            updatedIssue.Width    = issue.Width + 5;


            var UpdatedOkObjectTask = _controller.Put(_projectName, _screenName, _locale, _build, updatedIssue);

            UpdatedOkObjectTask.Wait();

            var result2 = UpdatedOkObjectTask.Result as CreatedAtRouteResult;

            Assert.IsNotNull(result2);

            var issue2 = result2.Value as IssueDto;

            Assert.AreEqual(_projectName, issue2.ProjectName);
            Assert.AreEqual(_screenName, issue2.ScreenName);
            Assert.AreEqual(_locale, issue2.LocaleCode);
            Assert.AreEqual(_build, issue2.BuildModified);
            Assert.AreEqual(updatedIssue.Height, issue2.Height);
            Assert.AreEqual(updatedIssue.Width, issue2.Width);
            Assert.AreEqual(updatedIssue.X, issue2.X);
            Assert.AreEqual(updatedIssue.Y, issue2.Y);
            Assert.AreEqual(newIssue.Type, issue2.Type);
            Assert.AreEqual(updatedIssue.Severity, issue2.Severity);
            Assert.AreEqual(newIssue.Identifier, issue2.Identifier);
            Assert.AreEqual(updatedIssue.Text, issue2.Text);

            IssueDto addedIssue = new IssueDto();

            //_mapper.CreateMap<IssueDto, IssueDto>();
            _mapper.Map <IssueDto, IssueDto>(issue, addedIssue);

            addedIssue.Text       = "New text!!!";
            addedIssue.X          = issue.X + 5;
            addedIssue.Y          = issue.Y + 5;
            addedIssue.Height     = issue.Height + 5;
            addedIssue.Width      = issue.Width + 5;
            addedIssue.Severity   = IssueSeverity.Info;
            addedIssue.Status     = IssueStatus.Resolved;
            addedIssue.Width      = issue.Width + 5;
            addedIssue.Identifier = "ID4";
            addedIssue.Type       = IssueType.Overlapping;


            var AddedOkObjectTask = _controller.Put(_projectName, _screenName, _locale, _build, addedIssue);

            AddedOkObjectTask.Wait();

            var result3 = AddedOkObjectTask.Result as CreatedAtRouteResult;

            Assert.IsNotNull(result3);

            var issue3 = result3.Value as IssueDto;

            Assert.AreNotEqual(issue.Id, issue3.Id);
            Assert.AreEqual(_projectName, issue3.ProjectName);
            Assert.AreEqual(_screenName, issue3.ScreenName);
            Assert.AreEqual(_locale, issue3.LocaleCode);
            Assert.AreEqual(_build, issue3.BuildModified);
            Assert.AreEqual(addedIssue.Height, issue3.Height);
            Assert.AreEqual(addedIssue.Width, issue3.Width);
            Assert.AreEqual(addedIssue.X, issue3.X);
            Assert.AreEqual(addedIssue.Y, issue3.Y);
            Assert.AreEqual(addedIssue.Type, issue3.Type);
            Assert.AreEqual(addedIssue.Severity, issue3.Severity);
            Assert.AreEqual(addedIssue.Identifier, issue3.Identifier);
            Assert.AreEqual(addedIssue.Text, issue3.Text);
        }
コード例 #15
0
 public IssuesControllerTests()
 {
     _controller=new IssuesController(_mockIissue_.object);
 }
コード例 #16
0
 public void SetUp()
 {
     repository = Substitute.For <IIssuesRepository>();
     controller = new IssuesController(repository);
 }