refactor: Move to agent architecture

This commit is contained in:
Petr Mironychev
2026-05-30 14:50:49 +02:00
parent 34ce787320
commit ccc2ec2e80
364 changed files with 10801 additions and 19020 deletions

View File

@@ -0,0 +1,53 @@
// Copyright (C) 2024-2026 Petr Mironychev
// SPDX-License-Identifier: GPL-3.0-or-later
// Additional attribution terms under GPLv3 §7(b) apply — see LICENSE
#include <gtest/gtest.h>
#include <context/EnvBlockFormatter.hpp>
using namespace QodeAssist::Context;
TEST(EnvBlockFormatterTest, FormatProjectWithBuildDir)
{
const QString out = EnvBlockFormatter::formatProject(
{"MyApp", "/home/dev/myapp", "/home/dev/build-myapp"});
EXPECT_TRUE(out.startsWith("# Active project: MyApp"));
EXPECT_TRUE(out.contains("# Project source root: /home/dev/myapp"));
EXPECT_TRUE(out.contains("# Build output directory"));
EXPECT_TRUE(out.contains("/home/dev/build-myapp"));
}
TEST(EnvBlockFormatterTest, FormatProjectWithoutBuildDir)
{
const QString out = EnvBlockFormatter::formatProject({"MyApp", "/home/dev/myapp", {}});
EXPECT_TRUE(out.contains("# Project source root: /home/dev/myapp"));
EXPECT_FALSE(out.contains("# Build output directory"));
}
TEST(EnvBlockFormatterTest, FormatProjectEmptyEnv)
{
EXPECT_EQ(EnvBlockFormatter::formatProject({}), "# No active project in IDE");
}
TEST(EnvBlockFormatterTest, FormatFileWithKnownMime)
{
const QString out
= EnvBlockFormatter::formatFile({"/home/dev/myapp/main.cpp", "text/x-c++src"});
EXPECT_TRUE(out.startsWith("File information:"));
EXPECT_TRUE(out.contains("Language:"));
EXPECT_TRUE(out.contains("text/x-c++src"));
EXPECT_TRUE(out.contains("File path: /home/dev/myapp/main.cpp"));
}
TEST(EnvBlockFormatterTest, FormatFileWithoutMime)
{
const QString out = EnvBlockFormatter::formatFile({"/home/dev/myapp/data.bin", {}});
EXPECT_FALSE(out.contains("Language"));
EXPECT_FALSE(out.contains("MIME"));
EXPECT_TRUE(out.contains("File path: /home/dev/myapp/data.bin"));
}