Merged in fix/3697-prettier-configs (pull request #3396)
fix(SW-3691): Setup one prettier config for whole repo * Setup prettierrc in root and remove other configs Approved-by: Joakim Jäderberg Approved-by: Linus Flood
This commit is contained in:
@@ -1,187 +1,187 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import { describe, expect, it } from "vitest"
|
||||
|
||||
import { getGroupedOpeningHours } from './utils'
|
||||
import { getGroupedOpeningHours } from "./utils"
|
||||
|
||||
import type { IntlShape } from 'react-intl'
|
||||
import { OpeningHours } from './openingHoursTypes'
|
||||
import type { IntlShape } from "react-intl"
|
||||
import { OpeningHours } from "./openingHoursTypes"
|
||||
|
||||
// Mock IntlShape for testing
|
||||
const mockIntl = {
|
||||
formatMessage: ({ defaultMessage }: { defaultMessage: string }) => {
|
||||
const messages: Record<string, string> = {
|
||||
Monday: 'Monday',
|
||||
Tuesday: 'Tuesday',
|
||||
Wednesday: 'Wednesday',
|
||||
Thursday: 'Thursday',
|
||||
Friday: 'Friday',
|
||||
Saturday: 'Saturday',
|
||||
Sunday: 'Sunday',
|
||||
Closed: 'Closed',
|
||||
'Always open': 'Always open',
|
||||
Monday: "Monday",
|
||||
Tuesday: "Tuesday",
|
||||
Wednesday: "Wednesday",
|
||||
Thursday: "Thursday",
|
||||
Friday: "Friday",
|
||||
Saturday: "Saturday",
|
||||
Sunday: "Sunday",
|
||||
Closed: "Closed",
|
||||
"Always open": "Always open",
|
||||
}
|
||||
return messages[defaultMessage] || defaultMessage
|
||||
},
|
||||
} as IntlShape
|
||||
|
||||
describe('getGroupedOpeningHours', () => {
|
||||
it('should group all days as closed', () => {
|
||||
describe("getGroupedOpeningHours", () => {
|
||||
it("should group all days as closed", () => {
|
||||
const allDaysClosed: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 3,
|
||||
},
|
||||
thursday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 4,
|
||||
},
|
||||
friday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 5,
|
||||
},
|
||||
saturday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 6,
|
||||
},
|
||||
sunday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 7,
|
||||
},
|
||||
}
|
||||
const result = getGroupedOpeningHours(allDaysClosed, mockIntl)
|
||||
expect(result).toEqual(['Monday-Sunday: Closed'])
|
||||
expect(result).toEqual(["Monday-Sunday: Closed"])
|
||||
})
|
||||
|
||||
it('should group all days with same opening hours', () => {
|
||||
it("should group all days with same opening hours", () => {
|
||||
const allDaysSameHours: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
},
|
||||
thursday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 4,
|
||||
},
|
||||
friday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 5,
|
||||
},
|
||||
saturday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 6,
|
||||
},
|
||||
sunday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 7,
|
||||
},
|
||||
}
|
||||
const result = getGroupedOpeningHours(allDaysSameHours, mockIntl)
|
||||
expect(result).toEqual(['Monday-Sunday: 09:00-17:00'])
|
||||
expect(result).toEqual(["Monday-Sunday: 09:00-17:00"])
|
||||
})
|
||||
|
||||
it('should handle mixed opening hours', () => {
|
||||
it("should handle mixed opening hours", () => {
|
||||
const mixedOpeningHours: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
},
|
||||
thursday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 4,
|
||||
},
|
||||
friday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 5,
|
||||
},
|
||||
saturday: {
|
||||
openingTime: '10:00',
|
||||
closingTime: '15:00',
|
||||
openingTime: "10:00",
|
||||
closingTime: "15:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 6,
|
||||
@@ -189,54 +189,54 @@ describe('getGroupedOpeningHours', () => {
|
||||
sunday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 7,
|
||||
},
|
||||
}
|
||||
const result = getGroupedOpeningHours(mixedOpeningHours, mockIntl)
|
||||
expect(result).toEqual([
|
||||
'Monday-Friday: 09:00-17:00',
|
||||
'Saturday: 10:00-15:00',
|
||||
'Sunday: Closed',
|
||||
"Monday-Friday: 09:00-17:00",
|
||||
"Saturday: 10:00-15:00",
|
||||
"Sunday: Closed",
|
||||
])
|
||||
})
|
||||
|
||||
it('should handle always open days', () => {
|
||||
it("should handle always open days", () => {
|
||||
const someAlwaysOpen: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
alwaysOpen: true,
|
||||
isClosed: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
alwaysOpen: true,
|
||||
isClosed: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
},
|
||||
thursday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 4,
|
||||
},
|
||||
friday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 5,
|
||||
@@ -244,47 +244,47 @@ describe('getGroupedOpeningHours', () => {
|
||||
saturday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 6,
|
||||
},
|
||||
sunday: {
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
sortOrder: 7,
|
||||
},
|
||||
}
|
||||
const result = getGroupedOpeningHours(someAlwaysOpen, mockIntl)
|
||||
expect(result).toEqual([
|
||||
'Monday-Tuesday: Always open',
|
||||
'Wednesday-Friday: 09:00-17:00',
|
||||
'Saturday-Sunday: Closed',
|
||||
"Monday-Tuesday: Always open",
|
||||
"Wednesday-Friday: 09:00-17:00",
|
||||
"Saturday-Sunday: Closed",
|
||||
])
|
||||
})
|
||||
|
||||
it('should handle missing days', () => {
|
||||
it("should handle missing days", () => {
|
||||
const missingDays: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
},
|
||||
friday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 5,
|
||||
@@ -292,33 +292,33 @@ describe('getGroupedOpeningHours', () => {
|
||||
}
|
||||
const result = getGroupedOpeningHours(missingDays, mockIntl)
|
||||
expect(result).toEqual([
|
||||
'Monday: 09:00-17:00',
|
||||
'Wednesday: 09:00-17:00',
|
||||
'Friday: 09:00-17:00',
|
||||
"Monday: 09:00-17:00",
|
||||
"Wednesday: 09:00-17:00",
|
||||
"Friday: 09:00-17:00",
|
||||
])
|
||||
})
|
||||
|
||||
it('should not group non-consecutive days with same hours', () => {
|
||||
it("should not group non-consecutive days with same hours", () => {
|
||||
const nonConsecutiveSameHours: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
openingTime: '10:00',
|
||||
closingTime: '18:00',
|
||||
openingTime: "10:00",
|
||||
closingTime: "18:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
@@ -326,33 +326,33 @@ describe('getGroupedOpeningHours', () => {
|
||||
}
|
||||
const result = getGroupedOpeningHours(nonConsecutiveSameHours, mockIntl)
|
||||
expect(result).toEqual([
|
||||
'Monday: 09:00-17:00',
|
||||
'Tuesday: 10:00-18:00',
|
||||
'Wednesday: 09:00-17:00',
|
||||
"Monday: 09:00-17:00",
|
||||
"Tuesday: 10:00-18:00",
|
||||
"Wednesday: 09:00-17:00",
|
||||
])
|
||||
})
|
||||
|
||||
it('should handle nullable opening/closing times', () => {
|
||||
it("should handle nullable opening/closing times", () => {
|
||||
const nullableHours: OpeningHours = {
|
||||
isActive: true,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '',
|
||||
closingTime: '',
|
||||
openingTime: "",
|
||||
closingTime: "",
|
||||
isClosed: true,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '',
|
||||
openingTime: "09:00",
|
||||
closingTime: "",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 2,
|
||||
},
|
||||
wednesday: {
|
||||
openingTime: '',
|
||||
closingTime: '17:00',
|
||||
openingTime: "",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 3,
|
||||
@@ -360,26 +360,26 @@ describe('getGroupedOpeningHours', () => {
|
||||
}
|
||||
const result = getGroupedOpeningHours(nullableHours, mockIntl)
|
||||
expect(result).toEqual([
|
||||
'Monday: Closed',
|
||||
"Monday: Closed",
|
||||
// Tuesday and Wednesday won't appear in the result because they have empty string values
|
||||
// that don't match any of the conditions in the getGroupedOpeningHours function
|
||||
])
|
||||
})
|
||||
|
||||
it('should handle inactive restaurant hours', () => {
|
||||
it("should handle inactive restaurant hours", () => {
|
||||
const inactiveHours: OpeningHours = {
|
||||
isActive: false,
|
||||
nameEnglish: 'Opening hours',
|
||||
nameEnglish: "Opening hours",
|
||||
monday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 1,
|
||||
},
|
||||
tuesday: {
|
||||
openingTime: '09:00',
|
||||
closingTime: '17:00',
|
||||
openingTime: "09:00",
|
||||
closingTime: "17:00",
|
||||
isClosed: false,
|
||||
alwaysOpen: false,
|
||||
sortOrder: 2,
|
||||
@@ -388,6 +388,6 @@ describe('getGroupedOpeningHours', () => {
|
||||
// Even though isActive is false, the function should still process the hours
|
||||
// as it doesn't check for the isActive flag
|
||||
const result = getGroupedOpeningHours(inactiveHours, mockIntl)
|
||||
expect(result).toEqual(['Monday-Tuesday: 09:00-17:00'])
|
||||
expect(result).toEqual(["Monday-Tuesday: 09:00-17:00"])
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user