mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-02 08:50:07 +00:00
* Rework the test for urlToBase64. Currently urlToBase64 used the website logo however with #3990 the test started failing as the logo changed so the base64 of it changed. The test now mocks fetch() to return 8 empty bytes and checks for that base64 string instead * test: explicity import beforeeach and aftereach * test: stub depend on runtime * test: use try catch instead * test: try itoh typeof --------- Co-authored-by: H01001000 <heiheiho000@gmail.com>
31 lines
793 B
TypeScript
31 lines
793 B
TypeScript
import { expect } from 'chai'
|
|
import { afterEach, beforeEach, describe, it } from 'mocha'
|
|
import sinon from 'sinon'
|
|
import { urlToBase64 } from '../src/urlToBase64.js'
|
|
|
|
describe('urlToBase64.ts', () => {
|
|
let fetchStub: sinon.SinonStub
|
|
|
|
beforeEach(() => {
|
|
fetchStub = sinon.stub(typeof global !== 'undefined' ? global : window, 'fetch')
|
|
})
|
|
|
|
afterEach(() => {
|
|
sinon.restore()
|
|
})
|
|
|
|
describe('urlToBase64 function', () => {
|
|
it('Will convert a png image to base64', async () => {
|
|
const mockArrayBuffer = new ArrayBuffer(8)
|
|
|
|
fetchStub.resolves({
|
|
arrayBuffer: () => Promise.resolve(mockArrayBuffer),
|
|
})
|
|
|
|
const url = await urlToBase64('https://example.com/image.png')
|
|
|
|
expect(url).equal('data:image/png;base64,AAAAAAAAAAA=')
|
|
})
|
|
})
|
|
})
|