Coder Social home page Coder Social logo

debugging-support-for-other-languages-tck's Introduction

Jakarta Debugging Support for Other Languages TCK

The TCK provides the VerifySMAP utility which is used to validate the SMAP generated by the product being tested.

The TCK does not provide the input files (.smap or .class) which need to be generated by the product being tested.

Build Instructions

Tools Required:

  • JDK 8+
  • Apache Ant 1.10.1+

Steps for building TCK bundle:

  1. Set the environment variables:

     export JAVA_HOME=<JAVA_INSTALL_DIR>
     export ANT_HOME=<ANT_INSTALL_DIR>
     export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
    
  2. Run the ant command

     ant clean dist
    
  3. The generated bundle dsol-tck-<version>.zip can be found under the dist directory.

Running the TCK against Glassfish 6.0+

Tools Required:

  • JDK 8+
  • Apache Ant 1.10.1+
  • Glassfish 6.0+

Steps for Testing GlassFish:

  1. Set the following init parameters for JSP page compiler and execution servlet in domains/domain1/config/default-web.xml.

     <servlet>
       <servlet-name>jsp</servlet-name>
       <servlet-class>
          org.apache.jasper.servlet.JspServlet
       </servlet-class>
       ...
       <init-param>
         <param-name>keepgenerated</param-name>
         <param-value>true</param-value>
       </init-param>
       <init-param>
         <param-name>dumpSmap</param-name>
         <param-value>true</param-value>
       </init-param>
       ...
     </servlet>
    
  2. Start GlassFish server.

  3. Create a sample web module by packaging a sample JSP and deploy the web module.

  4. Accessing the JSP to get the generated .smap file under the directory domains/domain1/generated/jsp/<web app name>/org/apache/jsp.

  5. Run the smap verifier supplied with TCK

     java VerifySMAP domains/domain1/generated/jsp/<web app name>/org/apache/jsp/Hello_jsp.class.smap
    

    Assertion : The output of the java program should report that the .smap file is correctly formatted one. Something like below:

     <GlassFish Home>/domains/domain1/generated/jsp/testclient/org/apache/jsp/Hello_jsp.class.smap
     is a correctly formatted SMAP
    

Steps for Negative Testing :

  1. Edit the generated .smap file such that the syntax becomes invalid as per the specification.

  2. Run VerifySMAP with the invalid .smap file.

    Assertion : The output of the java program should report that the .smap file is incorrectly formatted one. Something like below:

     Assertion #1 failed - SMAP syntax error
     <GlassFish Home>/domains/domain1/generated/jsp/testclient/org/apache/jsp/Hello_jsp.class.smap:14: unexpected end of SMAP
     Exception in thread "main" VerifySMAP$AssertionViolationException: assertion #1 failed - SMAP syntax error
    

debugging-support-for-other-languages-tck's People

Contributors

alwin-joseph avatar ankitoracle avatar bhatpmk avatar bshannon avatar edbratt avatar gurunrao avatar markt-asf avatar rohitkumarjain avatar scottmarlow avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

debugging-support-for-other-languages-tck's Issues

Prepare for Jakarta EE 9

Check namespace pointer to org.jcp in testapp/testapp/web-inf/web.xml
Verify no uses of javax
stage a milestone release

Rename TCK bundle extract & LICENSE file

  1. The EFTL TCK has the license name as LICENSE_EFTL.md . This should appear as LICENSE.md in the EFTL bundle with EFTL license in it.

  2. The TCK bundle extract folder is named debugging-tck-2.0.0 (with the version appended). This should appear as debugging-tck (without the version) .

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.