2020-01-31 10:56:52 -05:00
|
|
|
/* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */
|
2019-01-04 02:56:20 -05:00
|
|
|
|
2022-08-17 09:44:32 -04:00
|
|
|
import { expect } from 'chai'
|
2019-01-04 02:56:20 -05:00
|
|
|
import { VideoCommentModel } from '../../models/video/video-comment'
|
|
|
|
|
|
|
|
class CommentMock {
|
|
|
|
text: string
|
|
|
|
|
|
|
|
extractMentions = VideoCommentModel.prototype.extractMentions
|
2019-02-14 05:58:08 -05:00
|
|
|
|
|
|
|
isOwned = () => true
|
2019-01-04 02:56:20 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
describe('Comment model', function () {
|
|
|
|
it('Should correctly extract mentions', async function () {
|
|
|
|
const comment = new CommentMock()
|
|
|
|
|
|
|
|
comment.text = '@florian @jean@localhost:9000 @flo @another@localhost:9000 @flo2@jean.com hello ' +
|
|
|
|
'email@localhost:9000 coucou.com no? @chocobozzz @chocobozzz @end'
|
2020-01-31 10:56:52 -05:00
|
|
|
const result = comment.extractMentions().sort((a, b) => a.localeCompare(b))
|
2019-01-04 02:56:20 -05:00
|
|
|
|
|
|
|
expect(result).to.deep.equal([ 'another', 'chocobozzz', 'end', 'flo', 'florian', 'jean' ])
|
|
|
|
})
|
|
|
|
})
|