fix: Convert Rows and Columns to numbers before comparison (#4654) (#4656)

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
devin-ai-integration[bot] 2025-01-08 14:13:28 -05:00 committed by GitHub
parent 401d5dcedd
commit 2f5076ece8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 42 additions and 1 deletions

View File

@ -0,0 +1,41 @@
import areAllImageDimensionsEqual from './areAllImageDimensionsEqual';
describe('areAllImageDimensionsEqual', () => {
it('should return false when no instances are provided', () => {
expect(areAllImageDimensionsEqual([])).toBe(false);
expect(areAllImageDimensionsEqual([] as any)).toBe(false);
});
it('should return true when all instances have the same dimensions', () => {
const instances = [
{ Rows: '512', Columns: '512' },
{ Rows: '512', Columns: '512' },
{ Rows: '512', Columns: '512' }
];
expect(areAllImageDimensionsEqual(instances)).toBe(true);
});
it('should return true when comparing string and number dimensions of same value', () => {
const instances = [
{ Rows: 512, Columns: 512 },
{ Rows: '512', Columns: '512' }
];
expect(areAllImageDimensionsEqual(instances)).toBe(true);
});
it('should return false when instances have different dimensions', () => {
const instances = [
{ Rows: '512', Columns: '512' },
{ Rows: '256', Columns: '512' }
];
expect(areAllImageDimensionsEqual(instances)).toBe(false);
});
it('should return false when dimensions are invalid strings', () => {
const instances = [
{ Rows: '512', Columns: '512' },
{ Rows: 'invalid', Columns: '512' }
];
expect(areAllImageDimensionsEqual(instances)).toBe(false);
});
});

View File

@ -17,7 +17,7 @@ export default function areAllImageDimensionsEqual(instances: Array<any>): boole
const instance = instances[i];
const { Rows, Columns } = instance;
if (Rows !== firstImageRows || Columns !== firstImageColumns) {
if (toNumber(Rows) !== firstImageRows || toNumber(Columns) !== firstImageColumns) {
return false;
}
}