This file is indexed.

/usr/share/augeas/lenses/dist/tests/test_inifile.aug is in augeas-lenses 1.4.0-0ubuntu1.1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
(*
Module: Test_IniFile
  Provides unit tests and examples for the <IniFile> module.

About: Tests to run

   The tests are run with all combinations of the following
   three parameters:

   > separator   :  (a) default (/[:=]/ "=") ;   (b) "=" "="
   > comment     :  (c) default (/[;#]/ ";") ;   (d) ";" ";"
   > empty lines :  (e) default              ;   (f) noempty

*)

module Test_IniFile =

  (* ALL TESTS TO RUN *)


  (* Group: TEST a/c/e *)
  (* Variable: comment_ace *)
  let comment_ace = IniFile.comment IniFile.comment_re IniFile.comment_default
  (* Variable: sep_ace *)
  let sep_ace     = IniFile.sep IniFile.sep_re IniFile.sep_default
  (* Variable: entry_ace *)
  let entry_ace   = IniFile.entry IniFile.entry_re sep_ace comment_ace
  (* Variable: title_ace *)
  let title_ace   = IniFile.title IniFile.record_re
  (* Variable: record_ace *)
  let record_ace  = IniFile.record title_ace entry_ace
  (* Variable: lns_ace *)
  let lns_ace     = IniFile.lns record_ace comment_ace
  (* Variable: conf_ace *)
  let conf_ace    = "# comment with sharp

[section1]
test_ace = value # end of line comment
test_ace =
test_ace = \"value with spaces\"
; comment with colon

"
  (* Test: lns_ace
      Testing the a/c/e combination *)
  test lns_ace get conf_ace =
      { "#comment" = "comment with sharp" }
      {}
      { "section1"
          { "test_ace" = "value"
	     { "#comment" = "end of line comment" } }
	  { "test_ace" }
          { "test_ace" = "value with spaces" }
	  { "#comment"  = "comment with colon" }
	  {} }

  test lns_ace put conf_ace after
    set "section1/foo" "yes" = "# comment with sharp

[section1]
test_ace = value # end of line comment
test_ace =
test_ace = \"value with spaces\"
; comment with colon

foo=yes
"

  (* Test: lns_ace
       Quotes can appear within bare values *)
  test lns_ace get "[section]\ntest_ace = value \"with quotes\" inside\n" =
  { "section" { "test_ace" = "value \"with quotes\" inside" } }

  (* Group: TEST a/c/f *)
  (* Variable: comment_acf *)
  let comment_acf = IniFile.comment IniFile.comment_re IniFile.comment_default
  (* Variable: sep_acf *)
  let sep_acf     = IniFile.sep IniFile.sep_re IniFile.sep_default
  (* Variable: entry_acf *)
  let entry_acf   = IniFile.entry IniFile.entry_re sep_acf comment_acf
  (* Variable: title_acf *)
  let title_acf   = IniFile.title IniFile.record_re
  (* Variable: record_acf *)
  let record_acf  = IniFile.record_noempty title_acf entry_acf
  (* Variable: lns_acf *)
  let lns_acf     = IniFile.lns_noempty record_acf comment_acf
  (* Variable: conf_acf *)
  let conf_acf   = "# comment with sharp
[section1]
test_acf = value
test_acf =
test_acf : value2 # end of line comment
; comment with colon
"
  (* Test: lns_acf
      Testing the a/c/f combination *)
  test lns_acf get conf_acf =
      { "#comment" = "comment with sharp" }
      { "section1"
         { "test_acf" = "value" }
	 { "test_acf" }
         { "test_acf" = "value2"
	    { "#comment" = "end of line comment" } }
	 { "#comment"  = "comment with colon" } }


  (* Group: TEST a/d/e *)
  (* Variable: comment_ade *)
  let comment_ade = IniFile.comment ";" ";"
  (* Variable: sep_ade *)
  let sep_ade     = IniFile.sep IniFile.sep_re IniFile.sep_default
  (* Variable: entry_ade *)
  let entry_ade   = IniFile.entry IniFile.entry_re sep_ade comment_ade
  (* Variable: title_ade *)
  let title_ade   = IniFile.title IniFile.record_re
  (* Variable: record_ade *)
  let record_ade  = IniFile.record title_ade entry_ade
  (* Variable: lns_ade *)
  let lns_ade     = IniFile.lns record_ade comment_ade
  (* Variable: conf_ade *)
  let conf_ade    = "; a first comment with colon
[section1]
test_ade = value
test_ade : value2 ; end of line comment
; comment with colon

test_ade =
"
  (* Test: lns_ade
      Testing the a/d/e combination *)
   test lns_ade get conf_ade =
      { "#comment" = "a first comment with colon" }
      { "section1"
         { "test_ade" = "value" }
         { "test_ade" = "value2"
	    { "#comment" = "end of line comment" } }
	 { "#comment"  = "comment with colon" }
	 {}
	 { "test_ade" } }


  (* Group: TEST a/d/f *)
  (* Variable: comment_adf *)
  let comment_adf = IniFile.comment ";" ";"
  (* Variable: sep_adf *)
  let sep_adf     = IniFile.sep IniFile.sep_re IniFile.sep_default
  (* Variable: entry_adf *)
  let entry_adf   = IniFile.entry IniFile.entry_re sep_adf comment_adf
  (* Variable: title_adf *)
  let title_adf   = IniFile.title IniFile.record_re
  (* Variable: record_adf *)
  let record_adf  = IniFile.record_noempty title_adf entry_adf
  (* Variable: lns_adf *)
  let lns_adf     = IniFile.lns_noempty record_adf comment_adf
  (* Variable: conf_adf *)
  let conf_adf    = "; a first comment with colon
[section1]
test_adf = value
test_adf : value2 ; end of line comment
; comment with colon
test_adf =
"
  (* Test: lns_adf
      Testing the a/d/f combination *)
   test lns_adf get conf_adf =
      { "#comment" = "a first comment with colon" }
      { "section1"
         { "test_adf" = "value" }
         { "test_adf" = "value2"
	    { "#comment" = "end of line comment" } }
	 { "#comment"  = "comment with colon" }
	 { "test_adf" } }


  (* Group: TEST b/c/e *)
  (* Variable: comment_bce *)
  let comment_bce = IniFile.comment IniFile.comment_re IniFile.comment_default
  (* Variable: sep_bce *)
  let sep_bce     = IniFile.sep "=" "="
  (* Variable: entry_bce *)
  let entry_bce   = IniFile.entry IniFile.entry_re sep_bce comment_bce
  (* Variable: title_bce *)
  let title_bce   = IniFile.title IniFile.record_re
  (* Variable: record_bce *)
  let record_bce  = IniFile.record title_bce entry_bce
  (* Variable: lns_bce *)
  let lns_bce     = IniFile.lns record_bce comment_bce
  (* Variable: conf_bce *)
  let conf_bce   = "# comment with sharp

[section1]
test_bce = value # end of line comment
; comment with colon

test_bce =
"
  (* Test: lns_bce
      Testing the b/c/e combination *)
  test lns_bce get conf_bce =
      { "#comment" = "comment with sharp" }
      {}
      { "section1"
          { "test_bce" = "value"
	     { "#comment" = "end of line comment" } }
	  { "#comment"  = "comment with colon" }
	  {}
	  { "test_bce" } }


  (* Group: TEST b/c/f *)
  (* Variable: comment_bcf *)
  let comment_bcf = IniFile.comment IniFile.comment_re IniFile.comment_default
  (* Variable: sep_bcf *)
  let sep_bcf     = IniFile.sep "=" "="
  (* Variable: entry_bcf *)
  let entry_bcf   = IniFile.entry IniFile.entry_re sep_bcf comment_bcf
  (* Variable: title_bcf *)
  let title_bcf   = IniFile.title IniFile.record_re
  (* Variable: record_bcf *)
  let record_bcf  = IniFile.record_noempty title_bce entry_bcf
  (* Variable: lns_bcf *)
  let lns_bcf     = IniFile.lns_noempty record_bce comment_bcf
  (* Variable: conf_bcf *)
  let conf_bcf   = "# conf with sharp
[section1]
test_bcf = value # end of line comment
; comment with colon
test_bcf =
"
  (* Test: lns_bcf
      Testing the b/c/f combination *)
  test lns_bcf get conf_bcf =
      { "#comment" = "conf with sharp" }
      { "section1"
          { "test_bcf" = "value"
	     { "#comment" = "end of line comment" } }
	  { "#comment"  = "comment with colon" }
	  { "test_bcf" } }


  (* Group: TEST b/d/e *)
  (* Variable: comment_bde *)
  let comment_bde = IniFile.comment ";" ";"
  (* Variable: sep_bde *)
  let sep_bde     = IniFile.sep "=" "="
  (* Variable: entry_bde *)
  let entry_bde   = IniFile.entry IniFile.entry_re sep_bde comment_bde
  (* Variable: title_bde *)
  let title_bde   = IniFile.title IniFile.record_re
  (* Variable: record_bde *)
  let record_bde  = IniFile.record title_bde entry_bde
  (* Variable: lns_bde *)
  let lns_bde     = IniFile.lns record_bde comment_bde
  (* Variable: conf_bde *)
  let conf_bde    = "; first comment with colon

[section1]
test_bde = value ; end of line comment
; comment with colon

test_bde =
"
  (* Test: lns_bde
      Testing the b/d/e combination *)
  test lns_bde get conf_bde =
      { "#comment" = "first comment with colon" }
      {}
      { "section1"
          { "test_bde" = "value"
	     { "#comment" = "end of line comment" } }
	  { "#comment"  = "comment with colon" }
	  {}
	  { "test_bde" } }


  (* Group: TEST b/d/f *)
  (* Variable: comment_bdf *)
  let comment_bdf = IniFile.comment ";" ";"
  (* Variable: sep_bdf *)
  let sep_bdf     = IniFile.sep "=" "="
  (* Variable: entry_bdf *)
  let entry_bdf   = IniFile.entry IniFile.entry_re sep_bdf comment_bdf
  (* Variable: title_bdf *)
  let title_bdf   = IniFile.title IniFile.record_re
  (* Variable: record_bdf *)
  let record_bdf  = IniFile.record_noempty title_bdf entry_bdf
  (* Variable: lns_bdf *)
  let lns_bdf     = IniFile.lns_noempty record_bdf comment_bdf
  (* Variable: conf_bdf *)
  let conf_bdf    = "; first comment with colon
[section1]
test_bdf = value ; end of line comment
; comment with colon
test_bdf =
"
  (* Test: lns_bdf
      Testing the b/d/f combination *)
  test lns_bdf get conf_bdf =
      { "#comment" = "first comment with colon" }
      { "section1"
          { "test_bdf" = "value"
	     { "#comment" = "end of line comment" } }
	  { "#comment"  = "comment with colon" }
	  { "test_bdf" } }


  (* Group: TEST multiline values *)
  (* Variable: multiline_test *)
  let multiline_test = "test_ace = val1\n  val2\n   val3\n"
  (* Variable: multiline_nl *)
  let multiline_nl = "test_ace =\n  val2\n   val3\n"
  (* Variable: multiline_ace *)
  let multiline_ace = IniFile.entry_multiline IniFile.entry_re sep_ace comment_ace
  (* Test: multiline_ace
       Testing the a/c/e combination with a multiline entry *)
  test multiline_ace get multiline_test =
      { "test_ace" = "val1\n  val2\n   val3" }
  (* Test: multiline_nl
       Multiline values can begin with a single newline *)
  test multiline_ace get multiline_nl =
      { "test_ace" = "\n  val2\n   val3" }

  (* Test: lns_ace
       Ticket #243 *)
  test lns_ace get "[section1]
ticket_243 = \"value1;value2#value3\" # end of line comment
" =
  { "section1"
    { "ticket_243" = "value1;value2#value3"
      { "#comment" = "end of line comment" }
    }
  }

  (* Group: TEST list entries *)
  (* Variable: list_test *)
  let list_test = "test_ace = val1,val2,val3 # a comment\n"
  (* Lens: list_ace *)
  let list_ace = IniFile.entry_list IniFile.entry_re sep_ace RX.word Sep.comma comment_ace
  (* Test: list_ace
       Testing the a/c/e combination with a list entry *)
  test list_ace get list_test =
  { "test_ace"
    { "1" = "val1" }
    { "2" = "val2" }
    { "3" = "val3" }
    { "#comment" = "a comment" }
  }

  (* Variable: list_nocomment_test *)
  let list_nocomment_test = "test_ace = val1,val2,val3 \n"
  (* Lens: list_nocomment_ace *)
  let list_nocomment_ace = IniFile.entry_list_nocomment IniFile.entry_re sep_ace RX.word Sep.comma
  (* Test: list_nocomment_ace
       Testing the a/c/e combination with a list entry without end-of-line comment *)
  test list_nocomment_ace get list_nocomment_test =
  { "test_ace"
    { "1" = "val1" }
    { "2" = "val2" }
    { "3" = "val3" }
  }

  (* Test: IniFile.lns_loose *)
  test IniFile.lns_loose get conf_ace =
  { "section" = ".anon"
    { "#comment" = "comment with sharp" }
    {  }
  }
  { "section" = "section1"
    { "test_ace" = "value"
      { "#comment" = "end of line comment" }
    }
    { "test_ace" }
    { "test_ace" = "value with spaces" }
    { "#comment" = "comment with colon" }
    {  }
  }

  (* Test: IniFile.lns_loose_multiline *)
  test IniFile.lns_loose_multiline get conf_ace =
  { "section" = ".anon"
    { "#comment" = "comment with sharp" }
    {  }
  }
  { "section" = "section1"
    { "test_ace" = "value"
      { "#comment" = "end of line comment" }
    }
    { "test_ace" }
    { "test_ace" = "value with spaces" }
    { "#comment" = "comment with colon" }
    {  }
  }
  
  test IniFile.lns_loose_multiline get multiline_test =
      { "section" = ".anon" { "test_ace" = "val1\n  val2\n   val3" } }