Exemple #1
0
        public void It_should_return_default_card_type_if_issue_has_no_labels()
        {
            var issue = new GitHubIssues.Issue();

            GithubConversionExtensions.CalculateLeanKitCardType(_mapping, (GitHubIssues.Issue)null).Id.ShouldEqual(_testBoard.CardTypes.Last().Id);
            GithubConversionExtensions.CalculateLeanKitCardType(_mapping, issue).Id.ShouldEqual(_testBoard.CardTypes.Last().Id);
        }
Exemple #2
0
        protected override void OnArrange()
        {
            base.OnArrange();

            MockLeanKitApi.Setup(x => x.GetBoard(It.IsAny <long>())).Returns(_testBoard);

            var serializer = new JsonSerializer <GitHubIssues.Issue>();

            var issue1 = new GitHubIssues.Issue()
            {
                Id     = 1,
                Number = 1,
                State  = "Open"
            };

            var restResponse1 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue1), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/1") && y.Method == Method.GET))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/1") && y.Method == Method.PATCH))).Returns(restResponse1);

            var issue2 = new GitHubIssues.Issue()
            {
                Id     = 2,
                Number = 2,
                State  = "Closed"
            };

            var restResponse2 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue2), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/2") && y.Method == Method.GET))).Returns(restResponse2);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/2") && y.Method == Method.PATCH))).Returns(restResponse2);

            var errorSerializer = new JsonSerializer <GitHubIssues.ErrorMessage>();
            var errorResponse   = new RestResponse()
            {
                Content = errorSerializer.SerializeToString(new GitHubIssues.ErrorMessage()
                {
                    Message = "Error"
                }), StatusCode = HttpStatusCode.NotFound
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/3") && y.Method == Method.GET))).Returns(errorResponse);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/3") && y.Method == Method.PATCH))).Returns(errorResponse);
        }
Exemple #3
0
        public void It_should_return_mapped_card_type_if_issue_has_matching_label()
        {
            var issue = new GitHubIssues.Issue()
            {
                Labels = new List <GitHubIssues.Label>()
                {
                    new GitHubIssues.Label()
                    {
                        Name = "Roger"
                    }
                }
            };

            GithubConversionExtensions.CalculateLeanKitCardType(_mapping, issue).Id.ShouldEqual(_testBoard.CardTypes.FirstOrDefault(x => x.Name == "Willy").Id);
        }
Exemple #4
0
        public void It_should_return_default_card_type_if_issue_has_no_matching_labels()
        {
            var issue = new GitHubIssues.Issue()
            {
                Labels = new List <GitHubIssues.Label>()
                {
                    new GitHubIssues.Label()
                    {
                        Name = "Bob"
                    }
                }
            };

            GithubConversionExtensions.CalculateLeanKitCardType(_mapping, issue).Id.ShouldEqual(_testBoard.CardTypes.Last().Id);
        }
