const { branchLike, branchLikes } = await this.fetchBranches(componentWithQualifier);
- const projectBinding = await getProjectAlmBinding(key).catch(() => undefined);
+ let projectBinding;
+ if (componentWithQualifier.qualifier === ComponentQualifier.Project) {
+ projectBinding = await getProjectAlmBinding(key).catch(() => undefined);
+ }
if (this.mounted) {
this.setState({
};
fetchProjectBindingErrors = async (component: T.Component) => {
- if (component.analysisDate === undefined && this.props.appState.branchesEnabled) {
+ if (
+ component.qualifier === ComponentQualifier.Project &&
+ component.analysisDate === undefined &&
+ this.props.appState.branchesEnabled
+ ) {
const projectBindingErrors = await validateProjectAlmBinding(component.key).catch(
() => undefined
);
});
it('loads the project binding, if any', async () => {
+ const component = mockComponent({
+ breadcrumbs: [{ key: 'foo', name: 'foo', qualifier: ComponentQualifier.Project }]
+ });
+ (getComponentNavigation as jest.Mock).mockResolvedValueOnce({});
+ (getComponentData as jest.Mock<any>)
+ .mockResolvedValueOnce({ component })
+ .mockResolvedValueOnce({ component });
(getProjectAlmBinding as jest.Mock).mockResolvedValueOnce(undefined).mockResolvedValueOnce({
alm: AlmKeys.GitHub,
key: 'foo'
});
});
+it.each([
+ [ComponentQualifier.Application],
+ [ComponentQualifier.Portfolio],
+ [ComponentQualifier.SubPortfolio]
+])(
+ 'should not care about PR decoration settings for %s',
+ async (componentQualifier: ComponentQualifier) => {
+ const component = mockComponent({
+ breadcrumbs: [{ key: 'foo', name: 'Foo', qualifier: componentQualifier }]
+ });
+ (getComponentNavigation as jest.Mock).mockResolvedValueOnce({});
+ (getComponentData as jest.Mock<any>).mockResolvedValueOnce({ component });
+
+ const wrapper = shallowRender();
+ await waitAndUpdate(wrapper);
+
+ expect(getProjectAlmBinding).not.toHaveBeenCalled();
+ expect(validateProjectAlmBinding).not.toHaveBeenCalled();
+ }
+);
+
function shallowRender(props: Partial<ComponentContainer['props']> = {}) {
return shallow<ComponentContainer>(
<ComponentContainer