This directory contains a suite of test cases for the Skylark language plugin for Gazelle.
Please note that there are no BUILD or BUILD.bazel files in subdirs, insted there are BUILD.in and BUILD.out describing what the BUILD should look like initially and what the BUILD file should look like after the run. These names are special because they are not recognized by Bazel as a proper BUILD file, and therefore are included in the data dependency by the recursive data glob in //gazelle:go_default_test. If you would like to include any extremely complicated tests that contain proper BUILD files you will need to manually add them to the //gazelle:go_default_test target's data section.
simpleSimple is a base test case that was used to validate the parser.
nobuildfilesA test just like simple that has no BUILD files at the beginning.
importImport is a test case that imports a .bzl from the same directory.
multidirMultidir is a test that has a .bzl that imports from a different dirrectory.
testsUsing the skylib as an example, this test has .bzl files that end in _tests.bzl which are loaded into BUILD files and never imported by another repo.
privateUsing the skylib as an example, this test has .bzl files that live in a directory called private which is used to indicate that they are repo private. Note that this is distict from the expectations of go's internal where the relative position in the hierarchy determines the visibility.
defaultvisibilityIf the package declares a default_visibility the generated bzl_library should not set its own visibility.
externalThis test demonstrates that if you load from another repo, it is able to generate a deps entry for the dependency.
emptyGazelle has the ability to remove old and unused targets. Test that.