###############################################################################
# Copyright (c) 2005, 2006 Eteration A.S. and Gorkem Ercan.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors: Gorkem Ercan - initial API and implementation
###############################################################################
source.genericServerTests.jar = src/
output.genericServerTests.jar = bin/
bin.includes = plugin.xml,\
               test.xml,\
               genericServerTests.jar,\
               about.html,\
               META-INF/,\
               defs/,\
               plugin.properties
src.includes = test.xml,\
               plugin.xml,\
               build.properties
               
