From d5c4917a8af35af0956abec6e421190c64fcd9e8 Mon Sep 17 00:00:00 2001 From: Ding Yuntian <1491671119@qq.com> Date: Sun, 19 Jul 2026 00:00:54 +0800 Subject: [PATCH] =?UTF-8?q?test(dialog):=20=E6=B7=BB=E5=8A=A0=E9=80=89?= =?UTF-8?q?=E9=A1=B9=E6=8F=90=E7=A4=BA=E8=AF=AD=E5=85=83=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 校验 IsOptionPromptLine 仅匹配精确的 option_prompt 元数据。 --- Assets/Editor/OptionPromptMetadataTests.cs | 44 +++++++++++++++++++ .../Editor/OptionPromptMetadataTests.cs.meta | 11 +++++ 2 files changed, 55 insertions(+) create mode 100644 Assets/Editor/OptionPromptMetadataTests.cs create mode 100644 Assets/Editor/OptionPromptMetadataTests.cs.meta diff --git a/Assets/Editor/OptionPromptMetadataTests.cs b/Assets/Editor/OptionPromptMetadataTests.cs new file mode 100644 index 000000000..869214aa5 --- /dev/null +++ b/Assets/Editor/OptionPromptMetadataTests.cs @@ -0,0 +1,44 @@ +using AibisDream.Utility; +using NUnit.Framework; +using Yarn.Unity; + +namespace AibisDream.SystemEditor.Tests +{ + public sealed class OptionPromptMetadataTests + { + [Test] + public void IsOptionPromptLine_WithExactMetadata_ReturnsTrue() + { + var line = new LocalizedLine + { + Metadata = new[] { "line:0123456", YarnUtil.OptionPrompt } + }; + + Assert.That(line.IsOptionPromptLine(), Is.True); + } + + [TestCase("option_prompts")] + [TestCase("dream_option_prompt")] + [TestCase("OPTION_PROMPT")] + public void IsOptionPromptLine_WithSimilarMetadata_ReturnsFalse(string metadata) + { + var line = new LocalizedLine + { + Metadata = new[] { metadata } + }; + + Assert.That(line.IsOptionPromptLine(), Is.False); + } + + [Test] + public void IsOptionPromptLine_WithoutMetadata_ReturnsFalse() + { + var line = new LocalizedLine + { + Metadata = null + }; + + Assert.That(line.IsOptionPromptLine(), Is.False); + } + } +} diff --git a/Assets/Editor/OptionPromptMetadataTests.cs.meta b/Assets/Editor/OptionPromptMetadataTests.cs.meta new file mode 100644 index 000000000..3a88d584a --- /dev/null +++ b/Assets/Editor/OptionPromptMetadataTests.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d5e819fca9154e979c37ac490184620b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: