diff --git a/asterix-app/data/csv/sample_01.csv b/asterix-app/data/csv/sample_01.csv
new file mode 100644
index 0000000..5a2a4f5
--- /dev/null
+++ b/asterix-app/data/csv/sample_01.csv
@@ -0,0 +1,4 @@
+1,0.899682764,5.6256,2013-08-07,7:22:35,1979-02-25T23:48:27.000,"3.485, 94.493","-4.0,2.0 2.0,2.0","1.0,1.0 1.0,4.0 3.0,4.0 3.0,1.0","0.0,0.0 4.0,4.0","11.0,14.0 15.0"
+2,0.669052398,0.446192,-1923-3-29,19:33:34,-1979-02-25T23:48:27.000,"-3.485, 94.493","-4.0,2.0 2.0,2.0","1.0,1.0 1.0,4.0 3.0,4.0 3.0,1.0","0.0,0.0 4.0,4.0","11.0,14.0 15.0"
+,,,,,,,,,,
+3,0.572733058,192674,-1923-3-29,19:33:34,-1979-02-25T23:48:27.000,"-3.485, 94.493","-4.0,2.0 2.0,2.0","1.0,1.0 1.0,4.0 3.0,4.0 3.0,1.0","0.0,0.0 4.0,4.0","11.0,14.0 15.0"
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.1.ddl.aql
new file mode 100644
index 0000000..aabc9d8
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.1.ddl.aql
@@ -0,0 +1,27 @@
+/**
+ *
+ * CSV file loading test
+ * Expected result: success
+ *
+ */
+ 
+drop dataverse temp if exists;
+create dataverse temp
+use dataverse temp;
+
+create type test as closed {
+    id: int32,
+    float: float,
+    double: double,
+    date: string,
+    time: string,
+    datetime: string,
+    point: string,
+    line: string,
+    polygon: string,
+    rectangle: string,
+    circle: string
+};
+
+create dataset testds (test)
+primary key id;
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.2.update.aql
new file mode 100644
index 0000000..c3161d5
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.2.update.aql
@@ -0,0 +1,12 @@
+/**
+ *
+ * CSV file loading test
+ * Expected result: success
+ *
+ */
+
+use dataverse temp;
+
+load dataset testds
+using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
+(("path"="nc1://data/csv/sample_01.csv"),("format"="delimited-text"),("delimiter"=","));
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.3.query.aql
new file mode 100644
index 0000000..3f03ab9
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/csv_01/csv_01.3.query.aql
@@ -0,0 +1,21 @@
+/**
+ *
+ * CSV file loading test
+ * Expected result: success
+ *
+ */
+
+use dataverse temp;
+
+for $i in dataset testds
+return { "id": $i.id, 
+         "float": $i.float, 
+         "double": $i.double, 
+         "date": date($i.date), 
+         "time": time($i.time),
+         "datetime": datetime($i.datetime),
+         "point": point($i.point),
+         "line": line($i.line),
+         "polygon": polygon($i.polygon),
+         "rectangle": rectangle($i.rectangle),
+         "circle": circle($i.circle)}
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/load/csv_01/csv_01.1.adm b/asterix-app/src/test/resources/runtimets/results/load/csv_01/csv_01.1.adm
new file mode 100644
index 0000000..aabc9d8
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/load/csv_01/csv_01.1.adm
@@ -0,0 +1,27 @@
+/**
+ *
+ * CSV file loading test
+ * Expected result: success
+ *
+ */
+ 
+drop dataverse temp if exists;
+create dataverse temp
+use dataverse temp;
+
+create type test as closed {
+    id: int32,
+    float: float,
+    double: double,
+    date: string,
+    time: string,
+    datetime: string,
+    point: string,
+    line: string,
+    polygon: string,
+    rectangle: string,
+    circle: string
+};
+
+create dataset testds (test)
+primary key id;
diff --git a/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterix-app/src/test/resources/runtimets/testsuite.xml
index 3a2a44e..67ca419 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite.xml
@@ -4253,6 +4253,11 @@
   </test-group>
   <test-group name="load">
     <test-case FilePath="load">
+      <compilation-unit name="csv_01">
+        <output-dir compare="Text">csv_01</output-dir>
+      </compilation-unit>
+    </test-case>
+    <test-case FilePath="load">
       <compilation-unit name="issue14_query">
         <output-dir compare="Text">none</output-dir>
         <expected-error>edu.uci.ics.asterix.common.exceptions.AsterixException</expected-error> 
