Package org.jostraca.directive.test

Source Code of org.jostraca.directive.test.IncludeDirectiveTest$SimpleIncludeDirective

package org.jostraca.directive.test;

import java.util.*;

import org.jostraca.Generator;
import org.jostraca.Template;
import org.jostraca.VirtualTemplate;
import org.jostraca.directive.DirectiveException;
import org.jostraca.directive.IncludeDirectiveSupport;
import org.jostraca.test.VirtualTest;
import org.jostraca.util.PropertySet;

import junit.framework.TestCase;
import junit.framework.TestSuite;
import junit.textui.TestRunner;

public class IncludeDirectiveTest extends TestCase {

  // test framework
 
  public IncludeDirectiveTest( String pName ) {
    super( pName );
  }

  public static TestSuite suite() {
    return new TestSuite( IncludeDirectiveTest.class );
  }

  public static void main( String[] pArgs ) {
    TestRunner.run( suite() );
  }
 
 
  // tests
 
 
  public static final class SimpleIncludeDirective extends IncludeDirectiveSupport {
    protected String loadIncludeSource(String pPath, List pArguments, Template pTemplate) throws DirectiveException {
      return "include <%='this'%>";
    }
  }

 
  public void testSimple() throws Exception {
    PropertySet ps = new PropertySet();
    ps.set("jostraca.standard.Directives", "SectionDirective, InitDirective, OneLineDirective, CollapseWhiteSpaceDirective, org.jostraca.directive.test.IncludeDirectiveTest$SimpleIncludeDirective");
    Generator g = VirtualTest.makeVirtualGenerator(ps);
   
    String src =
      "<% @conf main.JostracaVersion = 0.4 \n main.TemplateScript = javascript %>"
      +"Hi <% @"+IncludeDirectiveSupport.NAME+" foo bar %>";
   
    Template t = new VirtualTemplate("test01.js",src);

    try {
      g.generate(t);
    }
    catch( Exception e ) {
      System.out.println("cw:"+t.getCodeWriterSource());
      throw e;
    }

    System.out.println("res:"+t.getResult());
   
    assertEquals("Hi include this",t.getResult());
  }

}
TOP

Related Classes of org.jostraca.directive.test.IncludeDirectiveTest$SimpleIncludeDirective

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.