test on a member that has no member props

This commit is contained in:
Cadence Ember 2023-08-25 11:44:58 +12:00
parent 1e9e9685c5
commit beeb27bbd8
5 changed files with 70 additions and 8 deletions

View file

@ -3,7 +3,27 @@ const {_memberToStateContent} = require("./register-user")
const {test} = require("supertape") const {test} = require("supertape")
const testData = require("../../test/data") const testData = require("../../test/data")
test("member2state: general", async t => { test("member2state: without member nick or avatar", async t => {
t.deepEqual(
await _memberToStateContent(testData.member.kumaccino.user, testData.member.kumaccino, testData.guild.general.id),
{
avatar_url: "mxc://cadence.moe/UpAeIqeclhKfeiZNdIWNcXXL",
displayname: "kumaccino",
membership: "join",
"moe.cadence.ooye.member": {
avatar: "/avatars/113340068197859328/b48302623a12bc7c59a71328f72ccb39.png?size=1024"
},
"uk.half-shot.discord.member": {
bot: false,
displayColor: 10206929,
id: "113340068197859328",
username: "@kumaccino"
}
}
)
})
test("member2state: with member nick and avatar", async t => {
t.deepEqual( t.deepEqual(
await _memberToStateContent(testData.member.sheep.user, testData.member.sheep, testData.guild.general.id), await _memberToStateContent(testData.member.sheep.user, testData.member.sheep, testData.guild.general.id),
{ {

View file

@ -93,6 +93,7 @@ INSERT INTO file (discord_url, mxc_url) VALUES
('https://cdn.discordapp.com/attachments/112760669178241024/1141501302497615912/piper_2.png', 'mxc://cadence.moe/KQYdXKRcHWjDYDLPkTOOWOjA'), ('https://cdn.discordapp.com/attachments/112760669178241024/1141501302497615912/piper_2.png', 'mxc://cadence.moe/KQYdXKRcHWjDYDLPkTOOWOjA'),
('https://cdn.discordapp.com/attachments/112760669178241024/1128084851023675515/RDT_20230704_0936184915846675925224905.jpg', 'mxc://cadence.moe/WlAbFSiNRIHPDEwKdyPeGywa'), ('https://cdn.discordapp.com/attachments/112760669178241024/1128084851023675515/RDT_20230704_0936184915846675925224905.jpg', 'mxc://cadence.moe/WlAbFSiNRIHPDEwKdyPeGywa'),
('https://cdn.discordapp.com/guilds/112760669178241024/users/134826546694193153/avatars/38dd359aa12bcd52dd3164126c587f8c.png?size=1024', 'mxc://cadence.moe/rfemHmAtcprjLEiPiEuzPhpl'), ('https://cdn.discordapp.com/guilds/112760669178241024/users/134826546694193153/avatars/38dd359aa12bcd52dd3164126c587f8c.png?size=1024', 'mxc://cadence.moe/rfemHmAtcprjLEiPiEuzPhpl'),
('https://cdn.discordapp.com/icons/112760669178241024/a_f83622e09ead74f0c5c527fe241f8f8c.png?size=1024', 'mxc://cadence.moe/zKXGZhmImMHuGQZWJEFKJbsF'); ('https://cdn.discordapp.com/icons/112760669178241024/a_f83622e09ead74f0c5c527fe241f8f8c.png?size=1024', 'mxc://cadence.moe/zKXGZhmImMHuGQZWJEFKJbsF'),
('https://cdn.discordapp.com/avatars/113340068197859328/b48302623a12bc7c59a71328f72ccb39.png?size=1024', 'mxc://cadence.moe/UpAeIqeclhKfeiZNdIWNcXXL');
COMMIT; COMMIT;

View file

@ -27,15 +27,15 @@ async function uploadDiscordFileToMxc(path) {
} }
// Are we uploading this file RIGHT NOW? Return the same inflight promise with the same resolution // Are we uploading this file RIGHT NOW? Return the same inflight promise with the same resolution
let existing = inflight.get(url) const existingInflight = inflight.get(url)
if (typeof existing === "string") { if (existingInflight) {
return existing return existingInflight
} }
// Has this file already been uploaded in the past? Grab the existing copy from the database. // Has this file already been uploaded in the past? Grab the existing copy from the database.
existing = db.prepare("SELECT mxc_url FROM file WHERE discord_url = ?").pluck().get(url) const existingFromDb = db.prepare("SELECT mxc_url FROM file WHERE discord_url = ?").pluck().get(url)
if (typeof existing === "string") { if (typeof existingFromDb === "string") {
return existing return existingFromDb
} }
// Download from Discord // Download from Discord

View file

@ -12,6 +12,7 @@ const createRoom = sync.require("./d2m/actions/create-room")
const registerUser = sync.require("./d2m/actions/register-user") const registerUser = sync.require("./d2m/actions/register-user")
const mreq = sync.require("./matrix/mreq") const mreq = sync.require("./matrix/mreq")
const api = sync.require("./matrix/api") const api = sync.require("./matrix/api")
const file = sync.require("./matrix/file")
const sendEvent = sync.require("./m2d/actions/send-event") const sendEvent = sync.require("./m2d/actions/send-event")
const eventDispatcher = sync.require("./d2m/event-dispatcher") const eventDispatcher = sync.require("./d2m/event-dispatcher")
const ks = sync.require("./matrix/kstate") const ks = sync.require("./matrix/kstate")

View file

@ -98,6 +98,46 @@ module.exports = {
} }
}, },
member: { member: {
kumaccino: {
avatar: null,
communication_disabled_until: null,
flags: 0,
joined_at: "2015-11-11T09:55:40.321000+00:00",
nick: null,
pending: false,
premium_since: null,
roles: [
"112767366235959296", "118924814567211009",
"199995902742626304", "204427286542417920",
"222168467627835392", "238028326281805825",
"259806643414499328", "265239342648131584",
"271173313575780353", "287733611912757249",
"225744901915148298", "305775031223320577",
"318243902521868288", "348651574924541953",
"349185088157777920", "378402925128712193",
"392141548932038658", "393912152173576203",
"482860581670486028", "495384759074160642",
"638988388740890635", "373336013109461013",
"530220455085473813", "454567553738473472",
"790724320824655873", "1040735082610167858",
"695946570482450442", "849737964090556488"
],
user: {
id: "113340068197859328",
username: "kumaccino",
avatar: "b48302623a12bc7c59a71328f72ccb39",
discriminator: "0",
public_flags: 128,
flags: 128,
banner: null,
accent_color: 10206929,
global_name: "kumaccino",
avatar_decoration_data: null,
banner_color: "#9bbed1"
},
mute: false,
deaf: false
},
sheep: { sheep: {
avatar: "38dd359aa12bcd52dd3164126c587f8c", avatar: "38dd359aa12bcd52dd3164126c587f8c",
communication_disabled_until: null, communication_disabled_until: null,