TESTS = glob(['tst/**/*.java'])

for t in TESTS:
  n = t[len('tst/'):len(t)-len('.java')].replace('/', '.')
  java_test(
    name = n,
    labels = ['lfs'],
    srcs = [t],
    deps = [
      ':helpers',
      '//org.eclipse.jgit.junit:junit',
      '//org.eclipse.jgit.lfs:jgit-lfs',
      '//org.eclipse.jgit:jgit',
      '//lib:hamcrest-core',
      '//lib:hamcrest-library',
      '//lib:junit',
    ],
    source_under_test = ['//org.eclipse.jgit.lfs:jgit-lfs'],
  )

java_library(
  name = 'helpers',
  srcs = glob(['src/**/*.java']),
  deps = [
    '//org.eclipse.jgit:jgit',
    '//org.eclipse.jgit.lfs:jgit-lfs',
    '//org.eclipse.jgit.junit:junit',
    '//lib:junit',
  ],
  visibility = ['PUBLIC']
)
