blob: 1ecc55dc518dbbfb669626640385da105f9c1551 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2011, 2013 Oracle and/or its affiliates. All rights reserved.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
* which accompanies this distribution.
* The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
* and the Eclipse Distribution License is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* Contributors:
* Mike Norman - April 21, 2010
* fix for bug 309002
******************************************************************************/
package dbws.testing.bindingmodel;
//javase imports
//java eXtension imports
import javax.wsdl.WSDLException;
//JUnit4 imports
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.assertTrue;
//EclipseLink imports
import org.eclipse.persistence.internal.xr.QueryOperation;
import org.eclipse.persistence.internal.xr.SQLQueryHandler;
//domain-specific (test) imports
import dbws.testing.DBWSTestSuite;
public class BindingModelTestSuite extends DBWSTestSuite {
static final String OPERATION = "numLogXml";
static final String GROUP_BY_CLAUSE =
"group by to_char(data, 'HH24') order by to_char(data, 'HH24') asc";
@BeforeClass
public static void setUp() throws WSDLException {
DBWS_BUILDER_XML_USERNAME =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<dbws-builder xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" +
"<properties>" +
"<property name=\"projectName\">bindingmodel</property>" +
"<property name=\"logLevel\">off</property>" +
"<property name=\"username\">";
DBWS_BUILDER_XML_PASSWORD =
"</property><property name=\"password\">";
DBWS_BUILDER_XML_URL =
"</property><property name=\"url\">";
DBWS_BUILDER_XML_DRIVER =
"</property><property name=\"driver\">";
DBWS_BUILDER_XML_PLATFORM =
"</property><property name=\"platformClassname\">";
DBWS_BUILDER_XML_MAIN =
"</property>" +
"</properties>" +
"<sql " +
"name=\"" + OPERATION + "\" " +
"simpleXMLFormatTag=\"logXmlResult\" " +
"xmlTag=\"numLogXml\" " +
">" +
"<text><![CDATA[select to_char(data, 'HH24') as \"ora\", count(*) as \"num\" from " +
"log_xml where trunc(data) = to_date(?, 'YYYY-MM-DD') and tipo = ? " +
GROUP_BY_CLAUSE + "]]></text>" +
"<binding name=\"data\" type=\"xsd:string\"/>" +
"<binding name=\"tipo\" type=\"xsd:string\"/>" +
"</sql>" +
"</dbws-builder>";
builder = null;
DBWSTestSuite.setUp(".");
}
@Test
public void checkParsedSqlText() {
QueryOperation queryOperation =
(QueryOperation)builder.getXrServiceModel().getOperation(OPERATION);
SQLQueryHandler sqlQueryHandler = (SQLQueryHandler)queryOperation.getQueryHandler();
String sqlString = sqlQueryHandler.getSqlString();
assertTrue("parse SQL text does not contain GROUP BY clause",
sqlString.contains(GROUP_BY_CLAUSE));
}
}