diff options
Diffstat (limited to '__tests__')
-rw-r--r-- | __tests__/lib/link-meta.test.ts | 104 | ||||
-rw-r--r-- | __tests__/lib/string.test.ts | 14 |
2 files changed, 10 insertions, 108 deletions
diff --git a/__tests__/lib/link-meta.test.ts b/__tests__/lib/link-meta.test.ts index f0ca7a9d4..504b11c22 100644 --- a/__tests__/lib/link-meta.test.ts +++ b/__tests__/lib/link-meta.test.ts @@ -1,106 +1,4 @@ -import { - LikelyType, - getLinkMeta, - getLikelyType, -} from '../../src/lib/link-meta/link-meta' -import {exampleComHtml} from './__mocks__/exampleComHtml' -import {BskyAgent} from '@atproto/api' -import {DEFAULT_SERVICE, RootStoreModel} from '../../src/state' - -describe('getLinkMeta', () => { - let rootStore: RootStoreModel - - beforeEach(() => { - rootStore = new RootStoreModel(new BskyAgent({service: DEFAULT_SERVICE})) - }) - - const inputs = [ - '', - 'httpbadurl', - 'https://example.com', - 'https://example.com/index.html', - 'https://example.com/image.png', - 'https://example.com/video.avi', - 'https://example.com/audio.ogg', - 'https://example.com/text.txt', - 'https://example.com/javascript.js', - 'https://bsky.app/', - 'https://bsky.app/index.html', - ] - const outputs = [ - { - error: 'Invalid URL', - likelyType: LikelyType.Other, - url: '', - }, - { - error: 'Invalid URL', - likelyType: LikelyType.Other, - url: 'httpbadurl', - }, - { - likelyType: LikelyType.HTML, - url: 'https://example.com', - title: 'Example Domain', - description: 'An example website', - }, - { - likelyType: LikelyType.HTML, - url: 'https://example.com/index.html', - title: 'Example Domain', - description: 'An example website', - }, - { - likelyType: LikelyType.Image, - url: 'https://example.com/image.png', - }, - { - likelyType: LikelyType.Video, - url: 'https://example.com/video.avi', - }, - { - likelyType: LikelyType.Audio, - url: 'https://example.com/audio.ogg', - }, - { - likelyType: LikelyType.Text, - url: 'https://example.com/text.txt', - }, - { - likelyType: LikelyType.Other, - url: 'https://example.com/javascript.js', - }, - { - likelyType: LikelyType.AtpData, - url: '/', - }, - { - likelyType: LikelyType.AtpData, - url: '/index.html', - }, - { - likelyType: LikelyType.Other, - url: '', - title: '', - }, - ] - it('correctly handles a set of text inputs', async () => { - for (let i = 0; i < inputs.length; i++) { - global.fetch = jest.fn().mockImplementationOnce(() => { - return new Promise((resolve, _reject) => { - resolve({ - ok: true, - status: 200, - text: () => exampleComHtml, - }) - }) - }) - const input = inputs[i] - const output = await getLinkMeta(rootStore, input) - expect(output).toEqual(outputs[i]) - } - }) -}) +import {LikelyType, getLikelyType} from '../../src/lib/link-meta/link-meta' describe('getLikelyType', () => { it('correctly handles non-parsed url', async () => { diff --git a/__tests__/lib/string.test.ts b/__tests__/lib/string.test.ts index f25bd02a7..75d7b8421 100644 --- a/__tests__/lib/string.test.ts +++ b/__tests__/lib/string.test.ts @@ -48,7 +48,7 @@ describe('detectLinkables', () => { 'Classic article https://socket3.wordpress.com/2018/02/03/designing-windows-95s-user-interface/ ', 'https://foo.com https://bar.com/whatever https://baz.com', 'punctuation https://foo.com, https://bar.com/whatever; https://baz.com.', - 'parenthentical (https://foo.com)', + 'parenthetical (https://foo.com)', 'except for https://foo.com/thing_(cool)', ] const outputs = [ @@ -112,7 +112,7 @@ describe('detectLinkables', () => { {link: 'https://baz.com'}, '.', ], - ['parenthentical (', {link: 'https://foo.com'}, ')'], + ['parenthetical (', {link: 'https://foo.com'}, ')'], ['except for ', {link: 'https://foo.com/thing_(cool)'}], ] it('correctly handles a set of text inputs', () => { @@ -176,16 +176,20 @@ describe('ago', () => { new Date().setMinutes(new Date().getMinutes() - 10), new Date().setHours(new Date().getHours() - 1), new Date().setDate(new Date().getDate() - 1), + new Date().setDate(new Date().getDate() - 6), + new Date().setDate(new Date().getDate() - 7), new Date().setMonth(new Date().getMonth() - 1), ] const outputs = [ - new Date(1671461038).toLocaleDateString(), - new Date('04 Dec 1995 00:12:00 GMT').toLocaleDateString(), + new Date(1671461038).toLocaleDateString('en-us', {year: 'numeric', month: 'short', day: 'numeric'}), + new Date('04 Dec 1995 00:12:00 GMT').toLocaleDateString('en-us', {year: 'numeric', month: 'short', day: 'numeric'}), '0s', '10m', '1h', '1d', - '1mo', + '6d', + new Date(new Date().setDate(new Date().getDate() - 7)).toLocaleDateString('en-us', {year: 'numeric', month: 'short', day: 'numeric'}), + new Date(new Date().setMonth(new Date().getMonth() - 1)).toLocaleDateString('en-us', {year: 'numeric', month: 'short', day: 'numeric'}), ] it('correctly calculates how much time passed, in a string', () => { |