SRCS = glob([
  'src/main/java/**/*.java',
  'src/test/java/com/google/gerrit/server/project/Util.java'
])
RESOURCES =  glob(['src/main/resources/**/*'])

# TODO(sop) break up gerrit-server java_library(), its too big
java_library2(
  name = 'server',
  srcs = SRCS,
  resources = RESOURCES,
  deps = [
    '//gerrit-antlr:query_exception',
    '//gerrit-antlr:query_parser',
    '//gerrit-common:server',
    '//gerrit-extension-api:api',
    '//gerrit-patch-commonsnet:commons-net',
    '//gerrit-patch-jgit:server',
    '//gerrit-prettify:server',
    '//gerrit-reviewdb:server',
    '//gerrit-util-cli:cli',
    '//gerrit-util-ssl:ssl',
    '//lib:args4j',
    '//lib:automaton',
    '//lib:gson',
    '//lib:guava',
    '//lib:gwtjsonrpc',
    '//lib:gwtorm',
    '//lib:jsch',
    '//lib:juniversalchardet',
    '//lib:mime-util',
    '//lib:ow2-asm',
    '//lib:ow2-asm-tree',
    '//lib:ow2-asm-util',
    '//lib:parboiled-core',
    '//lib:pegdown',
    '//lib:protobuf',
    '//lib:velocity',
    '//lib/antlr:java_runtime',
    '//lib/commons:codec',
    '//lib/commons:dbcp',
    '//lib/commons:lang',
    '//lib/commons:net',
    '//lib/guice:guice',
    '//lib/guice:guice-assistedinject',
    '//lib/guice:guice-servlet',
    '//lib/jgit:jgit',
    '//lib/joda:joda-time',
    '//lib/log:api',
    '//lib/prolog:prolog-cafe',
  ],
  compile_deps = [
    '//lib/bouncycastle:bcprov',
    '//lib/bouncycastle:bcpg',
  ],
  visibility = ['PUBLIC'],
)

java_sources(
  name = 'server-src',
  srcs = SRCS + RESOURCES,
  visibility = ['PUBLIC'],
)

TESTUTIL = glob(['src/test/java/com/google/gerrit/testutil/**/*.java'])
java_library(
  name = 'testutil',
  srcs = TESTUTIL,
  deps = [
    ':server',
    '//gerrit-common:server',
    '//gerrit-cache-h2:cache-h2',
    '//gerrit-lucene:lucene',
    '//gerrit-reviewdb:client',
    '//gerrit-reviewdb:server',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:h2',
    '//lib:junit',
    '//lib/guice:guice',
    '//lib/guice:guice-servlet',
    '//lib/jgit:jgit',
    '//lib/jgit:junit',
  ],
  visibility = ['PUBLIC'],
)

PROLOG_TEST_CASE = [
  'src/test/java/com/google/gerrit/rules/PrologTestCase.java',
]
PROLOG_TESTS = glob(
  ['src/test/java/com/google/gerrit/rules/**/*.java'],
  excludes = PROLOG_TEST_CASE,
)

java_library(
  name = 'prolog_test_case',
  srcs = PROLOG_TEST_CASE,
  deps = [
    ':server',
    '//lib:junit',
    '//lib/guice:guice',
    '//lib/prolog:prolog-cafe',
  ],
  export_deps = True,
)

java_test(
  name = 'prolog_tests',
  srcs = PROLOG_TESTS,
  resources = glob(['src/test/resources/com/google/gerrit/rules/**/*']),
  deps = [
    ':prolog_test_case',
    '//gerrit-server/src/main/prolog:common',
  ],
)

java_test(
  name = 'server_tests',
  srcs = glob(
    ['src/test/java/**/*.java'],
    excludes = TESTUTIL + PROLOG_TESTS + PROLOG_TEST_CASE
  ),
  deps = [
    ':server',
    ':testutil',
    '//gerrit-antlr:query_exception',
    '//gerrit-antlr:query_parser',
    '//gerrit-common:server',
    '//gerrit-extension-api:api',
    '//gerrit-reviewdb:server',
    '//lib:easymock',
    '//lib:guava',
    '//lib:gwtorm',
    '//lib:junit',
    '//lib/antlr:java_runtime',
    '//lib/guice:guice',
    '//lib/jgit:jgit',
    '//lib/jgit:junit',
    '//lib/joda:joda-time',
    '//lib/prolog:prolog-cafe',
  ],
  source_under_test = [':server'],
)
