diff --git a/lib/redbox-ro-crate.js b/lib/redbox-ro-crate.js
index 0dbffcc0d231cbe37e7b5e946f4a3ae486b97f62..a0b4edc892f406c1d1eae56cbe7da70d1b9f7655 100644
--- a/lib/redbox-ro-crate.js
+++ b/lib/redbox-ro-crate.js
@@ -120,23 +120,27 @@ Remember to keep the connection to the data record
 
 
 async function rb2rocrate(options) {
-
-	const id = options['id'];
-	const datapub = options['datapub'];
-	const bagged = options['bagged'];
-	const zip = options['zip'];
-	const org = options['organisation'];
-	const owner = options['owner'];
-	const approver = options['approver'];
-	const dates = dates_default(options['dates']);
-	const prefixes = options['prefixes'] || DEFAULT_IRI_PREFS;
-
+	console.log(options);
+	options = options.data_record;
+	const id = options.project_id;
+	// console.log(id);
+	const datapub = options.data_manager //here
+	const bagged = options.description;
+	const zip = options.data_collection_method;
+	const org = options.chief_investigator;
+	const owner = options.minimum_retention_period;
+	const approver = options.data_to_destroy;
+	const dates = dates_default(options.date_to_destroy);
+	const prefixes = options.copywright_owner || DEFAULT_IRI_PREFS;
+
+	// console.log(org);
 	const organisation = { 
-		'@id': org['id'],
+		'@id': org['name'],
 		'@type': 'Organization',
-		'identifier': org['id'],
+		'identifier': org['name'],
 		'name': org['name']
 	};
+	console.log(organisation);
 
 	if( ! (organisation['@id'] && organisation['name'] ) ) {
 		throw Error("Organization must have an id and a name");
@@ -146,6 +150,7 @@ async function rb2rocrate(options) {
 	// this also makes the data manager
 
 	const contributors = make_contributors(datapub, organisation);
+	console.log(contributors);
 	var people = contributors[0];
 
 	const files = make_files(datapub);
@@ -417,7 +422,10 @@ function make_contributors(datapub, organisation) {
 		throw Error("A DataCrate has to have at least one creator");
 	}
 	const roles = { };
-	// console.log(JSON.stringify(datapub['creators']));
+	data_creator = datapub['creators'];
+	console.log(data_creator);
+	// data_creator= JSON.parse(data_creator);
+	console.log(typeof(data_creator));
 	const people = _.compact(datapub['creators'].map(c => make_person(c, organisation)));
 
 	people.map(p => { roles[p['@id']] = 'author' });
diff --git a/package-lock.json b/package-lock.json
index 710329a663c7e78b4cc9bbcaf218594286c74122..0e3d28e6109b1573d305a655c59b0817f53cfac8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -321,9 +321,9 @@
       }
     },
     "fs-extra": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.0.tgz",
-      "integrity": "sha512-EglNDLRpmaTWiD/qraZn6HREAEAHJcJOmxNEYwq6xeMKnVMAy3GUcFB+wXt2C6k4CNvB/mP1y/U3dzvKKj5OtQ==",
+      "version": "7.0.1",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
+      "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
       "requires": {
         "graceful-fs": "^4.1.2",
         "jsonfile": "^4.0.0",
diff --git a/package.json b/package.json
index 53e15e64055eb262a77b0cbafd76bdcaa975e770..ad869165dfb690dde8b590073e1f350e6314c6fb 100644
--- a/package.json
+++ b/package.json
@@ -15,7 +15,7 @@
   "repository": "https://code.research.uts.edu.au/960700/datacrate",
   "dependencies": {
     "argparse": "^1.0.10",
-    "fs-extra": "^7.0.0",
+    "fs-extra": "^7.0.1",
     "jsonld": "^1.1.0",
     "lodash": "^4.17.15",
     "ro-crate": "^1.2.12"
diff --git a/test/tdd.js b/test/tdd.js
new file mode 100644
index 0000000000000000000000000000000000000000..9ee58e95bc154ac48969566cd40dbd5654a81b3e
--- /dev/null
+++ b/test/tdd.js
@@ -0,0 +1,32 @@
+const fs= require('fs');
+const rb2ro = require('../lib/redbox-ro-crate').rb2rocrate;
+const data = require('../test_data/data_record');
+const path = '../test_data/';
+
+async function conversion(){
+    // console.log(JSON.stringify(data));
+    jsonld = await rb2ro(data);
+    console.log(jsonld);
+    // return jsonld;
+    try {
+        if (!fs.existsSync(path)) {
+            fs.mkdirSync(path);
+        } 
+    } catch (err) {
+        console.log(err);
+    }
+    
+    fs.writeFile('../test_data/ro-crate-metadata.jsonld',
+                JSON.stringify(jsonld, null, 2), 
+                function(err, result) {
+                if (err) {
+                    console.log(err);
+                }
+                });
+   
+}
+
+
+
+
+conversion();
diff --git a/test_data/data_record.js b/test_data/data_record.js
new file mode 100644
index 0000000000000000000000000000000000000000..f1d3f9ff5aafd3bcd3108e196864aee376451265
--- /dev/null
+++ b/test_data/data_record.js
@@ -0,0 +1,87 @@
+const data_record = {
+    "title": "eResearch's Postman test",
+    "project_id": 123123,
+    "chief_investigator": {
+        "name": "test mann",
+        "email": "test@testmann.com",
+        "ORCID": 123123
+    },
+    "dc:identifier": "http://purl.org/au-research/grants/nhmrc/566728",
+    "data_manager": {
+        "name" : "test name",
+        "email" : "test@data.com",
+        "ORCID": 456678,
+        //the portion below in this 'data_manager' appended for script familiarization
+        "creators": [
+            "John Doe",
+            "Siri Appleseed",
+            "Jonathan Tigris",
+            "Quirky Adam"
+        ],
+        "contributor_data_manager" : {
+            "text_full_name" : "Peter Sefton",
+            "full_name_honorific" : "Mr Peter Sefton",
+            "email" : "Peter.Sefton@uts.edu.au",
+            "given_name" : "Peter",
+            "family_name" : "Sefton",
+            "honorific" : "Mr",
+            "full_name_family_name_first" : "Sefton, Peter",
+            "username" : "",
+            "role" : "Data manager"
+        }
+     },
+    "description": "Movement of molecules within cells by a process known as membrane transport is critical for normal cell function and also exploited by bacteria to promote infection. The pathway that connects the import pathway to the export pathway is essential for the function of a large number of proteins, however this connecting pathway is poorly characterised. This study will define the machinery of this trafficking pathway, which will provide the ability to modulate biological processes and cytotoxicity.",
+    "information_security_class" : "UTS:Internal",
+    "required_ethics_approval" : false,
+    "data_collection_method": "Please provide a brief description of your data collection methodology",
+    "predominant_file_type": "textual, tabular, image or recording",
+    "minimum_retention_period": "1 year",
+    "destroy_prior_retention_end": false,
+    "data_to_destroy": "test",
+    "date_to_destroy": "16/20/2045",
+    "copywright_owner": "University of Technology Sydney",
+    "access_after_project": "Mediated, by permission from the data manager",
+    "third_party_data_usage": false,
+    "finalKeywords": [
+        "270199",
+        "Golgi apparatus",
+        "endocytosis",
+        "membrane transport",
+        "protein trafficking",
+        "secretion",
+        "HIV-AIDS",
+        "bacterial pathogen",
+        "hormone secretion",
+        "immune development",
+        "lysosomal storage disorder"
+    ],
+    "contributor_ci": {
+        "text_full_name": "Prof Paul Gleeson",
+        "email": "notAReal@email.edu.au",
+        "orcid": "http://orcid.org/0000-0000-0000-000"
+    },
+    "contributor_data_manager": {
+        "text_full_name": "Prof Paul Gleeson",
+        "email": "notAReal@email.edu.au",
+        "orcid": "http://orcid.org/0000-0000-0000-000"
+    },
+    "contributors": [
+        {
+            "text_full_name": "Prof Paul Gleeson",
+            "email": "notAReal@email.edu.au",
+            "orcid": "http://orcid.org/0000-0000-0000-000"
+        }
+    ],
+    "vivo:Dataset_redbox:DataCollectionMethodology": "The data collection methodology",
+    "vivo:Dataset_dc_format": "xls",
+    "vivo:Dataset_dc:location_rdf:PlainLiteral": "eResearch Store network drive",
+    "vivo:Dataset_dc:source_dc:location_rdf:PlainLiteral": "shared university network drive (e.g. G, H, etc)",
+    "vivo:Dataset_dc:extent": "100GB - 2TB",
+    "redbox:retentionPeriod_dc:date": "1year",
+    "dc:rightsHolder_dc:name": "myUni",
+    "dc:accessRights": "permission from the data manager",
+    "authorization": [],
+    "catalogue_file_path": "./data_catalogue/"
+}
+
+module.exports = { data_record };
\ No newline at end of file
diff --git a/test_data/ro-crate-metadata.jsonld b/test_data/ro-crate-metadata.jsonld
new file mode 100644
index 0000000000000000000000000000000000000000..d1a55f16d31d1dbf08ac96c04274ec2af64466ac
--- /dev/null
+++ b/test_data/ro-crate-metadata.jsonld
@@ -0,0 +1,108 @@
+{
+  "@context": "https://raw.githubusercontent.com/ResearchObject/ro-crate/master/docs/0.3-DRAFT/context.json",
+  "@graph": [
+    {
+      "@id": "./",
+      "identifier": 123123,
+      "@type": "Dataset",
+      "path": "data/",
+      "dateCreated": "2021-10-08T01:38:55.358Z",
+      "datePublished": "2021-10-08T01:38:55.358Z",
+      "publisher": {
+        "@id": "test mann"
+      },
+      "hasPart": [],
+      "contributor": [
+        {
+          "@id": "Peter.Sefton@uts.edu.au"
+        }
+      ],
+      "contactPoint": {
+        "@id": "_:contact/Peter.Sefton@uts.edu.au"
+      },
+      "about": [],
+      "funder": [],
+      "citation": [],
+      "distribution": [
+        {
+          "@id": "Please provide a brief description of your data collection methodology"
+        }
+      ]
+    },
+    {
+      "@type": "CreativeWork",
+      "@id": "ro-crate-metadata.jsonld",
+      "identifier": "ro-crate-metadata.jsonld",
+      "about": {
+        "@id": "./"
+      }
+    },
+    {
+      "@id": "test mann",
+      "@type": "Organization",
+      "identifier": "test mann",
+      "name": "test mann"
+    },
+    {
+      "@id": "Peter.Sefton@uts.edu.au",
+      "@type": "Person",
+      "identifier": "Peter.Sefton@uts.edu.au",
+      "name": "Peter Sefton",
+      "familyName": "Sefton",
+      "givenName": "Peter",
+      "email": "Peter.Sefton@uts.edu.au",
+      "affiliation": {
+        "@id": "test mann"
+      },
+      "contactPoint": "_:contact/Peter.Sefton@uts.edu.au"
+    },
+    {
+      "@id": "1 year",
+      "@type": "Person",
+      "email": "1 year"
+    },
+    {
+      "@id": "test",
+      "@type": "Person",
+      "email": "test"
+    },
+    {
+      "@id": "_:contact/Peter.Sefton@uts.edu.au",
+      "@type": "ContactPoint",
+      "contactType": "Data Manager",
+      "email": "Peter.Sefton@uts.edu.au",
+      "identifier": "_:contact/Peter.Sefton@uts.edu.au"
+    },
+    {
+      "@id": "history1",
+      "@type": "CreateAction",
+      "name": "Create",
+      "description": "Data record created",
+      "endTime": "2021-10-08T01:38:55.358Z",
+      "object": {
+        "@id": "./"
+      },
+      "agent": {
+        "@id": "1 year"
+      }
+    },
+    {
+      "@id": "history2",
+      "@type": "UpdateAction",
+      "name": "Publish",
+      "endTime": "2021-10-08T01:38:55.358Z",
+      "object": {
+        "@id": "./"
+      },
+      "agent": {
+        "@id": "test"
+      }
+    },
+    {
+      "@id": "Please provide a brief description of your data collection methodology",
+      "contentUrl": "Please provide a brief description of your data collection methodology",
+      "@type": "DataDownload",
+      "encodingFormat": "zip"
+    }
+  ]
+}
\ No newline at end of file