|
1 | 1 | import * as firebase from 'firebase/app';
|
2 | 2 | import { Observable } from 'rxjs/Observable'
|
3 |
| -import { Subject } from 'rxjs/Subject' |
| 3 | +import { forkJoin } from 'rxjs/observable/forkJoin'; |
4 | 4 | import { TestBed, inject } from '@angular/core/testing';
|
5 | 5 | import { FirebaseApp, FirebaseAppConfig, AngularFireModule } from 'angularfire2';
|
6 |
| -import { AngularFireStorageModule, AngularFireStorage, AngularFireUploadTask, AngularFireStorageRef } from 'angularfire2/storage'; |
| 6 | +import { AngularFireStorageModule, AngularFireStorage } from 'angularfire2/storage'; |
7 | 7 | import { COMMON_CONFIG } from './test-config';
|
8 | 8 |
|
9 | 9 | console.log(AngularFireStorageModule);
|
@@ -37,18 +37,36 @@ fdescribe('AngularFireStorage', () => {
|
37 | 37 | expect(afStorage.storage).toBeDefined();
|
38 | 38 | });
|
39 | 39 |
|
40 |
| - describe('AngularFireUploadTask', () => { |
| 40 | + describe('upload task', () => { |
41 | 41 |
|
42 |
| - it('should upload a file', (done) => { |
| 42 | + it('should upload and delete a file', (done) => { |
43 | 43 | const data = { angular: "fire" };
|
44 | 44 | const blob = new Blob([JSON.stringify(data)], { type : 'application/json' });
|
45 |
| - const task = afStorage.upload('af.json', blob); |
| 45 | + const ref = afStorage.ref('af.json'); |
| 46 | + const task = ref.put(blob); |
46 | 47 | const sub = task.snapshotChanges()
|
47 | 48 | .subscribe(
|
48 |
| - snap => { console.log(snap); expect(snap).toBeDefined() }, |
| 49 | + snap => { expect(snap).toBeDefined() }, |
49 | 50 | e => { done.fail(); },
|
50 |
| - done); |
| 51 | + () => { |
| 52 | + ref.delete().subscribe(done, done.fail); |
| 53 | + }); |
| 54 | + }); |
| 55 | + |
| 56 | + }); |
51 | 57 |
|
| 58 | + describe('reference', () => { |
| 59 | + |
| 60 | + it('it should upload, download, and delete', (done) => { |
| 61 | + const data = { angular: "fire" }; |
| 62 | + const blob = new Blob([JSON.stringify(data)], { type : 'application/json' }); |
| 63 | + const ref = afStorage.ref('af.json'); |
| 64 | + const task = ref.put(blob); |
| 65 | + const sub = forkJoin(task.snapshotChanges()) |
| 66 | + .mergeMap(() => ref.getDownloadURL()) |
| 67 | + .do(url => expect(url).toBeDefined()) |
| 68 | + .mergeMap(url => ref.delete()) |
| 69 | + .subscribe(done, done.fail); |
52 | 70 | });
|
53 | 71 |
|
54 | 72 | });
|
|
0 commit comments