Package com.javaeye.jert.service.test

Source Code of com.javaeye.jert.service.test.ReportDefinitionServiceTest

package com.javaeye.jert.service.test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.javaeye.jert.domain.Database;
import com.javaeye.jert.domain.ParameterDefinition;
import com.javaeye.jert.domain.ReportDefinition;
import com.javaeye.jert.domain.query.QueryBuilder;
import com.javaeye.jert.service.DatabaseService;
import com.javaeye.jert.service.ReportDefinitionService;

/**
* @author Quake Wang
* @since 2004-12-22
* @version $Revision: 1.5 $
*/
public class ReportDefinitionServiceTest extends TestService {
    private ReportDefinitionService service;

    protected ApplicationContext getContext() {
        return new ClassPathXmlApplicationContext("com/javaeye/jert/service/test/ReportDefinitionServiceTest.xml");
    }

    protected void setUp() throws Exception {
        super.setUp();
        service = (ReportDefinitionService) context.getBean("reportDefinitionService");
    }

    public void testCRUD() {
        Database db = new Database();
        ((DatabaseService) context.getBean("databaseService")).createDatabase(db);

        ReportDefinition rd = new ReportDefinition();
        rd.setDatabase(db);
        rd.setName("test report one");
        rd.setSql("select * from user");
        rd.setQueryType(QueryBuilder.QUERY_TYPE_STATIC);

        service.createReportDefinition(rd);
        ReportDefinition stored = service.getReportDefinition(rd.getId());
        assertEquals("test report one", stored.getName());
        assertEquals("select * from user", stored.getSql());

        stored.setName("test report one new");
        service.updateReportDefinition(stored);

        stored = service.getReportDefinition(rd.getId());
        assertEquals("test report one new", stored.getName());

        service.deleteReportDefinition(stored);
        assertNull(service.getReportDefinition(rd.getId()));
    }

    public void testDefaultParameterDefinition() {
        Database db = new Database();
        ((DatabaseService) context.getBean("databaseService")).createDatabase(db);

        ReportDefinition rd = new ReportDefinition();
        rd.setDatabase(db);
        rd.setName("test report one");
        rd.setSql("select * from user where name = #name#");
        rd.setQueryType(QueryBuilder.QUERY_TYPE_SIMPLE_PARAMETER);
        service.createReportDefinition(rd);

        ReportDefinition stored = service.getReportDefinition(rd.getId());
        assertEquals(1, stored.getParameterDefinitions().size());
        assertEquals("name", ((ParameterDefinition) stored.getParameterDefinitions().get(0)).getName());
       
        rd.setSql("select * from user where age > #age#");
        service.updateReportDefinition(stored);
        assertEquals(1, stored.getParameterDefinitions().size());
        assertEquals("age", ((ParameterDefinition) stored.getParameterDefinitions().get(0)).getName());
    }

}
TOP

Related Classes of com.javaeye.jert.service.test.ReportDefinitionServiceTest

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.