Repository: incubator-taverna-language
Updated Branches:
  refs/heads/master 2658cc479 -> e50826e64


Test bag-of-bags-manifest.json

.. several of these fail for some reason.


Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/commit/3c9d0a95
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/tree/3c9d0a95
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/diff/3c9d0a95

Branch: refs/heads/master
Commit: 3c9d0a95bc3c3f29f17d724216f76ba2044c1886
Parents: ad352d1
Author: Stian Soiland-Reyes <[email protected]>
Authored: Thu May 10 17:38:56 2018 +0100
Committer: Stian Soiland-Reyes <[email protected]>
Committed: Thu May 10 17:40:11 2018 +0100

----------------------------------------------------------------------
 .../robundle/manifest/TestRDFToManifest.java    | 72 +++++++++++++++++++-
 1 file changed, 70 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/3c9d0a95/taverna-robundle/src/test/java/org/apache/taverna/robundle/manifest/TestRDFToManifest.java
----------------------------------------------------------------------
diff --git 
a/taverna-robundle/src/test/java/org/apache/taverna/robundle/manifest/TestRDFToManifest.java
 
b/taverna-robundle/src/test/java/org/apache/taverna/robundle/manifest/TestRDFToManifest.java
index 4123ce2..13e099e 100644
--- 
a/taverna-robundle/src/test/java/org/apache/taverna/robundle/manifest/TestRDFToManifest.java
+++ 
b/taverna-robundle/src/test/java/org/apache/taverna/robundle/manifest/TestRDFToManifest.java
@@ -1,5 +1,7 @@
 package org.apache.taverna.robundle.manifest;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotEquals;
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -18,12 +20,17 @@ package org.apache.taverna.robundle.manifest;
  * specific language governing permissions and limitations
  * under the License.
  */
-
-
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
 
+import java.io.InputStream;
+import java.net.URI;
+import java.util.Arrays;
+import java.util.List;
 import java.util.Map;
 
+import org.apache.taverna.robundle.Bundle;
+import org.apache.taverna.robundle.Bundles;
 import org.junit.Test;
 
 import com.github.jsonldjava.core.DocumentLoader;
@@ -48,4 +55,65 @@ public class TestRDFToManifest {
                                retrievedFrom);
 
        }
+       
+       @Test
+       public void multipleConformsTo() throws Exception {
+               try (Bundle ro = Bundles.createBundle();
+                        InputStream json = 
getClass().getResourceAsStream("/bag-of-bags-manifest.json")) {
+                       // Make a new, empty manifest we can inspect
+                       assertNotNull("Can't find bag-of-bags-manifest.json", 
json);
+                       Manifest manifest = new Manifest(ro);
+                       
+                       // NOTE: Uses RO-BagIt folder metadata/ instead of .ro/
+                       URI baseURI = 
ro.getPath("metadata/manifest.json").toUri();                     
+                       new RDFToManifest().readTo(json, manifest, baseURI);
+
+                       // Check basic metadata
+                       
assertEquals(URI.create("https://github.com/ini-bdds/bdbag";),
+                                       manifest.getCreatedBy().getUri());
+                       assertEquals(1, manifest.getAuthoredBy().size());
+                       Agent author = manifest.getAuthoredBy().get(0);
+                       assertEquals("Stian Soiland-Reyes", 
+                                       author.getName());
+                       assertEquals(URI.create("mbox:[email protected]"), 
+                                       author.getUri());
+                       // FIXME: Why is ORCID not picked up?
+//                     
assertEquals(URI.create("https://orcid.org/0000-0001-9842-9718";),
+//                                     author.getOrcid());
+
+                       // FIXME: Why are annotations not picked up?
+//                     assertEquals(1, manifest.getAnnotations().size());
+//                     PathAnnotation ann = manifest.getAnnotations().get(0);
+//                     assertEquals(ro.getRoot().toUri(),
+//                                     ann.getAbout());
+//                     assertEquals(ro.getPath("data/README").toUri(), 
ann.getContent());
+                       
+                       // Now let's check aggregations
+                       assertEquals(1, manifest.getAggregates().size());
+                       // As aggregates order is not preserved, for simplicity 
this test
+                       // has only one aggregation                     
+                       PathMetadata a1 = manifest.getAggregates().get(0);
+                       URI uri = 
URI.create("http://n2t.net/ark:/57799/b90h3c";);
+                       assertEquals(uri, a1.getUri());
+                       assertEquals(a1, manifest.getAggregation(uri));
+                       
+                       // FIXME: More than one?
+                       
assertEquals(URI.create("https://w3id.org/ro/bagit/profile";),
+                                       a1.getConformsTo());
+//                     
assertEquals(URI.create("https://tools.ietf.org/html/draft-kunze-bagit-14";),
+//                                     a1.getConformsTo());
+
+                       
+                       Proxy bundledAs = a1.getBundledAs();
+                       // FIXME: Why is there no bundledAs?
+//                     assertNotNull(bundledAs);
+//                     assertEquals(ro.getPath("data"), 
+//                                     bundledAs.getFolder());                 
+//                     assertEquals("bag1.zip", 
a1.getBundledAs().getFilename());
+
+                       // TODO: Enable fetching based on bundledAs URI?
+                       //ro.getRoot().resolve("data/bag1.zip")
+                       
+               }                               
+       }
 }

Reply via email to