calculate-items
Version:
Items calculation template
41 lines (37 loc) • 2.18 kB
text/typescript
import MembersParser from "../../utils/MembersParser";
describe('MembersExpression.test', () => {
describe('parse Members Info from text ', () => {
describe('MembersExpression.getUserIds() from text', () => {
test('Wrong user Ids template', () => {
// expect(MembersExpression.getUserIds(undefined)).toEqual([]);
expect(MembersParser.getUserIndexes('')).toEqual([]);
expect(MembersParser.getUserIndexes('[1,2')).toEqual([]);
expect(MembersParser.getUserIndexes('[, ,]olma')).toEqual([]);
expect(MembersParser.getUserIndexes('olma [1,2, ]')).toEqual([1, 2]);
expect(MembersParser.getUserIndexes('(2+4)*8999[ 1,2,]')).toEqual([1, 2]);
expect(MembersParser.getUserIndexes('[1,2.3]')).toEqual([]);
});
});
describe('MembersExpression.getUsernames() from text', () => {
test('Wrong usernames template', () => {
expect(MembersParser.getUsernames(undefined)).toEqual([]);
expect(MembersParser.getUsernames('')).toEqual([]);
expect(
MembersParser.getUsernames(`Osh [1, 2] - 43 000 so\'m
Sho\'rva[4] - 23 400 so\'m\n
Choy - 3500 so\'m\n
Non - 4000 so\'m\n
Xizmat - 12%\n
[@user1, tyun, koang\'ip, hwoa sdfa]`),
).toEqual(['@user1', 'tyun', "koang'ip", 'hwoa sdfa']);
expect(MembersParser.getUsernames('[1,2')).toEqual([]);
expect(MembersParser.getUsernames('[, ,]olma')).toEqual([]);
expect(MembersParser.getUsernames('olma [1,2]')).toEqual([]);
expect(MembersParser.getUsernames('(2+4)*8999[1,2, ]')).toEqual([]);
expect(MembersParser.getUsernames('[234,45, ]')).toEqual([]);
expect(MembersParser.getUsernames('[ _AS2, asf,aS]')).toEqual(['_AS2', 'asf', 'aS']);
expect(MembersParser.getUsernames('[@user_2, @userName, Multi Name, kuu]')).toEqual(['@user_2', '@userName', 'Multi Name', 'kuu']);
});
});
});
});