Selaa lähdekoodia

Add storage download test case #44

Ben Hsieh 8 vuotta sitten
vanhempi
commit
a92288c826
1 muutettua tiedostoa jossa 24 lisäystä ja 19 poistoa
  1. 24
    19
      test/test-firebase.js

+ 24
- 19
test/test-firebase.js Näytä tiedosto

@@ -64,31 +64,36 @@ describe('firebase login', (report, done) => {
64 64
 
65 65
 describe('upload file to firebase', (report, done) => {
66 66
 
67
-  try {
68
-    let blob = new Blob(RNTest.prop('image'), 'application/octet-binary')
69
-    blob.onCreated(() => {
70
-      let storage = firebase.storage().ref()
71
-      let task = storage
72
-        .child(`testdata/firebase-test-${Platform.OS}.png`)
73
-        .put(blob, { contentType : 'image/png' })
74
-
75
-      task.on('state_change', null, (err) => {
76
-
77
-      }, () => {
67
+  // create Blob from BASE64 data
68
+  let blob = new Blob(RNTest.prop('image'), 'image/png;BASE64')
69
+  let testImage = `firebase-test-${Platform.OS}-${new Date().toLocaleString()}.png`
70
+  RNTest.prop('firebase-image', testImage)
71
+  // start test after Blob created
72
+  blob.onCreated(() => {
73
+    let storage = firebase.storage().ref('rnfbtest')
74
+    let task = storage
75
+      .child(RNTest.prop('firebase-image'))
76
+      .put(blob, { contentType : 'image/png' })
77
+      .then((snapshot) => {
78 78
         report(<Assert key="upload success"
79 79
           expect={true}
80 80
           actual={true}/>,
81 81
         <Info key="uploaded file stat" >
82
-          <Text>{task.snapshot.totalBytes}</Text>
83
-          <Text>{JSON.stringify(task.snapshot.metadata)}</Text>
82
+          <Text>{snapshot.totalBytes}</Text>
83
+          <Text>{JSON.stringify(snapshot.metadata)}</Text>
84 84
         </Info>)
85 85
         done()
86 86
       })
87
+  })
88
+})
87 89
 
88
-    })
89
-
90
-  } catch(ex) {
91
-    console.log('firebase polyfill error', ex)
92
-  }
93
-
90
+describe('download firebase storage item', (report, done) => {
91
+  let storage = firebase.storage().ref('rnfbtest/' + RNTest.prop('firebase-image'))
92
+  storage.getDownloadURL().then((url) => {
93
+    console.log(url)
94
+    report(<Info key="image viewer">
95
+      <Image style={styles.image} source={{uri : url}}/>
96
+    </Info>)
97
+    done()
98
+  })
94 99
 })