Exemple #5
0
        protected override void OnArrange()
        {
            base.OnArrange();

            MockLeanKitApi.Setup(x => x.GetBoard(It.IsAny <long>())).Returns(_testBoard);

            var serializer = new JsonSerializer <List <GitHubIssues.Issue> >();

            var issue1 = new GitHubIssues.Issue()
            {
                Id     = 1,
                Number = 1,
                State  = "Open",
                Body   = "New Issue 1",
                Title  = "New Issue 1"
            };

            var issue2 = new GitHubIssues.Issue()
            {
                Id     = 2,
                Number = 2,
                State  = "Open",
                Body   = "New Issue 2",
                Title  = "New Issue 2"
            };

            var issue3 = new GitHubIssues.Issue()
            {
                Id     = 3,
                Number = 3,
                State  = "Open",
                Body   = "New Issue 3",
                Title  = "New Issue 3"
            };

            var restResponse1 = new RestResponse()
            {
                Content = serializer.SerializeToString(new List <GitHubIssues.Issue>()
                {
                    issue1
                }),
                StatusCode = HttpStatusCode.OK
            };

            var noRestResponse = new RestResponse()
            {
                StatusCode = HttpStatusCode.OK, Content = ""
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/1/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() == "Open"))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/1/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() != "Open"))).Returns(noRestResponse);
            MockLeanKitApi.Setup(x => x.GetCardByExternalId(1, It.IsAny <string>())).Returns((Card)null);
            MockLeanKitApi.Setup(x => x.AddCard(1, It.IsAny <Card>(), It.IsAny <string>())).Returns(_testCardAddResult1);

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/2/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() == "Open"))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/2/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() != "Open"))).Returns(noRestResponse);
            MockLeanKitApi.Setup(x => x.GetCardByExternalId(2, It.IsAny <string>())).Returns((Card)null);
            MockLeanKitApi.Setup(x => x.AddCard(2, It.IsAny <Card>(), It.IsAny <string>())).Returns(_testCardAddResult1);

            var restResponse3 = new RestResponse()
            {
                Content = serializer.SerializeToString(new List <GitHubIssues.Issue>()
                {
                    issue1, issue2, issue3
                }),
                StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/3/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() == "Open"))).Returns(restResponse3);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/3/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() != "Open"))).Returns(noRestResponse);
            MockLeanKitApi.Setup(x => x.GetCardByExternalId(3, It.IsAny <string>())).Returns((Card)null);
            MockLeanKitApi.Setup(x => x.AddCard(3, It.IsAny <Card>(), It.IsAny <string>())).Returns(_testCardAddResult1);

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/4/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() == "Open"))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/4/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() != "Open"))).Returns(noRestResponse);
            MockLeanKitApi.Setup(x => x.GetCardByExternalId(4, It.IsAny <string>())).Returns(new Card()
            {
                Id = 4, ExternalSystemName = "GitHub"
            });
            MockLeanKitApi.Setup(x => x.AddCard(4, It.IsAny <Card>(), It.IsAny <string>())).Returns(_testCardAddResult1);

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/5/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() == "Open"))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("/5/issues") && y.Method == Method.GET && y.Parameters[0].Value.ToString() != "Open"))).Returns(noRestResponse);
            MockLeanKitApi.Setup(x => x.GetCardByExternalId(5, It.IsAny <string>())).Returns(new Card()
            {
                Id = 4, ExternalSystemName = "GitHubby"
            });
            MockLeanKitApi.Setup(x => x.AddCard(5, It.IsAny <Card>(), It.IsAny <string>())).Returns(_testCardAddResult1);
        }
Exemple #6
0
        protected override void OnArrange()
        {
            base.OnArrange();

            MockLeanKitApi.Setup(x => x.GetBoard(It.IsAny <long>())).Returns(_testBoard);

            var serializer = new JsonSerializer <GitHubIssues.Issue>();

            var issue1 = new GitHubIssues.Issue()
            {
                Id     = 1,
                Number = 1,
                Title  = "Issue 1",
                Body   = "Issue 1",
                State  = "Open"
            };

            var restResponse1 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue1), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/1") && y.Method == Method.GET))).Returns(restResponse1);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/1") && y.Method == Method.PATCH))).Returns(restResponse1);

            var issue2 = new GitHubIssues.Issue()
            {
                Id     = 2,
                Number = 2,
                Title  = "Issue 2",
                Body   = "Issue 2",
                State  = "Open"
            };

            var restResponse2 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue2), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/2") && y.Method == Method.GET))).Returns(restResponse2);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/2") && y.Method == Method.PATCH))).Returns(restResponse2);

            var issue3 = new GitHubIssues.Issue()
            {
                Id     = 3,
                Number = 3,
                Title  = "Issue 3",
                Body   = "Issue 3",
                State  = "Open"
            };

            var restResponse3 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue3), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/3") && y.Method == Method.GET))).Returns(restResponse3);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/3") && y.Method == Method.PATCH))).Returns(restResponse3);

            var issue4 = new GitHubIssues.Issue()
            {
                Id     = 4,
                Number = 4,
                Title  = "Issue 4",
                Body   = "Issue 4",
                State  = "Open"
            };

            var restResponse4 = new RestResponse()
            {
                Content = serializer.SerializeToString(issue4), StatusCode = HttpStatusCode.OK
            };

            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/4") && y.Method == Method.GET))).Returns(restResponse4);
            MockRestClient.Setup(x => x.Execute(It.Is <RestRequest>(y => y.Resource.Contains("issues/4") && y.Method == Method.PATCH))).Returns(restResponse4);
        }