import RNTest from './react-native-testkit/' import React from 'react' import RNFetchBlob from 'react-native-fetch-blob' import { StyleSheet, Text, View, ScrollView, Linking, Platform, Dimensions, AsyncStorage, Image, } from 'react-native'; const JSONStream = RNFetchBlob.JSONStream const fs = RNFetchBlob.fs const { Assert, Comparer, Info, prop } = RNTest const describe = RNTest.config({ group : '0.10.0', run : true, expand : true, timeout : 20000, }) const { TEST_SERVER_URL, TEST_SERVER_URL_SSL, FILENAME, DROPBOX_TOKEN, styles } = prop() const dirs = RNFetchBlob.fs.dirs let prefix = ((Platform.OS === 'android') ? 'file://' : '') let begin = Date.now() describe('json stream via HTTP', (report, done) => { let count = 0 JSONStream(`${TEST_SERVER_URL}/public/json-dummy.json`).node('name', (name) => { count++ if(Date.now() - begin < 100) return begin = Date.now() report( {count} records ) done() }) }) describe('json stream via fs', (report, done) => { let fetch2 = new RNFetchBlob.polyfill.Fetch({ auto : true }) let res = null let count = 0 RNFetchBlob.config({ fileCache : true }) .fetch('GET',`${TEST_SERVER_URL}/public/json-dummy.json`) .then((resp) => { res = resp JSONStream({ url : RNFetchBlob.wrap(res.path()), headers : { bufferSize : 10240 } }).node('name', (name) => { count++ if(Date.now() - begin < 100) return begin = Date.now() report( {count} records ) done() }) }) }) describe('issue #102', (report, done) => { let tmp = null RNFetchBlob.config({ fileCache: true, appendExt : 'png' }) .fetch('GET', `${TEST_SERVER_URL}/public/github.png`) .then((res) => { tmp = res RNFetchBlob.ios.previewDocument(res.path()) return RNFetchBlob.fetch('POST', `${TEST_SERVER_URL}/upload-form`, {}, [{ name : String(1), data : RNFetchBlob.wrap(res.path()), filename: '#102-test-image.png' }]) }) .then((res) => tmp.flush()) .then(() => { done() }) })