Home / File/ test_base.py — langchain Source File

test_base.py — langchain Source File

Architecture documentation for test_base.py, a python file in the langchain codebase. 3 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  afc33a90_5b32_496b_4ae7_80bd463d6fc4["test_base.py"]
  d1277855_b602_121e_7de9_23a45b72f1fe["random"]
  afc33a90_5b32_496b_4ae7_80bd463d6fc4 --> d1277855_b602_121e_7de9_23a45b72f1fe
  120e2591_3e15_b895_72b6_cb26195e40a6["pytest"]
  afc33a90_5b32_496b_4ae7_80bd463d6fc4 --> 120e2591_3e15_b895_72b6_cb26195e40a6
  268b8cc1_3a7e_b36a_413b_50318a2651a8["langchain_classic.evaluation.parsing.base"]
  afc33a90_5b32_496b_4ae7_80bd463d6fc4 --> 268b8cc1_3a7e_b36a_413b_50318a2651a8
  style afc33a90_5b32_496b_4ae7_80bd463d6fc4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import random

import pytest

from langchain_classic.evaluation.parsing.base import (
    JsonEqualityEvaluator,
    JsonValidityEvaluator,
)


@pytest.fixture
def json_validity_evaluator() -> JsonValidityEvaluator:
    return JsonValidityEvaluator()


def test_json_validity_evaluator_requires_input(
    json_validity_evaluator: JsonValidityEvaluator,
) -> None:
    assert json_validity_evaluator.requires_input is False


def test_json_validity_evaluator_requires_reference(
    json_validity_evaluator: JsonValidityEvaluator,
) -> None:
    assert json_validity_evaluator.requires_reference is False


def test_json_validity_evaluator_evaluation_name(
    json_validity_evaluator: JsonValidityEvaluator,
) -> None:
    assert json_validity_evaluator.evaluation_name == "json_validity"


def test_json_validity_evaluator_evaluate_valid_json(
    json_validity_evaluator: JsonValidityEvaluator,
) -> None:
    prediction = '{"name": "John", "age": 30, "city": "New York"}'
    result = json_validity_evaluator.evaluate_strings(prediction=prediction)
    assert result == {"score": 1}


def test_json_validity_evaluator_evaluate_invalid_json(
    json_validity_evaluator: JsonValidityEvaluator,
) -> None:
    prediction = '{"name": "John", "age": 30, "city": "New York",}'
    result = json_validity_evaluator.evaluate_strings(prediction=prediction)
    assert result["score"] == 0


@pytest.fixture
def json_equality_evaluator() -> JsonEqualityEvaluator:
    return JsonEqualityEvaluator()


def test_json_equality_evaluator_requires_input(
    json_equality_evaluator: JsonEqualityEvaluator,
) -> None:
    assert json_equality_evaluator.requires_input is False


// ... (117 more lines)

Subdomains

Dependencies

  • langchain_classic.evaluation.parsing.base
  • pytest
  • random

Frequently Asked Questions

What does test_base.py do?
test_base.py is a source file in the langchain codebase, written in python. It belongs to the CoreAbstractions domain, RunnableInterface subdomain.
What functions are defined in test_base.py?
test_base.py defines 16 function(s): json_equality_evaluator, json_validity_evaluator, test_json_equality_evaluator_evaluate_lists_permutation_invariant, test_json_equality_evaluator_evaluate_strings_custom_operator_equal, test_json_equality_evaluator_evaluate_strings_custom_operator_not_equal, test_json_equality_evaluator_evaluate_strings_equal, test_json_equality_evaluator_evaluate_strings_not_equal, test_json_equality_evaluator_evaluation_name, test_json_equality_evaluator_parse_json, test_json_equality_evaluator_requires_input, and 6 more.
What does test_base.py depend on?
test_base.py imports 3 module(s): langchain_classic.evaluation.parsing.base, pytest, random.
Where is test_base.py in the architecture?
test_base.py is located at libs/langchain/tests/unit_tests/evaluation/parsing/test_base.py (domain: CoreAbstractions, subdomain: RunnableInterface, directory: libs/langchain/tests/unit_tests/evaluation/parsing).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free