Skip to content
Snippets Groups Projects

Include MR version information when loading file diffs

Merged Thomas Randolph requested to merge tor/defect/mr-versions-wrong-file-diff into master
All threads resolved!
1 file
+ 4
10
Compare changes
  • Side-by-side
  • Inline
@@ -42,29 +42,23 @@ describe('Merge Request utilities', () => {
@@ -42,29 +42,23 @@ describe('Merge Request utilities', () => {
endpoint = diffMetadata.merge_request_diffs[0].compare_path;
endpoint = diffMetadata.merge_request_diffs[0].compare_path;
it('still gets the correct derived information', () => {
it('still gets the correct derived information', () => {
expect(getDerivedMergeRequestInformation({ endpoint })).toEqual(
expect(getDerivedMergeRequestInformation({ endpoint })).toMatchObject(derivedBaseInfo);
expect.objectContaining(derivedBaseInfo),
);
});
});
it.each`
it.each`
url | versionPart
url | versionPart
${endpoint} | ${derivedVersionInfo}
${endpoint} | ${derivedVersionInfo}
${`${bare}?diff_id=4`} | ${{ ...derivedVersionInfo, startSha: undefined }}
${`${bare}?diff_id=${derivedVersionInfo.diffId}`} | ${{ ...derivedVersionInfo, startSha: undefined }}
${`${bare}?start_sha=${derivedVersionInfo.startSha}`} | ${{ ...derivedVersionInfo, diffId: undefined }}
${`${bare}?start_sha=${derivedVersionInfo.startSha}`} | ${{ ...derivedVersionInfo, diffId: undefined }}
`(
`(
'generates the correct derived version information based on $url',
'generates the correct derived version information based on $url',
({ url, versionPart }) => {
({ url, versionPart }) => {
expect(getDerivedMergeRequestInformation({ endpoint: url })).toEqual(
expect(getDerivedMergeRequestInformation({ endpoint: url })).toMatchObject(versionPart);
expect.objectContaining(versionPart),
);
},
},
);
);
it('extracts nothing if there is no available version-like information in the URL', () => {
it('extracts nothing if there is no available version-like information in the URL', () => {
expect(getDerivedMergeRequestInformation({ endpoint: bare })).toEqual(
expect(getDerivedMergeRequestInformation({ endpoint: bare })).toMatchObject(noVersion);
expect.objectContaining(noVersion),
);
});
});
});
});
});
});
Loading