Package com.fourspaces.couchdb.test

Source Code of com.fourspaces.couchdb.test.DocumentTest

package com.fourspaces.couchdb.test;


import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;

import java.util.Date;

import net.sf.json.JSONObject;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.fourspaces.couchdb.Database;
import com.fourspaces.couchdb.Document;
import com.fourspaces.couchdb.Session;
import com.fourspaces.couchdb.View;
import com.fourspaces.couchdb.ViewResults;

public class DocumentTest {
  Log log = LogFactory.getLog(getClass());
 
  Session sess = TestSession.getTestSession();
  Database foo;
 
  @Before public void createTestDB() throws Exception {
    foo=sess.createDatabase("foo");
    foo.saveDocument(new Document(),"foo");
    foo.saveDocument(new Document());
    foo.saveDocument(new Document());
    foo.saveDocument(new Document());
    foo.saveDocument(new Document());

  }
 
 
  @Test
  public void update() throws Exception {
    JSONObject obj = new JSONObject();
    obj.put("foo","bar");
    obj.accumulate("array", "ar1");
    obj.accumulate("array", "ar2");
    obj.accumulate("array", "ar3");
    Document doc = new Document(obj);
    foo.saveDocument(doc,"foodoc");

    Document foodoc = foo.getDocumentWithRevisions("foodoc");

    System.out.println(foodoc.getRev());
    String oldId = foodoc.getId();
    String oldRev = foodoc.getRev();
    assertEquals(foodoc.getRevisions().length,1);

    foodoc.put("now", new Date());
    foo.saveDocument(foodoc);
    //System.out.println(foodoc.getRev());
    assertEquals(oldId,foodoc.getId());
    assertFalse(oldRev.equals(foodoc.getRev()));

    foodoc = foo.getDocumentWithRevisions("foodoc");
    //System.out.println(Arrays.toString(foodoc.getRevisions()));
    assertEquals(foodoc.getRevisions().length,2);
   
  }
 
  @Test public void get() throws Exception
    JSONObject obj = new JSONObject();
    obj.put("foo","bar");
    obj.accumulate("array", "ar1");
    obj.accumulate("array", "ar2");
    obj.accumulate("array", "ar3");
    Document doc = new Document(obj);
    foo.saveDocument(doc,"foodoc");
   
    assertNotNull(doc.getId());
    assertNotNull(doc.getRev());
   
    Document foodoc = foo.getDocument("foodoc");
    assertEquals(foodoc.get("foo"),"bar");
   
    foo.deleteDocument(foodoc);
    foodoc = foo.getDocument("foodoc");
    assertNull(foodoc);
   
  }

  @Test
  public void list1() {
   
    ViewResults vr = foo.getAllDocumentsWithCount(1);
    assertEquals(vr.getResults().size(),1 );
  }

 
  @After
  public void deleteAll() {
    sess.deleteDatabase("foo");
  }
 
  @Test public void bulkSave() throws Exception {
   
    Document[] docs = new Document[3];
    docs[0] = new Document();
    docs[1] = new Document();
    docs[2] = new Document();
   
    docs[0].accumulate("foo", "bar1" + System.currentTimeMillis());
    docs[1].accumulate("foo", "bar2" + System.currentTimeMillis());
    docs[2].accumulate("foo", "bar3" + System.currentTimeMillis());
   
     foo.bulkSaveDocuments(docs);
    
     for (Document d : docs) {
       boolean deleted = foo.deleteDocument(d);
      assertEquals(deleted, true);
     }
    
   
   
   
  }
   

}
TOP

Related Classes of com.fourspaces.couchdb.test.DocumentTest

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.