File: quoting.svtest

package info (click to toggle)
dovecot 1:2.2.13-12~deb8u4
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 38,792 kB
  • sloc: ansic: 341,472; sh: 16,920; makefile: 5,393; cpp: 1,474; perl: 265; xml: 44; python: 34; pascal: 27
file content (36 lines) | stat: -rw-r--r-- 1,047 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
require "vnd.dovecot.testsuite";

require "variables";
require "encoded-character";

test "Encodings - RFC examples" {
	set "s" "$";
	set "foo" "bar";

	# "${fo\o}"  => ${foo}  => the expansion of variable foo.
	if not string :is "${fo\o}" "bar" {
		test_fail "failed 'the expansion of variable foo (${s}{fo\\o})'";
	}

	# "${fo\\o}" => ${fo\o} => illegal identifier => left verbatim.
	if not string :is "${fo\\o}" "${s}{fo\\o}" {
		test_fail "failed 'illegal identifier => left verbatim'";
	}

	# "\${foo}"  => ${foo}  => the expansion of variable foo.
	if not string "\${foo}" "bar" {
		test_fail "failed 'the expansion of variable foo (\\${s}{foo})'";
	}

	# "\\${foo}" => \${foo} => a backslash character followed by the
	#                          expansion of variable foo.
	if not string "\\${foo}" "\\bar" {
		test_fail "failed 'a backslash character followed by expansion of variable foo";
	}

	set "name" "Ethelbert";
	if not string "dear${hex:20 24 7b 4e}ame}" "dear Ethelbert" {
		test_fail "failed 'dear Ethelbert' example";
    }
}