From 21b6e9f996100f1f22203f54f0804f13af75e0cb Mon Sep 17 00:00:00 2001 From: cherishsince Date: Sat, 6 Apr 2024 22:00:56 +0800 Subject: [PATCH] 重命名测试包 --- yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjTests.java | 39 --------------------------------------- yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjWebSocketTests.java | 51 --------------------------------------------------- yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/OpenAiImageClientTests.java | 67 ------------------------------------------------------------------- yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjInteractionsTests.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjWebSocketTests.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/openAiImage/OpenAiImageClientTests.java | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 169 insertions(+), 157 deletions(-) delete mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjTests.java delete mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjWebSocketTests.java delete mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/OpenAiImageClientTests.java create mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjInteractionsTests.java create mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjWebSocketTests.java create mode 100644 yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/openAiImage/OpenAiImageClientTests.java diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjTests.java deleted file mode 100644 index b5c434a..0000000 --- a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjTests.java +++ /dev/null @@ -1,39 +0,0 @@ -package cn.iocoder.yudao.framework.ai.image; - -import cn.hutool.core.io.FileUtil; -import cn.iocoder.yudao.framework.ai.midjourney.MidjourneyConfig; -import cn.iocoder.yudao.framework.ai.midjourney.interactions.MjImagineInteractions; -import org.junit.Before; -import org.junit.Test; - -import java.io.File; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * mj - * - * author: fansili - * time: 2024/4/4 18:59 - */ -public class MjTests { - - private MidjourneyConfig midjourneyConfig; - @Before - public void setup() { - String token = "OTcwNDc3NzQxMjUyMTY5NzI4.GJcVxa.VrzMii8dsHOJAPZn4Mw8GuEo7_nIUJij9JIHD4"; - Map requestTemplates = new HashMap<>(); - List files = FileUtil.loopFiles("/Users/fansili/projects/github/ruoyi-vue-pro/yudao-module-ai/yudao-spring-boot-starter-ai/src/main/resources/http-body"); - for (File file : files) { - requestTemplates.put(file.getName().replace(".json", ""), FileUtil.readUtf8String(file)); - } - this.midjourneyConfig = new MidjourneyConfig(token, "1225414986084388926", "1225414986587832385", requestTemplates); - } - - @Test - public void mjImage() { - MjImagineInteractions mjImagineInteractions = new MjImagineInteractions(midjourneyConfig); - mjImagineInteractions.execute("童话里应该是什么样子?"); - } -} diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjWebSocketTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjWebSocketTests.java deleted file mode 100644 index 786eb65..0000000 --- a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/MjWebSocketTests.java +++ /dev/null @@ -1,51 +0,0 @@ -package cn.iocoder.yudao.framework.ai.image; - -import cn.hutool.core.io.FileUtil; -import cn.iocoder.yudao.framework.ai.midjourney.MidjourneyConfig; -import cn.iocoder.yudao.framework.ai.midjourney.webSocket.listener.MjMessageListener; -import cn.iocoder.yudao.framework.ai.midjourney.webSocket.MjWebSocketStarter; -import org.junit.Before; -import org.junit.Test; - -import java.io.File; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Scanner; - -/** - * author: fansili - * time: 2024/4/3 16:40 - */ -public class MjWebSocketTests { - - private MidjourneyConfig midjourneyConfig; - - @Before - public void setup() { - String token = "OTcyNzIxMzA0ODkxNDUzNDUw.G_vMOz.BO_Q0sXAD80u5ZKIHPNYDTRX_FgeKL3cKFc53I"; - Map requestTemplates = new HashMap<>(); - List files = FileUtil.loopFiles("/Users/fansili/projects/github/ruoyi-vue-pro/yudao-module-ai/yudao-spring-boot-starter-ai/src/main/resources/http-body"); - for (File file : files) { - requestTemplates.put(file.getName().replace(".json", ""), FileUtil.readUtf8String(file)); - } - this.midjourneyConfig = new MidjourneyConfig(token, "1225608134878302329", "1225608134878302332", requestTemplates); - } - - @Test - public void startSocketTest() { - String wssUrl = "wss://gateway.discord.gg"; - var messageListener = new MjMessageListener(midjourneyConfig); - var webSocketStarter = new MjWebSocketStarter(wssUrl, null, midjourneyConfig, messageListener); - - try { - webSocketStarter.start(); - } catch (Exception e) { - throw new RuntimeException(e); - } - - - Scanner scanner = new Scanner(System.in); - scanner.nextLine(); - } -} diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/OpenAiImageClientTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/OpenAiImageClientTests.java deleted file mode 100644 index 8a6fb5f..0000000 --- a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/image/OpenAiImageClientTests.java +++ /dev/null @@ -1,67 +0,0 @@ -package cn.iocoder.yudao.framework.ai.image; - -import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageApi; -import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageClient; -import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageOptions; -import org.junit.Before; -import org.junit.Test; - -import javax.imageio.ImageIO; -import javax.swing.*; -import java.awt.image.BufferedImage; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.util.Base64; -import java.util.Scanner; - -/** - * author: fansili - * time: 2024/3/17 10:40 - */ -public class OpenAiImageClientTests { - - - private OpenAiImageClient openAiImageClient; - - @Before - public void setup() { - // 初始化 openAiImageClient - this.openAiImageClient = new OpenAiImageClient( - new OpenAiImageApi(""), - new OpenAiImageOptions().setResponseFormat(OpenAiImageOptions.ResponseFormatEnum.URL.getValue()) - ); - } - - @Test - public void callTest() { - ImageResponse call = openAiImageClient.call(new ImagePrompt("我和我的小狗,一起在北极和企鹅玩排球。")); - System.err.println("url: " + call.getResult().getOutput().getUrl()); - System.err.println("base64: " + call.getResult().getOutput().getB64Json()); - - String base64String = call.getResult().getOutput().getB64Json(); - ImageIcon imageIcon = new ImageIcon(decodeBase64ToImage(base64String)); - JLabel label = new JLabel(imageIcon); - - JFrame frame = new JFrame("Base64 Image Display"); - frame.getContentPane().add(label); - frame.pack(); - frame.setVisible(true); - - // 阻止退出 - Scanner scanner = new Scanner(System.in); - scanner.nextLine(); - } - - - // 将Base64解码为BufferedImage - private static BufferedImage decodeBase64ToImage(String base64String) { - try { - byte[] decodedBytes = Base64.getDecoder().decode(base64String); - ByteArrayInputStream bis = new ByteArrayInputStream(decodedBytes); - return ImageIO.read(bis); - } catch (IOException e) { - System.out.println("Error decoding the base64 image: " + e.getMessage()); - return null; - } - } -} diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjInteractionsTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjInteractionsTests.java new file mode 100644 index 0000000..3108b31 --- /dev/null +++ b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjInteractionsTests.java @@ -0,0 +1,49 @@ +package cn.iocoder.yudao.framework.ai.mj; + +import cn.hutool.core.io.FileUtil; +import cn.iocoder.yudao.framework.ai.midjourney.MidjourneyConfig; +import cn.iocoder.yudao.framework.ai.midjourney.interactions.MjInteractions; +import cn.iocoder.yudao.framework.ai.midjourney.vo.ReRoll; +import org.junit.Before; +import org.junit.Test; + +import java.io.File; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * mj + * + * author: fansili + * time: 2024/4/4 18:59 + */ +public class MjInteractionsTests { + + private MidjourneyConfig midjourneyConfig; + @Before + public void setup() { + String token = "OTcyNzIxMzA0ODkxNDUzNDUw.G_vMOz.BO_Q0sXAD80u5ZKIHPNYDTRX_FgeKL3cKFc53I"; + Map requestTemplates = new HashMap<>(); + List files = FileUtil.loopFiles("/Users/fansili/projects/github/ruoyi-vue-pro/yudao-module-ai/yudao-spring-boot-starter-ai/src/main/resources/http-body"); + for (File file : files) { + requestTemplates.put(file.getName().replace(".json", ""), FileUtil.readUtf8String(file)); + } + this.midjourneyConfig = new MidjourneyConfig(token, "1225608134878302329", "1225608134878302332", requestTemplates); + } + + @Test + public void mjImageTest() { + MjInteractions mjImagineInteractions = new MjInteractions(midjourneyConfig); + mjImagineInteractions.imagine("童话里应该是什么样子?"); + } + + + @Test + public void reRollTest() { + MjInteractions mjImagineInteractions = new MjInteractions(midjourneyConfig); + mjImagineInteractions.reRoll(new ReRoll() + .setMessageId("1226165117448753243") + .setCustomId("MJ::JOB::upsample::3::2aeefbef-43e2-4057-bcf1-43b5f39ab6f7")); + } +} diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjWebSocketTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjWebSocketTests.java new file mode 100644 index 0000000..9076923 --- /dev/null +++ b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/mj/MjWebSocketTests.java @@ -0,0 +1,51 @@ +package cn.iocoder.yudao.framework.ai.mj; + +import cn.hutool.core.io.FileUtil; +import cn.iocoder.yudao.framework.ai.midjourney.MidjourneyConfig; +import cn.iocoder.yudao.framework.ai.midjourney.webSocket.listener.MjMessageListener; +import cn.iocoder.yudao.framework.ai.midjourney.webSocket.MjWebSocketStarter; +import org.junit.Before; +import org.junit.Test; + +import java.io.File; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Scanner; + +/** + * author: fansili + * time: 2024/4/3 16:40 + */ +public class MjWebSocketTests { + + private MidjourneyConfig midjourneyConfig; + + @Before + public void setup() { + String token = "OTcyNzIxMzA0ODkxNDUzNDUw.G_vMOz.BO_Q0sXAD80u5ZKIHPNYDTRX_FgeKL3cKFc53I"; + Map requestTemplates = new HashMap<>(); + List files = FileUtil.loopFiles("/Users/fansili/projects/github/ruoyi-vue-pro/yudao-module-ai/yudao-spring-boot-starter-ai/src/main/resources/http-body"); + for (File file : files) { + requestTemplates.put(file.getName().replace(".json", ""), FileUtil.readUtf8String(file)); + } + this.midjourneyConfig = new MidjourneyConfig(token, "1225608134878302329", "1225608134878302332", requestTemplates); + } + + @Test + public void startSocketTest() { + String wssUrl = "wss://gateway.discord.gg"; + var messageListener = new MjMessageListener(midjourneyConfig); + var webSocketStarter = new MjWebSocketStarter(wssUrl, null, midjourneyConfig, messageListener); + + try { + webSocketStarter.start(); + } catch (Exception e) { + throw new RuntimeException(e); + } + + + Scanner scanner = new Scanner(System.in); + scanner.nextLine(); + } +} diff --git a/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/openAiImage/OpenAiImageClientTests.java b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/openAiImage/OpenAiImageClientTests.java new file mode 100644 index 0000000..3891063 --- /dev/null +++ b/yudao-module-ai/yudao-spring-boot-starter-ai/src/test/java/cn/iocoder/yudao/framework/ai/openAiImage/OpenAiImageClientTests.java @@ -0,0 +1,69 @@ +package cn.iocoder.yudao.framework.ai.openAiImage; + +import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageApi; +import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageClient; +import cn.iocoder.yudao.framework.ai.imageopenai.OpenAiImageOptions; +import cn.iocoder.yudao.framework.ai.mj.ImagePrompt; +import cn.iocoder.yudao.framework.ai.mj.ImageResponse; +import org.junit.Before; +import org.junit.Test; + +import javax.imageio.ImageIO; +import javax.swing.*; +import java.awt.image.BufferedImage; +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.util.Base64; +import java.util.Scanner; + +/** + * author: fansili + * time: 2024/3/17 10:40 + */ +public class OpenAiImageClientTests { + + + private OpenAiImageClient openAiImageClient; + + @Before + public void setup() { + // 初始化 openAiImageClient + this.openAiImageClient = new OpenAiImageClient( + new OpenAiImageApi(""), + new OpenAiImageOptions().setResponseFormat(OpenAiImageOptions.ResponseFormatEnum.URL.getValue()) + ); + } + + @Test + public void callTest() { + ImageResponse call = openAiImageClient.call(new ImagePrompt("我和我的小狗,一起在北极和企鹅玩排球。")); + System.err.println("url: " + call.getResult().getOutput().getUrl()); + System.err.println("base64: " + call.getResult().getOutput().getB64Json()); + + String base64String = call.getResult().getOutput().getB64Json(); + ImageIcon imageIcon = new ImageIcon(decodeBase64ToImage(base64String)); + JLabel label = new JLabel(imageIcon); + + JFrame frame = new JFrame("Base64 Image Display"); + frame.getContentPane().add(label); + frame.pack(); + frame.setVisible(true); + + // 阻止退出 + Scanner scanner = new Scanner(System.in); + scanner.nextLine(); + } + + + // 将Base64解码为BufferedImage + private static BufferedImage decodeBase64ToImage(String base64String) { + try { + byte[] decodedBytes = Base64.getDecoder().decode(base64String); + ByteArrayInputStream bis = new ByteArrayInputStream(decodedBytes); + return ImageIO.read(bis); + } catch (IOException e) { + System.out.println("Error decoding the base64 image: " + e.getMessage()); + return null; + } + } +} -- libgit2 0.21.4