Files
microsoft--semantic-kernel/python/tests/unit/functions/test_kernel_function_metadata.py
T
wehub-resource-sync b957a53def
CodeQL / Analyze (csharp) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 13:21:23 +08:00

92 lines
2.6 KiB
Python

# Copyright (c) Microsoft. All rights reserved.
import pytest
from semantic_kernel.functions.kernel_function_metadata import KernelFunctionMetadata
from semantic_kernel.functions.kernel_parameter_metadata import KernelParameterMetadata
def test_kernel_function_metadata():
function_metadata = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
parameters=[],
is_prompt=True,
is_asynchronous=True,
)
assert function_metadata.is_prompt
def test_kernel_function_metadata_defaults():
function_metadata = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
assert function_metadata.parameters == []
assert function_metadata.is_asynchronous
def test_kernel_function_metadata_name_pattern_error():
with pytest.raises(ValueError):
KernelFunctionMetadata(
name="*",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
def test_kernel_function_metadata_name_empty_error():
with pytest.raises(ValueError):
KernelFunctionMetadata(
name="",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
def test_kernel_function_equals():
function_metadata_1 = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
function_metadata_2 = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
assert function_metadata_1 == function_metadata_2
def test_kernel_function_not_equals():
function_metadata_1 = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
function_metadata_2 = KernelFunctionMetadata(
name="function2",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
assert function_metadata_1 != function_metadata_2
def test_kernel_function_not_equals_other_object():
function_metadata_1 = KernelFunctionMetadata(
name="function1",
plugin_name="plugin1",
description="Semantic function",
is_prompt=True,
)
function_metadata_2 = KernelParameterMetadata(name="function2", description="Semantic function", default_value="")
assert function_metadata_1 != function_metadata_2