protected void validateTransformState()

in java/src/org/apache/qetest/xalanj2/TransformStateTestlet.java [169:239]


    protected void validateTransformState(TransformState ts, String event, String value)
    {
        if(null == transformState)
        {
            // We should never have a null TransformState since the 
            //  transformer should have always filled it in
            logger.checkErr("validateTransformState(ts-NULL!, " + event + ")=" + value);
            return;
        }
        logTransformStateDump(logger, Logger.INFOMSG, ts, event, value);

        // Cheap-o validation: only validate items on column 99
        if (99 == ts.getCurrentElement().getColumnNumber())
        {
            int line = ts.getCurrentElement().getLineNumber();
            // Get cheap-o validation from the datalet for this line..
            String exp = (String)tsDatalet.validate99.get(line + ".current.name");
            // .. If there's an expected value for this line's property..
            if (null != exp)
                // .. Then check if it's equal and report pass/fail
                checkString(ts.getCurrentTemplate().getName().toString(), exp, 
                            "Validate L" + line + "C99 .current.name");

            exp = (String)tsDatalet.validate99.get(line + ".current.match");
            if (null != exp)
                checkString(ts.getCurrentTemplate().getMatch().getPatternString(), exp, 
                            "Validate L" + line + "C99 .current.match");

            exp = (String)tsDatalet.validate99.get(line + ".current.mode");
            if (null != exp)
                checkString(ts.getCurrentTemplate().getMode().toString(), exp, 
                            "Validate L" + line + "C99 .current.mode");


            exp = (String)tsDatalet.validate99.get(line + ".matched.name");
            if (null != exp)
                checkString(ts.getMatchedTemplate().getName().toString(), exp, 
                            "Validate L" + line + "C99 .matched.name");

            exp = (String)tsDatalet.validate99.get(line + ".matched.match");
            if (null != exp)
                checkString(ts.getMatchedTemplate().getMatch().getPatternString(), exp, 
                            "Validate L" + line + "C99 .matched.match");

            exp = (String)tsDatalet.validate99.get(line + ".matched.mode");
            if (null != exp)
                checkString(ts.getMatchedTemplate().getMode().toString(), exp, 
                            "Validate L" + line + "C99 .matched.mode");
        }

/***********************************************
// Comment out validation using ExpectedObjects since they hang 28-Jun-01 -sc
        // See if we have a matching expected state for this event
        //@todo use event string as part of hashkey!!!
        String marker = ExpectedTransformState.getHashKey(ts);
        // Add on the event as well; see ExpectedTransformState.getHashKey()
        //  for why we have to do this separately
        marker += ExpectedTransformState.SEP + event;
        ExpectedTransformState ets = (ExpectedTransformState)tsDatalet.expectedTransformStates.get(marker);
        logger.logMsg(Logger.TRACEMSG, "ETS-HACK:" + marker + "=" + ets);
        if (null != ets)
        {
            // Ask it to validate itself as needed
            synchronized(ets) // voodoo: attempt to solve hang problems
            {
                ExpectedObjectCheckService.check(logger, ts, ets, "Compare ExpectedTransformState of " + marker);
            }
        }
// Comment out validation using ExpectedObjects since they hang 28-Jun-01 -sc
***********************************************/
    }