Package com.google.enterprise.connector.dctm.dctmdfcwrap

Source Code of com.google.enterprise.connector.dctm.dctmdfcwrap.DmSysObjectATest

// Copyright (C) 2006-2009 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package com.google.enterprise.connector.dctm.dctmdfcwrap;

import com.google.enterprise.connector.dctm.DmInitialize;
import com.google.enterprise.connector.dctm.dfcwrap.IClient;
import com.google.enterprise.connector.dctm.dfcwrap.IClientX;
import com.google.enterprise.connector.dctm.dfcwrap.IFormat;
import com.google.enterprise.connector.dctm.dfcwrap.ILoginInfo;
import com.google.enterprise.connector.dctm.dfcwrap.ISession;
import com.google.enterprise.connector.dctm.dfcwrap.ISessionManager;
import com.google.enterprise.connector.dctm.dfcwrap.ISysObject;
import com.google.enterprise.connector.spi.RepositoryException;

import com.documentum.fc.common.DfException;

import junit.framework.Assert;
import junit.framework.TestCase;

import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class DmSysObjectATest extends TestCase {
  ISysObject object;

  ISession session = null;

  ISessionManager sessionManager;

  DmDocument document;

  @Override
  protected void setUp() throws Exception {
    super.setUp();
    IClientX dctmClientX;
    IClient localClient;

    ILoginInfo loginInfo;
    dctmClientX = new DmClientX();
    localClient = dctmClientX.getLocalClient();
    sessionManager = localClient.newSessionManager();
    loginInfo = dctmClientX.getLoginInfo();
    loginInfo.setUser(DmInitialize.DM_LOGIN_OK1);
    loginInfo.setPassword(DmInitialize.DM_PWD_OK1);
    sessionManager.setIdentity(DmInitialize.DM_DOCBASE, loginInfo);

    session = sessionManager.getSession(DmInitialize.DM_DOCBASE);
    object =
        (ISysObject) session.getObject(dctmClientX.getId(DmInitialize.DM_ID1));
    document = createNewDocument(session);
  }

  public void testGetFormat() throws RepositoryException {
    try {
      IFormat format = object.getFormat();
      Assert.assertNotNull(format);
    } finally {
      if (session != null) {
        sessionManager.release(session);
      }
    }
  }

  public void testGetContentSize() throws RepositoryException {
    try {
      long size = object.getContentSize();
      assertTrue(size > 0);
    } finally {
      if (session != null) {
        sessionManager.release(session);
      }
    }
  }

  public void testGetContent() throws DfException, RepositoryException,
      IOException {
    try {
      ByteArrayInputStream content = ((DmSysObject) document)
          .getContent();
      Assert.assertNotNull(content);
    } finally {
      if (session != null) {
        sessionManager.release(session);
      }
    }
  }

  public void testGetACLDomain() throws DfException, RepositoryException,
      IOException {
    String ACLDomain = ((DmSysObject) document).getACLDomain();
    Assert.assertNotNull(ACLDomain);
    Assert.assertEquals(ACLDomain, DmInitialize.DM_LOGIN_OK1);
  }

  public void testGetACLName() throws DfException, RepositoryException,
      IOException {
    String ACLName = ((DmSysObject) document).getACLName();
    Assert.assertNotNull(ACLName);
  }

  private DmDocument createNewDocument(ISession session)
      throws RepositoryException, IOException {
    document = ((DmSession) session).newObject();
    File f = new File("DocumentCreationTest.txt");
    ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(f));
    oos.writeObject("Foundation Course Content Outline Overview Concepts The mission of Google and Google Enterprise");
    document.setFileEx("DocumentCreationTest.txt", "text");
    document.setObjectName("Document creation test");
    document.save();
    oos.close();
    f.delete();
    return document;
  }

  public static void deleteDocument(DmDocument document)
      throws RepositoryException {
    document.destroyAllVersions();
  }

  protected void tearDown() throws Exception {
    super.tearDown();
    deleteDocument(document);
  }
}
TOP

Related Classes of com.google.enterprise.connector.dctm.dctmdfcwrap.DmSysObjectATest

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.