ada389004f
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
36 lines
1.4 KiB
TypeScript
36 lines
1.4 KiB
TypeScript
import { describe, expect, it } from 'vitest'
|
|
|
|
import { isMessagingSource, MESSAGING_SESSION_SOURCE_IDS, sessionSourceSearchTerms } from './session-source'
|
|
|
|
// Regression guard for #46761 / PR #47395: Photon (iMessage) must keep its own
|
|
// sidebar section. refreshMessagingSessions() filters rows through
|
|
// isMessagingSource(), so this entry is the sole condition that keeps Photon
|
|
// sessions out of generic recents. A silent removal would regress the feature
|
|
// with no test failure — these asserts pin the contract.
|
|
describe('photon messaging source registration', () => {
|
|
it('treats photon as a messaging source (own sidebar section)', () => {
|
|
expect(isMessagingSource('photon')).toBe(true)
|
|
})
|
|
|
|
it('is case/space insensitive on the source id', () => {
|
|
expect(isMessagingSource('PHOTON')).toBe(true)
|
|
expect(isMessagingSource(' photon ')).toBe(true)
|
|
})
|
|
|
|
it('exposes the iMessage/messages search aliases so Photon sessions are findable', () => {
|
|
const terms = sessionSourceSearchTerms('photon')
|
|
expect(terms).toContain('imessage')
|
|
expect(terms).toContain('messages')
|
|
})
|
|
|
|
it('is registered in the messaging source id list', () => {
|
|
expect(MESSAGING_SESSION_SOURCE_IDS).toContain('photon')
|
|
})
|
|
|
|
it('does not flag local/CLI-ish sources as messaging (guard sanity)', () => {
|
|
expect(isMessagingSource('cli')).toBe(false)
|
|
expect(isMessagingSource(null)).toBe(false)
|
|
expect(isMessagingSource(undefined)).toBe(false)
|
|
})
|
|
})
|