+++ /dev/null
-/*\r
- * Copyright (C) 2007-2012 Mathieu Baudier\r
- *\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- */\r
-package org.argeo.slc.jcr.dao;\r
-\r
-import java.io.ByteArrayOutputStream;\r
-import java.util.SortedMap;\r
-import java.util.TreeMap;\r
-import java.util.UUID;\r
-\r
-import javax.jcr.Session;\r
-\r
-import org.apache.commons.logging.Log;\r
-import org.apache.commons.logging.LogFactory;\r
-import org.argeo.slc.core.attachment.SimpleAttachment;\r
-import org.argeo.slc.core.structure.tree.TreeSPath;\r
-import org.argeo.slc.core.test.SimpleResultPart;\r
-import org.argeo.slc.core.test.tree.TreeTestResult;\r
-import org.argeo.slc.dao.test.tree.TreeTestResultDao;\r
-import org.argeo.slc.unit.AbstractSpringTestCase;\r
-import org.argeo.slc.unit.test.tree.TreeTestResultTestUtils;\r
-import org.argeo.slc.unit.test.tree.UnitTestTreeUtil;\r
-\r
-public class TreeTestResultDaoJcrTest extends AbstractSpringTestCase {\r
- private final static Log log = LogFactory\r
- .getLog(TreeTestResultDaoJcrTest.class);\r
-\r
- private TreeTestResultDao ttrDao;\r
-\r
- @Override\r
- protected void setUp() throws Exception {\r
- super.setUp();\r
- ttrDao = getBean(TreeTestResultDao.class);\r
- log.debug("Context Initialized");\r
- }\r
-\r
- public void testExportXml() throws Exception {\r
- TreeTestResult ttr = TreeTestResultTestUtils\r
- .createComplexeTreeTestResult();\r
- ttrDao.create(ttr);\r
-\r
- Session session = getBean(Session.class);\r
- ByteArrayOutputStream out = new ByteArrayOutputStream();\r
- session.exportDocumentView("/slc", out, true, false);\r
- log.debug("\n\n"+new String(out.toByteArray())+"\n\n");\r
- }\r
-\r
- public void testCreate() {\r
- TreeTestResult ttr = TreeTestResultTestUtils\r
- .createComplexeTreeTestResult();\r
- ttrDao.create(ttr);\r
- TreeTestResult ttrPersisted = ttrDao.getTestResult(ttr.getUuid());\r
- compareTestResult(ttr, ttrPersisted);\r
- UnitTestTreeUtil.assertTreeTestResult(ttr, ttrPersisted);\r
- }\r
-\r
- public void testUpdate() {\r
- TreeTestResult ttr = TreeTestResultTestUtils\r
- .createCompleteTreeTestResult();\r
- ttrDao.create(ttr);\r
- SimpleAttachment sa = new SimpleAttachment(\r
- UUID.randomUUID().toString(), "A new Attachment", "UTF8");\r
- // test if we can attach a new doc\r
- ttrDao.addAttachment(ttr.getUuid(), sa);\r
-\r
- // test if an existing doc is not added 2 times.\r
- TreeTestResult ttr2 = ttrDao.getTestResult(ttr.getUuid());\r
- ttrDao.addAttachment(ttr.getUuid(), sa);\r
- TreeTestResult ttr3 = ttrDao.getTestResult(ttr.getUuid());\r
- assertEquals(ttr3.getAttachments().size(), ttr2.getAttachments().size());\r
-\r
- // Test Add ResultPart\r
- // Initializing context\r
- SimpleResultPart resultPart = TreeTestResultTestUtils\r
- .createSimpleResultPartFailed();\r
- TreeSPath path = new TreeSPath("/test1");\r
- ttrDao.addResultPart(ttr.getUuid(), path, resultPart, null);\r
-\r
- // TestAdd Attribute\r
- SortedMap<String, String> newAtt = new TreeMap<String, String>();\r
- newAtt.put("NewTestCase", "NonSortedView");\r
- newAtt.put("NewTestCaseType", "csvdiff");\r
- ttrDao.updateAttributes(ttr.getUuid(), newAtt);\r
-\r
- ttr2 = ttrDao.getTestResult(ttr.getUuid());\r
- assertEquals(ttr.getAttributes().size() + 2, ttr2.getAttributes()\r
- .size());\r
- assertEquals("csvdiff", ttr2.getAttributes().get("NewTestCaseType"));\r
-\r
- // Test update existing Attribute\r
- ttrDao.updateAttributes(ttr.getUuid(), newAtt);\r
- assertEquals(ttr.getAttributes().size() + 2, ttr2.getAttributes()\r
- .size());\r
-\r
- }\r
-\r
- public void testResultPartOnly() {\r
-\r
- TreeTestResult ttr = TreeTestResultTestUtils\r
- .createComplexeTreeTestResult();\r
-\r
- SimpleResultPart resultPart = TreeTestResultTestUtils\r
- .createSimpleResultPartPassed();\r
- ttr.addResultPart(resultPart);\r
- ttrDao.create(ttr);\r
- TreeTestResult ttr2;\r
- ttr2 = ttrDao.getTestResult(ttr.getUuid());\r
- assertEquals(ttr.getResultParts().size(), ttr2.getResultParts().size());\r
- }\r
-\r
- public static void compareTestResult(final TreeTestResult t1,\r
- final TreeTestResult t2) {\r
-\r
- assertEquals(t1.getUuid(), t2.getUuid());\r
- assertEquals(t1.getCloseDate(), t2.getCloseDate());\r
- assertEquals(t1.getAttachments().size(), t2.getAttachments().size());\r
- assertEquals(t1.getAttributes().size(), t2.getAttributes().size());\r
- assertEquals(t1.getElements().size(), t2.getElements().size());\r
- // resultParts\r
- assertEquals(t1.getResultParts().size(), t2.getResultParts().size());\r
-\r
- // TODO Add more check.\r
- }\r
-\r
-}\r