dev --- 3.8.0.A版本, openProject引用 ; formao-live --- 3.7.0.B 版本, formallProject引用
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

73 rindas
2.2 KiB

  1. package chanjarster.weixin.api;
  2. import java.io.IOException;
  3. import java.io.InputStream;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6. import org.testng.Assert;
  7. import org.testng.annotations.DataProvider;
  8. import org.testng.annotations.Guice;
  9. import org.testng.annotations.Test;
  10. import chanjarster.weixin.bean.result.WxMediaUploadResult;
  11. import chanjarster.weixin.exception.WxErrorException;
  12. import com.google.inject.Inject;
  13. /**
  14. * 测试多媒体文件上传下载
  15. * @author chanjarster
  16. *
  17. */
  18. @Test(groups="mediaAPI", dependsOnGroups="baseAPI")
  19. @Guice(modules = ApiTestModule.class)
  20. public class WxMediaAPITest {
  21. @Inject
  22. protected WxServiceImpl wxService;
  23. private List<String> media_ids = new ArrayList<String>();
  24. @Test(dataProvider="uploadMedia")
  25. public void testUploadMedia(String mediaType, String fileType, String fileName) throws WxErrorException, IOException {
  26. InputStream inputStream = ClassLoader.getSystemResourceAsStream(fileName);
  27. WxMediaUploadResult res = wxService.mediaUpload(mediaType, fileType, inputStream);
  28. Assert.assertNotNull(res.getType());
  29. Assert.assertNotNull(res.getCreated_at());
  30. Assert.assertTrue(res.getMedia_id() != null || res.getThumb_media_id() != null);
  31. if (res.getMedia_id() != null) {
  32. media_ids.add(res.getMedia_id());
  33. }
  34. if (res.getThumb_media_id() != null) {
  35. media_ids.add(res.getThumb_media_id());
  36. }
  37. }
  38. @DataProvider
  39. public Object[][] uploadMedia() {
  40. return new Object[][] {
  41. new Object[] { WxConsts.MEDIA_IMAGE, WxConsts.FILE_JPG, "mm.jpeg" },
  42. new Object[] { WxConsts.MEDIA_VOICE, WxConsts.FILE_MP3, "mm.mp3" },
  43. new Object[] { WxConsts.MEDIA_VIDEO, WxConsts.FILE_MP4, "mm.mp4" },
  44. new Object[] { WxConsts.MEDIA_THUMB, WxConsts.FILE_JPG, "mm.jpeg" }
  45. };
  46. }
  47. @Test(dependsOnMethods = { "testUploadMedia" }, dataProvider="downloadMedia")
  48. public void testDownloadMedia(String media_id) throws WxErrorException {
  49. wxService.mediaDownload(media_id);
  50. }
  51. @DataProvider
  52. public Object[][] downloadMedia() {
  53. Object[][] params = new Object[this.media_ids.size()][];
  54. for (int i = 0; i < this.media_ids.size(); i++) {
  55. params[i] = new Object[] { this.media_ids.get(i) };
  56. }
  57. return params;
  58. }
  59. }