From 659adbe6d73a52ae272d69ebfbcc20c6e50d3198 Mon Sep 17 00:00:00 2001 From: Angelina Filippova Date: Mon, 3 Aug 2020 21:41:25 +0300 Subject: [PATCH] Add test for parsing sender setting in :welcome group --- test/modules/normalizers/parseTuples.test.js | 68 ++++++++++++-------- 1 file changed, 42 insertions(+), 26 deletions(-) diff --git a/test/modules/normalizers/parseTuples.test.js b/test/modules/normalizers/parseTuples.test.js index 9cbe9d2f..a918c618 100644 --- a/test/modules/normalizers/parseTuples.test.js +++ b/test/modules/normalizers/parseTuples.test.js @@ -223,10 +223,10 @@ describe('Parse tuples', () => { }) it('parses match_actor setting in mrf_subchain group', () => { - const tuples = [{ tuple: [":match_actor", - { '~r/https:\/\/example.com/s': ["Elixir.Pleroma.Web.ActivityPub.MRF.DropPolicy"]}]}] - const expectedResult = { ":match_actor": - [{ '~r/https:\/\/example.com/s': { value: ["Elixir.Pleroma.Web.ActivityPub.MRF.DropPolicy"] }}]} + const tuples = [{ tuple: [':match_actor', + { '~r/https:\/\/example.com/s': ['Elixir.Pleroma.Web.ActivityPub.MRF.DropPolicy']}]}] + const expectedResult = { ':match_actor': + [{ '~r/https:\/\/example.com/s': { value: ['Elixir.Pleroma.Web.ActivityPub.MRF.DropPolicy'] }}]} const parsed = parseTuples(tuples, ':mrf_subchain') @@ -241,7 +241,7 @@ describe('Parse tuples', () => { }) it('parses options setting in MediaProxy.Invalidation.Http group', () => { - const tuples = [{ tuple: [":options", [{ tuple: [":params", { xxx: "zzz", aaa: "bbb" }]}]]}] + const tuples = [{ tuple: [':options', [{ tuple: [':params', { xxx: 'zzz', aaa: 'bbb' }]}]]}] const expectedResult = { ':options': { ':params': [ { xxx: { value: 'zzz' }}, { aaa: { value: 'bbb' }}] }} @@ -260,14 +260,30 @@ describe('Parse tuples', () => { expect(_.isEqual(expectedResult, parsed)).toBeTruthy() }) - it('parses proxy_url', () => { - const proxyUrlNull = [{ tuple: [":proxy_url", null] }] - const proxyUrlTuple = [{ tuple: [":proxy_url", { tuple: [":socks5", ":localhost", 3090] }]}] - const proxyUrlString = [{ tuple: [":proxy_url", 'localhost:9020'] }] + it('parses sender setting in :welcome', () => { + const senderEmpty = [{ tuple: [':sender', ''] }] + const senderTuple = [{ tuple: [':sender', { tuple: ['test', 'test@email.com'] }]}] + const senderString = [{ tuple: [':sender', 'test@email.com'] }] - const expectedProxyUrlNull = { ":proxy_url": { socks5: false, host: null, port: null }} - const expectedProxyUrlTuple = { ":proxy_url": { socks5: true, host: ":localhost", port: 3090 }} - const expectedProxyUrlString = { ":proxy_url": { socks5: false, host: 'localhost', port: '9020' }} + const expectedSenderEmpty = { ':sender': { email: '' }} + const expectedSenderTuple = { ':sender': { email: 'test@email.com', nickname: 'test' }} + const expectedSenderString = { ':sender': { email: 'test@email.com' }} + + console.log(parseTuples(senderEmpty, ':welcome')) + + expect(_.isEqual(expectedSenderEmpty, parseTuples(senderEmpty, ':welcome'))).toBeTruthy() + expect(_.isEqual(expectedSenderTuple, parseTuples(senderTuple, ':welcome'))).toBeTruthy() + expect(_.isEqual(expectedSenderString, parseTuples(senderString, ':welcome'))).toBeTruthy() + }) + + it('parses proxy_url', () => { + const proxyUrlNull = [{ tuple: [':proxy_url', null] }] + const proxyUrlTuple = [{ tuple: [':proxy_url', { tuple: [':socks5', ':localhost', 3090] }]}] + const proxyUrlString = [{ tuple: [':proxy_url', 'localhost:9020'] }] + + const expectedProxyUrlNull = { ':proxy_url': { socks5: false, host: null, port: null }} + const expectedProxyUrlTuple = { ':proxy_url': { socks5: true, host: ':localhost', port: 3090 }} + const expectedProxyUrlString = { ':proxy_url': { socks5: false, host: 'localhost', port: '9020' }} expect(_.isEqual(expectedProxyUrlNull, parseTuples(proxyUrlNull, ':http'))).toBeTruthy() expect(_.isEqual(expectedProxyUrlTuple, parseTuples(proxyUrlTuple, ':http'))).toBeTruthy() @@ -275,8 +291,8 @@ describe('Parse tuples', () => { }) it('parses args setting in Pleroma.Upload.Filter.Mogrify', () => { - const tuples = [{ tuple: [":args", ["strip", { tuple: ["implode", "1"] }]]}] - const expectedResult = { ":args": ["strip", "implode"] } + const tuples = [{ tuple: [':args', ['strip', { tuple: ['implode', '1'] }]]}] + const expectedResult = { ':args': ['strip', 'implode'] } const result = parseTuples(tuples, 'Pleroma.Upload.Filter.Mogrify') expect(_.isEqual(expectedResult, result)).toBeTruthy() @@ -284,19 +300,19 @@ describe('Parse tuples', () => { it('parses nested tuples', () => { const tuples = [{ tuple: [':proxy_opts', [ - { tuple: [":redirect_on_failure", false] }, - { tuple: [":max_body_length", 26214400] }, - { tuple: [":http", [ - { tuple: [":follow_redirect", true] }, - { tuple: [":pool", ":media"] } + { tuple: [':redirect_on_failure', false] }, + { tuple: [':max_body_length', 26214400] }, + { tuple: [':http', [ + { tuple: [':follow_redirect', true] }, + { tuple: [':pool', ':media'] } ]]}, ]]}] const expectedResult = { ':proxy_opts': { - ":redirect_on_failure": false, - ":max_body_length": 26214400, - ":http": { - ":follow_redirect": true, - ":pool": ":media" + ':redirect_on_failure': false, + ':max_body_length': 26214400, + ':http': { + ':follow_redirect': true, + ':pool': ':media' } }} const result = parseTuples(tuples, ':media_proxy') @@ -304,8 +320,8 @@ describe('Parse tuples', () => { }) it('parses tuples with arrays', () => { - const tuples = [{ tuple: [":ignore_hosts", []]}, { tuple: [":ignore_tld", ["local", "localdomain", "lan"]]}] - const expectedResult = { ":ignore_hosts": [], ":ignore_tld": ["local", "localdomain", "lan"] } + const tuples = [{ tuple: [':ignore_hosts', []]}, { tuple: [':ignore_tld', ['local', 'localdomain', 'lan']]}] + const expectedResult = { ':ignore_hosts': [], ':ignore_tld': ['local', 'localdomain', 'lan'] } const result = parseTuples(tuples, ':rich_media') expect(_.isEqual(expectedResult, result)).toBeTruthy()