Browse Source

[test] use xml to store arguments, such that we can test "\n" and to leave comments.

Andy Li 10 years ago
parent
commit
85a9b51d7e
5 changed files with 18 additions and 6 deletions
  1. 4 1
      tests/RunCi.hx
  2. 0 3
      tests/sys/args.txt
  3. 9 0
      tests/sys/args.xml
  4. 1 1
      tests/sys/compile-each.hxml
  5. 4 1
      tests/sys/src/TestSys.hx

+ 4 - 1
tests/RunCi.hx

@@ -471,7 +471,10 @@ class RunCi {
 	static function main():Void {
 		Sys.putEnv("OCAMLRUNPARAM", "b");
 
-		var args = ~/\r?\n/g.split(File.getContent('$sysDir/args.txt'));
+		var args = [
+			for (arg in new haxe.xml.Fast(Xml.parse(File.getContent('$sysDir/args.xml'))).node.args.nodes.arg)
+			arg.innerData
+		];
 
 		var tests:Array<TEST> = switch (ci) {
 			case null:

+ 0 - 3
tests/sys/args.txt

@@ -1,3 +0,0 @@
-foo
-12
-a b  %PATH% $HOME c\&<>["]#{}|%$

+ 9 - 0
tests/sys/args.xml

@@ -0,0 +1,9 @@
+<args>
+
+<arg><![CDATA[foo]]></arg>
+
+<arg><![CDATA[12]]></arg>
+
+<arg><![CDATA[a b  %PATH% $HOME c\&<>[\"]#{}|%$\""]]></arg>
+
+</args>

+ 1 - 1
tests/sys/compile-each.hxml

@@ -1,4 +1,4 @@
 -debug
 -cp src
--resource args.txt
+-resource args.xml
 -main Main

+ 4 - 1
tests/sys/src/TestSys.hx

@@ -3,7 +3,10 @@ class TestSys extends haxe.unit.TestCase {
 	#if !interp
 	function testArgs() {
 		var args = Sys.args();
-		var expectedArgs = ~/\r?\n/g.split(haxe.Resource.getString("args.txt"));
+		var expectedArgs = [
+			for (arg in new haxe.xml.Fast(Xml.parse(haxe.Resource.getString("args.xml"))).node.args.nodes.arg)
+			arg.innerData
+		];
 		// trace(args);
 		assertEquals(expectedArgs.length, args.length);
 		for (i in 0...expectedArgs.length) {