Package mondrian.rolap.aggmatcher

Source Code of mondrian.rolap.aggmatcher.AggTableTestCase

/*
* This software is subject to the terms of the Eclipse Public License v1.0
* Agreement, available at the following URL:
* http://www.eclipse.org/legal/epl-v10.html.
* You must accept the terms of that agreement to use this software.
*
* Copyright (c) 2002-2013 Pentaho Corporation..  All rights reserved.
*/

package mondrian.rolap.aggmatcher;

import mondrian.olap.MondrianProperties;
import mondrian.test.loader.CsvDBTestCase;

/**
* This abstract class can be used as the basis for writing aggregate table
* test in the "testsrc/main/mondrian/rolap/aggmatcher" directory. Taken care
* of is the setting of the Caching and Aggregate Read/Use properties and
* the reloading of the aggregate tables after the CSV tables are loaded.
* The particular cube definition and CSV file to use are abstract methods.
*
* @author <a>Richard M. Emberson</a>
*/
public abstract class AggTableTestCase extends CsvDBTestCase {

    private static final String DIRECTORY =
                            "testsrc/main/mondrian/rolap/aggmatcher";

    public AggTableTestCase() {
        super();
    }
    public AggTableTestCase(String name) {
        super(name);
    }

    protected void setUp() throws Exception {
        // Schema needs to be flushed before DBLoader is created is super.setUp,
        // otherwise AggTableManager can end up loading an old JdbcSchema
        getConnection().getCacheControl(null).flushSchemaCache();

        super.setUp();

        // store current property values
        MondrianProperties props = MondrianProperties.instance();

        // turn off caching
        propSaver.set(
            props.DisableCaching,
            true);
        propSaver.set(
            props.UseAggregates,
            true);
        propSaver.set(
            props.ReadAggregates,
            false);
        propSaver.set(
            props.ReadAggregates,
            true);
    }

    protected String getDirectoryName() {
        return DIRECTORY;
    }
}

// End AggTableTestCase.java
TOP

Related Classes of mondrian.rolap.aggmatcher.AggTableTestCase

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.