&& request.getParameter(PROJECT_ID).startsWith("project")){ SProject project = this.myServer.getProjectManager().findProjectById(request.getParameter(PROJECT_ID)); SlackNotificationProjectSettings projSettings = (SlackNotificationProjectSettings) mySettings.getSettings(request.getParameter(PROJECT_ID), "slackNotifications"); SBuildType sBuildType = TeamCityIdResolver.findBuildTypeById(this.myServer.getProjectManager(), request.getParameter("buildTypeId")); if (sBuildType != null){ SProject project = sBuildType.getProject();
&& request.getParameter(PROJECT_ID).startsWith("project")){ projSettings = (SlackNotificationProjectSettings) mySettings.getSettings(request.getParameter(PROJECT_ID), SLACK_NOTIFICATION); myProject = this.myServer.getProjectManager().findProjectById(request.getParameter(PROJECT_ID)); SProject project = this.myServer.getProjectManager().findProjectById(request.getParameter(PROJECT_ID));
SProject project = TeamCityIdResolver.findProjectById(this.myServer.getProjectManager(), request.getParameter("projectId")); if (project != null){ SBuildType sBuildType = TeamCityIdResolver.findBuildTypeById(this.myServer.getProjectManager(), request.getParameter("buildTypeId")); if (sBuildType != null){ SProject project = sBuildType.getProject();
boolean noErrors = true; if ((request.getParameter("projectId") != null)){ myProject = this.myServer.getProjectManager().findProjectById(request.getParameter("projectId")); if (myProject == null){ params.put(PARAMS_MESSAGES_KEY, "<errors><error id=\"messageArea\">The webhook was not found. No matching project found</error></errors>"); && request.getParameter("projectId") != null ){ SProject project = TeamCityIdResolver.findProjectById(this.myServer.getProjectManager(), request.getParameter("projectId")); if (project != null){
List<SlackNotificationConfigWrapper> configs = new ArrayList<SlackNotificationConfigWrapper>(); List<SProject> projects = new ArrayList<SProject>(); SProject myProject = myBuildServer.getProjectManager().findProjectById(projectId); projects.addAll(myProject.getProjectPath()); for (SProject project : projects){
SProject project = this.myServer.getProjectManager().findProjectById(request.getParameter("projectId")); if (project == null){ params.put("haveProject", "false"); SBuildType sBuildType = TeamCityIdResolver.findBuildTypeById(this.myServer.getProjectManager(), request.getParameter("buildTypeId")); if (sBuildType != null){ SProject project = sBuildType.getProject();
@Before public void setup() throws JAXBException, IOException, JDOMException { MockitoAnnotations.initMocks(this); variableResolverManager.registerVariableResolverFactory(new WebHooksBeanUtilsVariableResolverFactory()); jsonTemplate.register(); buildType.setProject(sproject); when(server.findBuildInstanceById(1)).thenReturn(runningBuild); when(server.findBuildInstanceById(2)).thenReturn(runningBuild); when(server.getProjectManager()).thenReturn(projectManager); when(server.getRootUrl()).thenReturn("http://teamcity"); when(projectManager.findProjectByExternalId(eq("MyProject"))).thenReturn(sproject); when(projectManager.findProjectById(eq("project01"))).thenReturn(sproject); UsernamePasswordAuthenticatorFactory usernamePasswordAuthenticatorFactory = new UsernamePasswordAuthenticatorFactory(webHookAuthenticatorProvider); usernamePasswordAuthenticatorFactory.register(); framework = WebHookMockingFrameworkImpl.create(BuildStateEnum.BUILD_FINISHED, new ExtraParametersMap(new HashMap<String,String>()), new ExtraParametersMap(new HashMap<String,String>())); framework.loadWebHookProjectSettingsFromConfigXml(new File("src/test/resources/project-settings-test-slackcompact-jsonTemplate-AllEnabled.xml")); webHookProjectSettings = framework.getWebHookProjectSettings(); when(projectSettingsManager.getSettings(anyString(), anyString())).thenReturn(webHookProjectSettings); when(parametersProvider.getAll()).thenReturn(new TreeMap<String,String>()); buildType.setParametersProvider(parametersProvider); WebHookTemplateEntity templateEntity = webHookTemplateJaxTestHelper.readTemplate("src/main/resources/webhook/teamcity/payload/template/SlackComCompactWebHookTemplate.xml"); webHookTemplateManager.registerTemplateFormatFromXmlEntity(templateEntity); webHookHistoryItemFactory = new MockWebHookHistoryItemFactory(sproject); }
@Before public void setUp() throws Exception { resolverManager.registerVariableResolverFactory(variableResolverFactory); webHookImpl = new TestingWebHookFactory().getWebHook(); allBuildStates.allEnabled(); webHookImpl.setBuildStates(allBuildStates); spyWebHook = spy(webHookImpl); webHookConfig = mock(WebHookConfig.class); contentBuilder = new WebHookContentBuilder(manager, templateResolver, resolverManager); whl = new WebHookListener(sBuildServer, settings, configSettings, manager, factory, templateResolver, contentBuilder, historyRepository, historyItemFactory); projSettings = new WebHookProjectSettings(); when(factory.getWebHook(any(WebHookConfig.class), any(WebHookProxyConfig.class))).thenReturn(webHookImpl); when(manager.isRegisteredFormat("JSON")).thenReturn(true); when(manager.getFormat("JSON")).thenReturn(payload); when(manager.getServer()).thenReturn(sBuildServer); when(sBuildServer.getProjectManager()).thenReturn(projectManager); when(projectManager.findProjectById("project1")).thenReturn(sProject); when(sBuildServer.getHistory()).thenReturn(buildHistory); when(sBuildServer.getRootUrl()).thenReturn("http://test.server"); when(previousSuccessfulBuild.getBuildStatus()).thenReturn(Status.NORMAL); when(previousSuccessfulBuild.isPersonal()).thenReturn(false); when(previousFailedBuild.getBuildStatus()).thenReturn(Status.FAILURE); when(previousFailedBuild.isPersonal()).thenReturn(false); when(configSettings.getProxyConfigForUrl("http://text/test")).thenReturn(null); finishedSuccessfulBuilds.add(previousSuccessfulBuild); finishedFailedBuilds.add(previousFailedBuild); sBuildType.setProject(sProject); when(settings.getSettings(sRunningBuild.getProjectId(), "webhooks")).thenReturn(projSettings); whl.register(); }
SProject project = TeamCityIdResolver.findProjectById(this.myServer.getProjectManager(), request.getParameter("projectId")); if (project != null){ SBuildType sBuildType = TeamCityIdResolver.findBuildTypeById(this.myServer.getProjectManager(), request.getParameter("buildTypeId")); if (sBuildType != null){ SProject project = sBuildType.getProject();
List<WebHookConfig> configs = new ArrayList<>(); List<SProject> projects = new ArrayList<>(); SProject myProject = myBuildServer.getProjectManager().findProjectById(projectId); projects.addAll(myProject.getProjectPath()); for (SProject project : projects){
when(sBuildServer.getHistory()).thenReturn(buildHistory); when(sBuildServer.getRootUrl()).thenReturn("http://test.server"); when(sBuildServer.getProjectManager()).thenReturn(projectManager); when(previousSuccessfulBuild.getBuildStatus()).thenReturn(Status.NORMAL); when(previousSuccessfulBuild.isPersonal()).thenReturn(false);
private WebHookConfig findWebHookWithId(String projectExternalId, String webHookConfigUniqueId) throws WebHookConfigNotFoundException { SProject myProject = myServer.getProjectManager().findProjectByExternalId(projectExternalId); for (SProject project : myProject.getProjectPath()){ WebHookProjectSettings projSettings = (WebHookProjectSettings) myProjectSettingsManager.getSettings(project.getProjectId(), WebHookListener.WEBHOOKS_SETTINGS_ATTRIBUTE_NAME); if (projSettings.isEnabled()){ for (WebHookConfig whc : projSettings.getWebHooksConfigs()){ if (whc.isEnabledForSubProjects() == false && !myProject.getProjectId().equals(project.getProjectId())){ // Sub-projects are disabled and we are a subproject. if (Loggers.SERVER.isDebugEnabled()){ Loggers.SERVER.debug(this.getClass().getSimpleName() + ":getListOfEnabledWebHooks() " + ":: subprojects not enabled. myProject is: " + myProject.getProjectId() + ". webhook project is: " + project.getProjectId()); } continue; } if (whc.getUniqueKey().equals(webHookConfigUniqueId)) { if (myWebHookPayloadManager.isRegisteredFormat(whc.getPayloadFormat())){ return whc.copy(); } else { throw new WebHookConfigNotFoundException("No registered Payload Handler for " + whc.getPayloadFormat()); } } } } else { Loggers.SERVER.debug("WebHookUserRequestedExecutorImpl :: WebHooks are disasbled for " + projectExternalId); } } throw new WebHookConfigNotFoundException(String.format("Webhook Configuration %s was not found", webHookConfigUniqueId)); }
when(sBuildServer.getHistory()).thenReturn(buildHistory); when(sBuildServer.getRootUrl()).thenReturn("http://test.server"); when(sBuildServer.getProjectManager()).thenReturn(projectManager); when(previousSuccessfulBuild.getBuildStatus()).thenReturn(Status.NORMAL); when(previousSuccessfulBuild.isPersonal()).thenReturn(false);
myServer.getProjectManager().findProjectByExternalId(webHookTemplateExecutionRequest.getProjectExternalId()).getName(), sbuild.getBuildTypeId(), sbuild.getBuildTypeName(),