Package org.apache.lenya.cms.task

Source Code of org.apache.lenya.cms.task.DocumentDeactivateTaskTest

/*
* <License>
* The Apache Software License
*
* Copyright (c) 2002 lenya. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
*    list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this
*    list of conditions and the following disclaimer in the documentation and/or
*    other materials provided with the distribution.
*
* 3. All advertising materials mentioning features or use of this software must
*    display the following acknowledgment: "This product includes software developed
*    by lenya (http://www.lenya.org)"
*
* 4. The name "lenya" must not be used to endorse or promote products derived from
*    this software without prior written permission. For written permission, please
*    contact contact@lenya.org
*
* 5. Products derived from this software may not be called "lenya" nor may "lenya"
*    appear in their names without prior written permission of lenya.
*
* 6. Redistributions of any form whatsoever must retain the following acknowledgment:
*    "This product includes software developed by lenya (http://www.lenya.org)"
*
* THIS SOFTWARE IS PROVIDED BY lenya "AS IS" WITHOUT ANY WARRANTY EXPRESS OR IMPLIED,
* INCLUDING THE WARRANTY OF NON-INFRINGEMENT AND THE IMPLIED WARRANTIES OF MERCHANTI-
* BILITY AND FITNESS FOR A PARTICULAR PURPOSE. lenya WILL NOT BE LIABLE FOR ANY DAMAGES
* SUFFERED BY YOU AS A RESULT OF USING THIS SOFTWARE. IN NO EVENT WILL lenya BE LIABLE
* FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR LOST PROFITS EVEN IF lenya HAS
* BEEN ADVISED OF THE POSSIBILITY OF THEIR OCCURRENCE. lenya WILL NOT BE LIABLE FOR ANY
* THIRD PARTY CLAIMS AGAINST YOU.
*
* Lenya includes software developed by the Apache Software Foundation, W3C,
* DOM4J Project, BitfluxEditor and Xopus.
* </License>
*/
package org.apache.lenya.cms.task;

import java.io.File;
import junit.framework.Test;
import junit.framework.TestSuite;
import junit.textui.TestRunner;

import org.apache.avalon.framework.parameters.Parameters;
import org.apache.lenya.cms.PublicationHelper;
import org.apache.lenya.cms.publication.Publication;
import org.apache.lenya.cms.publication.SiteTree;
import org.apache.lenya.cms.publication.SiteTreeNode;


/**
* Class for testing the task to deactivate a document.
* Extend the AntTask class.
* @author edith
*/
public class DocumentDeactivateTaskTest extends AntTaskTest {

  private long time = 0;

  /**
     * Creates a new DocumentDeactivateTaskTest object.
   * @param test The test.
   */
  public DocumentDeactivateTaskTest(String test) {
    super(test);
  }

  /**
   * Creates a test suite.
   * @return Test
   **/
  public static Test getSuite() {
    return new TestSuite(DocumentDeactivateTaskTest.class);
  }

  /**
   * The main program for the DocumentDeactivateTaskTest class
   *
   * @param args The command line arguments
   */
  public static void main(String[] args) {
    AntTaskTest.initialize(args);
    TestRunner.run(getSuite());
  }

  public static final String DOCUMENT_ID = "/tutorial";
    public static final String LANGUAGE = "en";
  public static final String AUTHORING_PATH = "content/authoring".replace('/', File.separatorChar);
  public static final String LIVE_PATH = "content/live".replace('/', File.separatorChar);
 
  /**
   * @see org.apache.lenya.cms.task.AntTaskTest#getTaskParameters()
   **/
  protected Parameters getTaskParameters() {
    Parameters parameters = super.getTaskParameters();
    parameters.setParameter("properties.node.firstdocumentid", DOCUMENT_ID);
        parameters.setParameter("properties.node.language", LANGUAGE);
    return parameters;
  }
   
  /**
   * Returns the target test.
   * @return target.
   */
  protected String getTarget() {
    return "deactivateDocument";
  }

  /** (non-Javadoc)
     * @see org.apache.lenya.cms.task.AntTaskTest#prepareTest()
     */
    protected void prepareTest() throws Exception {
    File publicationDirectory = PublicationHelper.getPublication().getDirectory();
        String publicationPath = publicationDirectory.getAbsolutePath()+ File.separator;


    // TODO generate the resources 
}

  /** (non-Javadoc)
     * @see org.apache.lenya.cms.task.AntTaskTest#evaluateTest()
     */
    protected void evaluateTest() throws Exception {
    File publicationDirectory = PublicationHelper.getPublication().getDirectory();
    String publicationPath = publicationDirectory.getAbsolutePath();
        File authoringDirectory = new File(publicationPath, AUTHORING_PATH);
    File liveDirectory = new File(publicationPath, LIVE_PATH);
       
    String filepath = DOCUMENT_ID.substring(1) + File.separator + "index_en.xml"

    File authoringDocumentFile = new File(authoringDirectory, filepath);
        System.out.println("Authoring document: " + authoringDocumentFile.getAbsolutePath());
        assertTrue(authoringDocumentFile.exists());
    File liveDocumentFile = new File(liveDirectory, filepath);
        System.out.println("Live document: " + liveDocumentFile.getAbsolutePath());
    assertFalse(liveDocumentFile.exists());

        //TODO evaluation of resources, meta, workflow
       
    SiteTree authoringSitetree = PublicationHelper.getPublication().getSiteTree(Publication.AUTHORING_AREA);
    SiteTreeNode node = authoringSitetree.getNode(DOCUMENT_ID);
    assertNotNull(node);
        System.out.println("Sitetree node with id ["+node.getId()+"] is always in authoring");
    SiteTree liveSitetree = PublicationHelper.getPublication().getSiteTree(Publication.LIVE_AREA);
    SiteTreeNode livenode = liveSitetree.getNode(DOCUMENT_ID);
    assertNull(livenode);
        System.out.println("Sitetree node for document id ["+DOCUMENT_ID+"] was deleted from the live tree");
  }
}
TOP

Related Classes of org.apache.lenya.cms.task.DocumentDeactivateTaskTest

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.