aboutsummaryrefslogtreecommitdiff
path: root/webAO/services/__tests__/downloadFile.test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'webAO/services/__tests__/downloadFile.test.ts')
-rw-r--r--webAO/services/__tests__/downloadFile.test.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/webAO/services/__tests__/downloadFile.test.ts b/webAO/services/__tests__/downloadFile.test.ts
new file mode 100644
index 0000000..b217b2c
--- /dev/null
+++ b/webAO/services/__tests__/downloadFile.test.ts
@@ -0,0 +1,27 @@
+import downloadFile from '../downloadFile'
+jest
+ .useFakeTimers()
+ .setSystemTime(new Date('2020-01-01').getTime());
+
+ global.URL.createObjectURL = jest.fn();
+(window as any).global.Blob = function (content, options){return ({content, options})}
+
+describe('downloadFile', () => {
+ it('Creates an <a> tag', () => {
+ const createElementSpy = jest.spyOn(document, 'createElement');
+ downloadFile('hi', 'filename')
+ expect(createElementSpy).toBeCalled()
+ })
+ it('Creates the blob with the correct data', () => {
+ const data = 'writingtestsishard'
+ global.URL.createObjectURL = jest.fn(() => data);
+ downloadFile(data, 'filename')
+ const expected = {
+ content: [data],
+ options: {
+ type: "text"
+ }
+ }
+ expect(global.URL.createObjectURL).toBeCalledWith(expected)
+ })
+}) \ No newline at end of file