truthtaicom's picture
Upload folder using huggingface_hub
4b0794d verified
from langflow.components.inputs import ChatInput
from langflow.components.processing.parse_json_data import ParseJSONDataComponent
from langflow.schema import Data
from tests.integration.components.mock_components import TextToData
from tests.integration.utils import ComponentInputHandle, run_single_component
async def test_from_data():
outputs = await run_single_component(
ParseJSONDataComponent,
inputs={
"input_value": ComponentInputHandle(
clazz=TextToData, inputs={"text_data": ['{"key":"value1"}'], "is_json": True}, output_name="from_text"
),
"query": ".[0].key",
},
)
assert outputs["filtered_data"] == [Data(text="value1")]
outputs = await run_single_component(
ParseJSONDataComponent,
inputs={
"input_value": ComponentInputHandle(
clazz=TextToData,
inputs={"text_data": ['{"key":[{"field1": 1, "field2": 2}]}'], "is_json": True},
output_name="from_text",
),
"query": ".[0].key.[0].field2",
},
)
assert outputs["filtered_data"] == [Data(text="2")]
async def test_from_message():
outputs = await run_single_component(
ParseJSONDataComponent,
inputs={
"input_value": ComponentInputHandle(clazz=ChatInput, inputs={}, output_name="message"),
"query": ".key",
},
run_input="{'key':'value1'}",
)
assert outputs["filtered_data"] == [Data(text="value1")]
outputs = await run_single_component(
ParseJSONDataComponent,
inputs={
"input_value": ComponentInputHandle(clazz=ChatInput, inputs={}, output_name="message"),
"query": ".key.[0].field2",
},
run_input='{"key":[{"field1": 1, "field2": 2}]}',
)
assert outputs["filtered_data"] == [Data(text="2")]