# HG changeset patch # User Dmitry.Treskunov@UNIT-412.Labs.IntelliJ.Net # Date 1447269029 -10800 # Node ID 68160fb667b1af74612e7863d8b609fd8a33c4c1 # Parent eb3e0285ae52030134396a29a025262da431dc04 TW-43138 Report specific reason if agent side checkout is not possible due to complex checkout rules diff -r eb3e0285ae52 -r 68160fb667b1 mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialAgentSideVcsSupport.java --- a/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialAgentSideVcsSupport.java Wed Nov 11 21:03:31 2015 +0300 +++ b/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialAgentSideVcsSupport.java Wed Nov 11 22:10:29 2015 +0300 @@ -70,7 +70,7 @@ } return AgentCheckoutAbility.canCheckout(); } catch (VcsException e) { - return AgentCheckoutAbility.canNotCheckout(e.getMessage()); + return AgentCheckoutAbility.notSupportedCheckoutRules(e.getMessage()); } } diff -r eb3e0285ae52 -r 68160fb667b1 mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/AgentSideCheckoutTest.java --- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/AgentSideCheckoutTest.java Wed Nov 11 21:03:31 2015 +0300 +++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/AgentSideCheckoutTest.java Wed Nov 11 22:10:29 2015 +0300 @@ -117,7 +117,8 @@ AgentCheckoutAbility agentCheckoutAbility = myVcsSupport.canCheckout(root, new CheckoutRules("+:subdir=>subdir2"), myContext.mock(AgentRunningBuild.class, "build" + myBuildCounter++)); - assertThat(agentCheckoutAbility.getCanNotCheckoutReason().describe(true), containsString("Invalid include rule: subdir=>subdir2")); + assertThat(agentCheckoutAbility.getCanNotCheckoutReason().getType(), CoreMatchers.equalTo(AgentCheckoutAbility.NOT_SUPPORTED_CHECKOUT_RULES)); + assertThat(agentCheckoutAbility.getCanNotCheckoutReason().getDetails(), containsString("Invalid include rule: subdir=>subdir2")); } public void checkout_on_agent() throws IOException, VcsException {