Brak opisu

test-0.10.0.js 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import RNTest from './react-native-testkit/'
  2. import React from 'react'
  3. import RNFetchBlob from 'react-native-fetch-blob'
  4. import {
  5. StyleSheet,
  6. Text,
  7. View,
  8. ScrollView,
  9. Platform,
  10. Dimensions,
  11. Image,
  12. } from 'react-native';
  13. // window.XMLHttpRequest = RNFetchBlob.polyfill.XMLHttpRequest
  14. // window.Blob = RNFetchBlob.polyfill.Blob
  15. // window.fetch = new RNFetchBlob.polyfill.Fetch({
  16. // auto : true,
  17. // binaryContentTypes : ['image/', 'video/', 'audio/']
  18. // }).build()
  19. const fs = RNFetchBlob.fs
  20. const { Assert, Comparer, Info, prop } = RNTest
  21. const describe = RNTest.config({
  22. group : '0.10.0',
  23. run : true,
  24. expand : true,
  25. timeout : 20000,
  26. })
  27. const { TEST_SERVER_URL, TEST_SERVER_URL_SSL, FILENAME, DROPBOX_TOKEN, styles } = prop()
  28. const dirs = RNFetchBlob.fs.dirs
  29. let prefix = ((Platform.OS === 'android') ? 'file://' : '')
  30. describe('test', (report, done) => {
  31. console.log('start')
  32. let image = RNTest.prop('image')
  33. let form = new FormData()
  34. form.append("FormData", true)
  35. form.append("access_token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU3YjgyZGQ2MTEwZDcwYmEwYjUxZjM5YyIsImlzTWVkaWMiOnRydWUsImlhdCI6MTQ3MTY4ODE1MiwiZXhwIjoxNDcxNzA2MTUyfQ.gPeql5g66Am4Txl1WqnbvOWJaD8srTK_6vihOJ6kFbY")
  36. form.append("Content-Type", "image/jpg")
  37. form.append('image', {
  38. uri : `data:image/png;base64, ${image}`,
  39. type : 'image/png'
  40. })
  41. let xhr = new XMLHttpRequest()
  42. xhr.open('post', `${TEST_SERVER_URL}/upload-form`)
  43. xhr.send(form)
  44. console.log(form)
  45. xhr.onerror = function(e) {
  46. console.log('err', e)
  47. }
  48. xhr.onreadystatechange = function() {
  49. console.log('changed')
  50. if(this.readyState === this.DONE) {
  51. console.log(this.response)
  52. }
  53. }
  54. // fetch(`${TEST_SERVER_URL}/upload-form`, {
  55. // method : 'POST',
  56. // body : form
  57. // })
  58. // .then((res) => res.text())
  59. // .then((data) => {
  60. // console.log(data)
  61. // })
  62. // let filename = 'test-from-storage-img-'+Date.now()+'.png'
  63. // RNFetchBlob.fetch('POST', `${TEST_SERVER_URL}/upload-form`, {
  64. // 'Content-Type' : 'multipart/form-data',
  65. // }, [
  66. // { name : 'test-text', filename : 'test-text.txt', data: RNFetchBlob.base64.encode('hello.txt')},
  67. // { name : 'field1', data : 'hello !!'},
  68. // { name : 'field2', data : 'hello2 !!'}
  69. // ])
  70. // .then((resp) => {
  71. // resp = resp.json()
  72. // report(
  73. // <Assert key="check posted form data #1" expect="hello !!" actual={resp.fields.field1}/>,
  74. // <Assert key="check posted form data #2" expect="hello2 !!" actual={resp.fields.field2}/>,
  75. // )
  76. // return RNFetchBlob.fetch('GET', `${TEST_SERVER_URL}/public/${filename}`)
  77. // })
  78. // .then((resp) => {
  79. // report(<Info key="uploaded image">
  80. // <Image
  81. // style={styles.image}
  82. // source={{ uri : 'data:image/png;base64, '+ resp.base64()}}/>
  83. // </Info>)
  84. // done()
  85. // })
  86. })