relay-knowledge 1.1.17

Graph-database-based knowledge graph project.
Documentation
// Direct tests for generated-source detection.

use super::*;

#[test]
fn detects_generated_path_patterns() {
    for path in [
        "proto/user.pb.go",
        "src/service.pulsar.go",
        "web/api.generated.ts",
        "web/client.auto.ts",
        "public/app.min.js",
        "assets/main.min.css",
        "dist/client/index.ts",
        "build/openapi/client.rs",
        "target/generated/schema.rs",
    ] {
        assert!(path_has_generated_signal(path), "{path}");
    }
}

#[test]
fn detects_header_markers_for_swagger_and_openapi_clients() {
    for content in [
        "// Code generated by protoc-gen-go. DO NOT EDIT.\npackage api\n",
        "/* auto-generated swagger client */\nexport class UsersApi {}\n",
        "// @generated by relay test fixture\n",
        "// OpenAPI Generator client\nexport const request = () => {}\n",
    ] {
        assert!(is_generated_file("src/client.ts", content.as_bytes()));
    }
}

#[test]
fn does_not_treat_size_alone_as_generated() {
    let large_text = vec![b'a'; 1024 * 1024 + 1];

    assert!(!is_generated_file("src/huge.ts", &large_text));
}

#[test]
fn keeps_nested_build_and_dist_source_paths_handwritten() {
    for path in ["src/build/config.rs", "internal/dist/reader.go"] {
        assert!(!path_has_generated_signal(path), "{path}");
    }

    for path in ["build/openapi/client.rs", "dist/client/index.ts"] {
        assert!(path_has_generated_signal(path), "{path}");
    }
}