Skip to main content
Glama

baidu-ai-search

Official
by baidubce
test_base_component.py4.92 kB
import os import unittest from appbuilder.core.component import Component from appbuilder.core.component import ComponentOutput, Urls, Chart # @unittest.skipUnless(os.getenv("TEST_CASE", "UNKNOWN") == "CPU_PARALLEL", "") class TestBaseComponent(unittest.TestCase): def setUp(self) -> None: self.component = Component() def test_valid_output_with_str(self): out1 = self.component.create_output(type="text", text="test") out2 = self.component.create_output(type="code", text="import appbuilder") out3 = self.component.create_output(type="urls", text="http://www.baidu.com") out4 = self.component.create_output(type="oral_text", text="你是哪个") out5 = self.component.create_output(type="json", text="{'key':'value'}") out6 = self.component.create_output(type="reasoning_content", text="思考过程") self.assertIsInstance(out1, ComponentOutput) self.assertIsInstance(out2, ComponentOutput) self.assertIsInstance(out3, ComponentOutput) self.assertIsInstance(out4, ComponentOutput) self.assertIsInstance(out5, ComponentOutput) self.assertIsInstance(out6, ComponentOutput) def test_valid_output_with_dict(self): output1 = self.component.create_output(type="text", text={"info": "1"}) output2 = self.component.create_output(type="code", text={"code": "1"}) output3 = self.component.create_output(type="urls", text={"url": "http://www.baidu.com"}) output4 = self.component.create_output(type="oral_text", text={"info": "你好"}) output5 = self.component.create_output(type="files", text={"filename": "file.txt", "url": "http://www.baidu.com"}) output6 = self.component.create_output(type="image", text={"filename": "file.png", "url": "http://www.baidu.com"}) output7 = self.component.create_output(type="chart", text={"type": "chart", "data": '{"key": "value"}'}) output8 = self.component.create_output(type="audio", text={"filename": "file.mp3", "url": "http://www.baidu.com"}) output9 = self.component.create_output(type="plan", text={"detail": "hello", "steps":[{"name": "1", "arguments": {"query": "a", "chat_history": "world"}}]}) output10 = self.component.create_output(type="function_call", text={"thought": "hello", "name": "AppBuilder", "arguments": {"query": "a", "chat_history": "world"}}) output11 = self.component.create_output(type="references", text={"type": "engine", "doc_id": "1", "content": "hello, world", "title": "Have a nice day", "source": "bing", "extra": {"key": "value"}}) output12 = self.component.create_output(type="json", text={"data": "value"}) output13 = self.component.create_output(type="browser", text={"query": "go to http://www.baidu.com"}) output14 = self.component.create_output(type="progress", text={"progress": 0.5, "step": "end", "next_step_name": "step2", "message": "message"}) output15 = self.component.create_output(type="reasoning_content", text={"info": "思考过程"}) self.assertIsInstance(output1, ComponentOutput) self.assertIsInstance(output2, ComponentOutput) self.assertIsInstance(output3, ComponentOutput) self.assertIsInstance(output4, ComponentOutput) self.assertIsInstance(output5, ComponentOutput) self.assertIsInstance(output6, ComponentOutput) self.assertIsInstance(output7, ComponentOutput) self.assertIsInstance(output8, ComponentOutput) self.assertIsInstance(output9, ComponentOutput) self.assertIsInstance(output10, ComponentOutput) self.assertIsInstance(output11, ComponentOutput) self.assertIsInstance(output12, ComponentOutput) self.assertIsInstance(output13, ComponentOutput) self.assertIsInstance(output14, ComponentOutput) self.assertIsInstance(output15, ComponentOutput) self.assertEqual(output11.content[0].text.extra["key"], "value") def test_valid_output_type_with_same_key(self): output1 = self.component.create_output(type="urls", text={"url": "http://www.baidu.com"}) self.assertIsInstance(output1.content[0].text, Urls) output2 = self.component.create_output(type="chart", text={"type": "chart_sheet", "data": '{"key": "value"}'}) self.assertIsInstance(output2.content[0].text, Chart) with self.assertRaises(ValueError): output = self.component.create_output(type="files", text=["http://www.baidu.com"]) with self.assertRaises(ValueError): output = self.component.create_output(type="test", text={"filename": "file.txt", "url": ["http://www.baidu.com"]}) def test_invalid_output_type_json(self): with self.assertRaises(ValueError): output = self.component.create_output(type="test", text="") if __name__ == '__main__': unittest.main()

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/baidubce/app-builder'

If you have feedback or need assistance with the MCP directory API, please join our Discord server