import RNTest from './react-native-testkit/' import React from 'react' import RNFetchBlob from 'react-native-fetch-blob' import { StyleSheet, Text, View, ScrollView, Platform, Dimensions, Image, } from 'react-native'; const fs = RNFetchBlob.fs const { Assert, Comparer, Info, prop } = RNTest const describe = RNTest.config({ group : 'Android only functions', run : Platform.OS === 'android', expand : false, }) const { TEST_SERVER_URL, FILENAME, DROPBOX_TOKEN, styles } = prop() let prefix = ((Platform.OS === 'android') ? 'file://' : '') // Android only tests let tmpFilePath = null const dirs = RNFetchBlob.fs.dirs describe('Download with notification', (report, done) => { let filePath = null let filename = `test-${Date.now()}.png` filePath = `${dirs.DownloadDir}/${filename}` RNFetchBlob.config({ path : filePath, addAndroidDownloads : { title : 'RNFetchBlob test download success', description : `File description added by RNFetchblob`, mediaScannable : true, mime : "image/png", notification : true } }) .fetch('GET', `${TEST_SERVER_URL}/public/github2.jpg`) .then((resp) => { tmpFilePath = resp.path() report( ) done() }) }) describe('MediaScanner tests ', (report, done) => { let filename = `scannable-test-${Date.now()}.png` let filePath = `${dirs.DownloadDir}/${filename}` RNFetchBlob.config({ path : filePath, }) .fetch('GET', `${TEST_SERVER_URL}/public/github2.jpg`) .then((resp) => { tmpFilePath = resp.path() return RNFetchBlob.fs.scanFile([ { path:resp.path() } ]) }) .then(() => { report() return RNFetchBlob .config({ path : dirs.DCIMDir + '/beethoven-'+ Date.now() +'.mp3' }) .fetch('GET', `${TEST_SERVER_URL}/public/beethoven.mp3`) }) .then((resp) => { fs.scanFile([{ path : resp.path() }]) .then(() => { report() done() }) }) }) describe('android download manager', (report, done) => { RNFetchBlob.config({ addAndroidDownloads : { useDownloadManager : true, title : 'RNFetchBlob test download manager test', description : `File description added by RNFetchblob`, mediaScannable : true, notification : true } }) .fetch('GET', `${TEST_SERVER_URL}/public/beethoven.mp3`).then((resp) => { report( ) return resp.readStream('ascii') }) .then((stream) => { stream.open(); let len = 0 stream.onData((chunk) => { len += chunk.length }) stream.onEnd(() => { report( ) done() }) }) })