Home / Function/ test_allow_explicit_node_modules_paths() — tailwindcss Function Reference

test_allow_explicit_node_modules_paths() — tailwindcss Function Reference

Architecture documentation for the test_allow_explicit_node_modules_paths() function in scanner.rs from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  ebd5b7d4_b9b6_20e6_6fbe_145a4a1c27c9["test_allow_explicit_node_modules_paths()"]
  3a07392e_ccde_2e1e_c4dd_a2d547d20807["create_files_in()"]
  ebd5b7d4_b9b6_20e6_6fbe_145a4a1c27c9 -->|calls| 3a07392e_ccde_2e1e_c4dd_a2d547d20807
  d847ae88_0e93_5005_413e_ff86e08c4291["public_source_entry_from_pattern()"]
  ebd5b7d4_b9b6_20e6_6fbe_145a4a1c27c9 -->|calls| d847ae88_0e93_5005_413e_ff86e08c4291
  66c99d71_b17e_d5a4_2a47_c675fac3c9cc["scan()"]
  ebd5b7d4_b9b6_20e6_6fbe_145a4a1c27c9 -->|calls| 66c99d71_b17e_d5a4_2a47_c675fac3c9cc
  style ebd5b7d4_b9b6_20e6_6fbe_145a4a1c27c9 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

crates/oxide/tests/scanner.rs lines 1416–1475

    fn test_allow_explicit_node_modules_paths() {
        // Create a temporary working directory
        let dir = tempdir().unwrap().into_path();

        // Create files
        create_files_in(
            &dir,
            &[
                // Current project
                ("src/index.html", "content-['src/index.html']"),
                // Ignore file
                (".gitignore", "node_modules"),
                // Library ignored by default
                (
                    "node_modules/my-ui-lib/index.html",
                    "content-['node_modules/my-ui-lib/index.html']",
                ),
            ],
        );

        // Default auto source detection
        let sources = vec![public_source_entry_from_pattern(
            dir.clone(),
            "@source './'",
        )];

        let mut scanner = Scanner::new(sources.clone());

        let candidates = scanner.scan();
        assert_eq!(candidates, vec!["content-['src/index.html']"]);

        // Explicitly listing all `*.html` files, should not include `node_modules` because it's
        // ignored
        let sources = vec![public_source_entry_from_pattern(
            dir.clone(),
            "@source '**/*.html'",
        )];

        let mut scanner = Scanner::new(sources.clone());
        let candidates = scanner.scan();
        assert_eq!(candidates, vec!["content-['src/index.html']"]);

        // Explicitly listing all `*.html` files
        // Explicitly list the `node_modules/my-ui-lib`
        //
        let sources = vec![
            public_source_entry_from_pattern(dir.clone(), "@source '**/*.html'"),
            public_source_entry_from_pattern(dir.clone(), "@source 'node_modules/my-ui-lib'"),
        ];

        let mut scanner = Scanner::new(sources.clone());
        let candidates = scanner.scan();
        assert_eq!(
            candidates,
            vec![
                "content-['node_modules/my-ui-lib/index.html']",
                "content-['src/index.html']"
            ]
        );
    }

Domain

Subdomains

Frequently Asked Questions

What does test_allow_explicit_node_modules_paths() do?
test_allow_explicit_node_modules_paths() is a function in the tailwindcss codebase.
What does test_allow_explicit_node_modules_paths() call?
test_allow_explicit_node_modules_paths() calls 3 function(s): create_files_in, public_source_entry_from_pattern, scan.

Analyze Your Own Codebase

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

Try Supermodel Free