1[basic]
2basicval = bar
3longval  = 12345
4with.dot = fooobar
5boolon = on
6booltrue = true
7boolyes = yes
8booloff = off
9boolfalse = false
10boolnone = none
11boolno = no
12string = asdadfsdjkslkj ¡@£$$ { }[ ]/%#¤
13sqstring = 'adsasdadasdasd'
14dqstring = "asdadfsdjkslkj ¡@£$$ { } !^~|¥¥{[()/)&/% ¤ # #"
15php_constant = E_WARNING
16user_constant = TEST_CONSTANT
17
18[basic with whitespace]
19basicval = 	 	 bar
20longval  = 	 	 	12345
21with.dot = 	 	 	fooobar
22boolon = 	  	on
23booltrue = 	 	 true
24boolyes =		 	  yes
25booloff =	 	  off
26boolfalse =  	 	 false
27boolnone = 	 	 none
28boolno =	 	  no
29sqstring = 	 	 'adsasdadasdasd'
30dqstring = 	 	 		 "asdadfsdjkslkj ¡@£$$€¥¥{[()/)&/%#¤"
31php_constant =  	 	 E_WARNING
32
33[comments]
34; some comment
35  	; some comment with whitespace
36somecomment = comment follows;aaa@bbb ; comment here
37;
38
39[variables]
40var1 = ${basicval}
41var2 = ${basicval}/foo
42var3 = foo/${basicval}
43var4 = foo/${basicval}/foo
44quoted_var1 = "${basicqval}"
45quoted_var2 = "${basicqval}/foo"
46quoted_var3 = "foo/${basicqval}"
47quoted_var4 = "foo/${basicqval}/foo"
48
49[offset values]
50foo1[] = "basic offset 1"
51foo1[ 	] = "basic offset 2"
52foo2[123] = "long offset"
53foo3[abc] = "string offset"
54foo4[""] = "quoted offset 1"
55foo4[" "] = "quoted offset 2"
56foo4["sqfoobar"] = "quoted string offset"
57foo4['dqfoobar'] = "single quoted offset"
58foo6[${basicval}] = "variable"
59foo6[${basicval}/foo] = "variable with string 1"
60foo6[foo/${basicval}] = "variable with string 2"
61foo6[foo/${basicval}/foo] = "variable with string 3"
62foo7["${basicqval}"] = "quoted variable 1"
63foo7["${basicqval}/foo"] = "quoted variable 2"
64foo7["foo/${basicqval}"] = "quoted variable 3"
65foo7[ "foo/${basicqval}/foo" ] = "quoted variable 4"
66
67[non value]
68novalue_option1	 	  =
69novalue_option2=
70novalue_option3		  =
71novalue_option4=
72novalue_option4[] 		 =
73novalue_option4[]=
74novalue_option4[]=
75
76["Quoted strings and variables in sections"]
77
78[${basicval}]
79[${basicval}/foo]
80[foo/${basicval}]
81[foo/${basicval}/foo]
82
83["${basicqval}"]
84["${basicqval}/foo"]
85["foo/${basicqval}"]
86["foo/${basicqval}/foo"]
87
88[PATH=${basicval}/no/quotes]
89; Invalid!
90;[PATH="${basicval}/path/quoted"]
91["PATH=${basicval}/all/quoted"]
92
93; This is test for bug #29306
94[01]
95e=e
96f=f
97[02]
98g=g
99h=h
100[1]
101a=a
102b=b
103[2]
104c=c
105d=d
106[0815]
107bla=bla
108
109;Test for bug #43923
110[bug #43923]
111curly1 = {
112curly2 = "{"
113curly3 = '{'
114
115;Test for bug #44019
116[bug #44019]
117concatenation_before = TEST_CONSTANT "+some_text_after"
118concatenation_middle = "some_text_before+" TEST_CONSTANT "+some_text_after"
119concatenation_after = "some_text_before+" TEST_CONSTANT
120concatenation_nows_before = TEST_CONSTANT"+some_text_after"
121concatenation_nows_middle = "some_text_before+"TEST_CONSTANT"+some_text_after"
122concatenation_nows_after = "some_text_before+"TEST_CONSTANT
123
124;Test for bug #43915
125[bug #43915]
126ini_with-hyphen = with hyphen and underscore
127ini.with-hyphen = dot and hyphen
128ini-with.hyphen = hyphen and dot
129
130[windows paths]
131winpath1="c:\some windows\path\test\new\r\quote \" here\single ' quote\some more"
132winpath2="special case\"
133
134[characters escaping]
135; Note: single-quoted strings don't support characters escaping, and the line below
136;       is single-quoted string, followed by unquoted text, followed by single-quoted '.'
137single_quoted = 'She said \'Exactly my point\'.'
138double_quoted = "She said \"Exactly my point\"."
139double_quoted_2 = "Use \\\" to escape double quote"
140double_quoted_multiline = "Lorem \"ipsum\"""
141 dolor"
142dollar_test = "\${test}"
143unescaped ="\n\r\t"
144