2025-08-05 11:55:48 +02:00
|
|
|
|
using AICore.Facade.LLM;
|
|
|
|
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using System.Net;
|
|
|
|
|
|
|
|
|
|
|
|
namespace AiCoreUnitTest
|
|
|
|
|
|
{
|
|
|
|
|
|
[TestClass]
|
|
|
|
|
|
public class OpenWebUIFacadeTest
|
|
|
|
|
|
{
|
|
|
|
|
|
public string OpenWebUIUrl { get; set; }
|
|
|
|
|
|
public string OpenWebUIKey { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
[TestInitialize]
|
|
|
|
|
|
public void TestInitialize()
|
|
|
|
|
|
{
|
2025-08-05 14:45:47 +02:00
|
|
|
|
OpenWebUIUrl = "https://owui1.ownsoft.de";
|
2025-08-05 11:55:48 +02:00
|
|
|
|
OpenWebUIKey = "sk-7f5d8c418630448dbe31ab1c7e8b100a";
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-05 14:45:47 +02:00
|
|
|
|
public OpenWebApiClient GetClient()
|
2025-08-05 11:55:48 +02:00
|
|
|
|
=> new OpenWebApiClient(OpenWebUIUrl, OpenWebUIKey);
|
|
|
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
|
public void GetModels()
|
|
|
|
|
|
{
|
2025-08-05 14:45:47 +02:00
|
|
|
|
var client = GetClient();
|
2025-08-05 11:55:48 +02:00
|
|
|
|
|
|
|
|
|
|
var models = client.GetAiModelle();
|
|
|
|
|
|
|
|
|
|
|
|
Assert.IsNotNull(models);
|
|
|
|
|
|
}
|
2025-08-05 14:45:47 +02:00
|
|
|
|
|
|
|
|
|
|
[TestMethod]
|
|
|
|
|
|
public void SendMessage()
|
|
|
|
|
|
{
|
|
|
|
|
|
var client = GetClient();
|
|
|
|
|
|
|
|
|
|
|
|
// Build Payload
|
|
|
|
|
|
var payload = new
|
|
|
|
|
|
{
|
|
|
|
|
|
model = "llama3.2:latest",
|
|
|
|
|
|
messages = new[] {
|
|
|
|
|
|
new {
|
|
|
|
|
|
role = "user",
|
|
|
|
|
|
content = "Say Hi!"
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
var response = client.SendAiMessageRequest(payload, out string message, out string model, out int? duration);
|
|
|
|
|
|
|
|
|
|
|
|
Assert.IsTrue(response?.Success);
|
|
|
|
|
|
}
|
2025-08-05 11:55:48 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|