aboutsummaryrefslogtreecommitdiff
path: root/test-suite
diff options
context:
space:
mode:
authordaubaris <paulius.daubaris@gmail.com>2019-11-22 18:28:29 +0200
committerAlex Crichton <alex@alexcrichton.com>2019-11-22 10:28:29 -0600
commit60b874308e6792a73cc00517a60bbef60a12e3cc (patch)
tree3fac2b54902d2a40462ece80aff2bdefcfe05558 /test-suite
parent75129040cd041b380f4f1d8f2685928392aa9f55 (diff)
downloadmilf-rs-60b874308e6792a73cc00517a60bbef60a12e3cc.tar.gz
milf-rs-60b874308e6792a73cc00517a60bbef60a12e3cc.zip
Mixed type arrays (#358)
* Added support of mixed-type arrays * Add tests cases * Replaced &'static str type for type_ and created a new enum instead * Restored ArrayMixedType
Diffstat (limited to 'test-suite')
-rw-r--r--test-suite/tests/invalid.rs15
-rw-r--r--test-suite/tests/valid.rs15
-rw-r--r--test-suite/tests/valid/array-mixed-types-arrays-and-ints.json11
-rw-r--r--test-suite/tests/valid/array-mixed-types-arrays-and-ints.toml (renamed from test-suite/tests/invalid/array-mixed-types-arrays-and-ints.toml)0
-rw-r--r--test-suite/tests/valid/array-mixed-types-ints-and-floats.json9
-rw-r--r--test-suite/tests/valid/array-mixed-types-ints-and-floats.toml (renamed from test-suite/tests/invalid/array-mixed-types-ints-and-floats.toml)0
-rw-r--r--test-suite/tests/valid/array-mixed-types-strings-and-ints.json9
-rw-r--r--test-suite/tests/valid/array-mixed-types-strings-and-ints.toml (renamed from test-suite/tests/invalid/array-mixed-types-strings-and-ints.toml)0
-rw-r--r--test-suite/tests/valid/example-v0.4.0.toml3
9 files changed, 46 insertions, 16 deletions
diff --git a/test-suite/tests/invalid.rs b/test-suite/tests/invalid.rs
index 3312629..ccc9338 100644
--- a/test-suite/tests/invalid.rs
+++ b/test-suite/tests/invalid.rs
@@ -15,21 +15,6 @@ macro_rules! test( ($name:ident, $s:expr, $msg:expr) => (
) );
test!(
- array_mixed_types_arrays_and_ints,
- include_str!("invalid/array-mixed-types-arrays-and-ints.toml"),
- "mixed types in an array at line 1 column 24"
-);
-test!(
- array_mixed_types_ints_and_floats,
- include_str!("invalid/array-mixed-types-ints-and-floats.toml"),
- "mixed types in an array at line 1 column 23"
-);
-test!(
- array_mixed_types_strings_and_ints,
- include_str!("invalid/array-mixed-types-strings-and-ints.toml"),
- "mixed types in an array at line 1 column 27"
-);
-test!(
datetime_malformed_no_leads,
include_str!("invalid/datetime-malformed-no-leads.toml"),
"failed to parse datetime for key `no-leads` at line 1 column 12"
diff --git a/test-suite/tests/valid.rs b/test-suite/tests/valid.rs
index e080958..0bb7caa 100644
--- a/test-suite/tests/valid.rs
+++ b/test-suite/tests/valid.rs
@@ -147,6 +147,21 @@ test!(
include_str!("valid/arrays-nested.json")
);
test!(
+ array_mixed_types_ints_and_floats,
+ include_str!("valid/array-mixed-types-ints-and-floats.toml"),
+ include_str!("valid/array-mixed-types-ints-and-floats.json")
+);
+test!(
+ array_mixed_types_arrays_and_ints,
+ include_str!("valid/array-mixed-types-arrays-and-ints.toml"),
+ include_str!("valid/array-mixed-types-arrays-and-ints.json")
+);
+test!(
+ array_mixed_types_strings_and_ints,
+ include_str!("valid/array-mixed-types-strings-and-ints.toml"),
+ include_str!("valid/array-mixed-types-strings-and-ints.json")
+);
+test!(
empty,
include_str!("valid/empty.toml"),
include_str!("valid/empty.json")
diff --git a/test-suite/tests/valid/array-mixed-types-arrays-and-ints.json b/test-suite/tests/valid/array-mixed-types-arrays-and-ints.json
new file mode 100644
index 0000000..10074ec
--- /dev/null
+++ b/test-suite/tests/valid/array-mixed-types-arrays-and-ints.json
@@ -0,0 +1,11 @@
+{
+ "arrays-and-ints": {
+ "type": "array",
+ "value": [
+ {"type": "integer", "value": "1"},
+ {"type": "array", "value": [
+ { "type": "string", "value":"Arrays are not integers."}
+ ]}
+ ]
+ }
+}
diff --git a/test-suite/tests/invalid/array-mixed-types-arrays-and-ints.toml b/test-suite/tests/valid/array-mixed-types-arrays-and-ints.toml
index 051ec73..051ec73 100644
--- a/test-suite/tests/invalid/array-mixed-types-arrays-and-ints.toml
+++ b/test-suite/tests/valid/array-mixed-types-arrays-and-ints.toml
diff --git a/test-suite/tests/valid/array-mixed-types-ints-and-floats.json b/test-suite/tests/valid/array-mixed-types-ints-and-floats.json
new file mode 100644
index 0000000..c90665e
--- /dev/null
+++ b/test-suite/tests/valid/array-mixed-types-ints-and-floats.json
@@ -0,0 +1,9 @@
+{
+ "ints-and-floats": {
+ "type": "array",
+ "value": [
+ {"type": "integer", "value": "1"},
+ {"type": "float", "value": "1.1"}
+ ]
+ }
+}
diff --git a/test-suite/tests/invalid/array-mixed-types-ints-and-floats.toml b/test-suite/tests/valid/array-mixed-types-ints-and-floats.toml
index a5aa9b7..a5aa9b7 100644
--- a/test-suite/tests/invalid/array-mixed-types-ints-and-floats.toml
+++ b/test-suite/tests/valid/array-mixed-types-ints-and-floats.toml
diff --git a/test-suite/tests/valid/array-mixed-types-strings-and-ints.json b/test-suite/tests/valid/array-mixed-types-strings-and-ints.json
new file mode 100644
index 0000000..8ae322e
--- /dev/null
+++ b/test-suite/tests/valid/array-mixed-types-strings-and-ints.json
@@ -0,0 +1,9 @@
+{
+ "strings-and-ints": {
+ "type": "array",
+ "value": [
+ {"type": "string", "value": "hi"},
+ {"type": "integer", "value": "42"}
+ ]
+ }
+}
diff --git a/test-suite/tests/invalid/array-mixed-types-strings-and-ints.toml b/test-suite/tests/valid/array-mixed-types-strings-and-ints.toml
index f348308..f348308 100644
--- a/test-suite/tests/invalid/array-mixed-types-strings-and-ints.toml
+++ b/test-suite/tests/valid/array-mixed-types-strings-and-ints.toml
diff --git a/test-suite/tests/valid/example-v0.4.0.toml b/test-suite/tests/valid/example-v0.4.0.toml
index ffbcce0..69f1c1b 100644
--- a/test-suite/tests/valid/example-v0.4.0.toml
+++ b/test-suite/tests/valid/example-v0.4.0.toml
@@ -170,7 +170,8 @@ False = false
## Array
# Arrays are square brackets with other primitives inside. Whitespace is
-# ignored. Elements are separated by commas. Data types may not be mixed.
+# ignored. Elements are separated by commas. Since 2019-11-06 data types can be
+# mixed.
[array]