From 5a8c47eb0ebf500cb09af0995b78e95ce659a15a Mon Sep 17 00:00:00 2001 From: Scott Euser <scotteuser@gmail.com> Date: Sat, 15 Feb 2025 07:13:09 +0000 Subject: [PATCH] Do not allow reference to the current node, update tests to match --- src/AiReferenceGenerator.php | 8 +++++++- tests/src/Functional/AiAutoReferenceUiTest.php | 5 +++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/AiReferenceGenerator.php b/src/AiReferenceGenerator.php index 647d229..f84bdea 100644 --- a/src/AiReferenceGenerator.php +++ b/src/AiReferenceGenerator.php @@ -272,9 +272,15 @@ class AiReferenceGenerator { foreach ($options as $option_group) { $merged_options += $option_group; } - return $merged_options; + $options = $merged_options; } } + + // Do not suggest a reference to the current node. + if (isset($options[$node->id()])) { + unset($options[$node->id()]); + } + return $options; } return []; diff --git a/tests/src/Functional/AiAutoReferenceUiTest.php b/tests/src/Functional/AiAutoReferenceUiTest.php index 4079b49..11c8129 100644 --- a/tests/src/Functional/AiAutoReferenceUiTest.php +++ b/tests/src/Functional/AiAutoReferenceUiTest.php @@ -318,19 +318,20 @@ class AiAutoReferenceUiTest extends BrowserTestBase { // Field with a single target bundle. $allowed_values = $generator->getFieldAllowedValues($article, 'field_related_food'); $this->assertSame([ + // These are all articles. 1 => 'Chocolate Cake', 3 => 'Vanilla Ice Cream', 4 => 'Tomato Soup', - 6 => 'All about chocolate cakes', ], $allowed_values); // Field with multiple target bundles. $allowed_values = $generator->getFieldAllowedValues($article, 'field_related_multiple'); $this->assertSame([ + // These are articles. 1 => 'Chocolate Cake', 3 => 'Vanilla Ice Cream', 4 => 'Tomato Soup', - 6 => 'All about chocolate cakes', + // This one is a recipe. 5 => 'Chocolate Cake Recipe', ], $allowed_values); } -- GitLab