<?xml version="1.0" encoding="UTF-8" ?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
  -->

<test-suite suite-name="basetests"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/test-suite.xsd">
    <test-group case-name="basetests">
        <junit-test-suite class-name="org.ofbiz.base.lang.test.ComparableRangeTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.test.IndentingWriterTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.test.ObjectTypeTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.test.UtilObjectTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.string.test.FlexibleStringExpanderTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.collections.test.FlexibleMapAccessorTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.test.TimeDurationTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.cache.test.UtilCacheTests"/>
        <junit-test-suite class-name="org.ofbiz.base.conversion.test.DateTimeTests"/>
        <junit-test-suite class-name="org.ofbiz.base.conversion.test.MiscTests"/>
        <junit-test-suite class-name="org.ofbiz.base.concurrent.test.DependencyPoolTests"/>
        <junit-test-suite class-name="org.ofbiz.base.json.test.JSONTests"/>
        <!--junit-test-suite class-name="org.ofbiz.base.util.test.UtilIOTests"/-->
        <junit-test-suite class-name="org.ofbiz.base.test.BaseUnitTests"/>
        <junit-test-suite class-name="org.ofbiz.base.util.test.UtilPropertiesTests"/>
    </test-group>
</test-suite>
