@@ -216,17 +216,21 @@ func TestWriteNoNewline(t *testing.T) {
216216 require .NoError (t , listener .Start (acc ))
217217 defer listener .Stop ()
218218
219- // post single message to listener
220- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (testMsgNoNewline )))
221- require .NoError (t , err )
222- require .NoError (t , resp .Body .Close ())
223- require .EqualValues (t , 204 , resp .StatusCode )
219+ for _ , parser := range []string {"internal" , "upstream" } {
220+ listener .ParserType = parser
224221
225- acc .Wait (1 )
226- acc .AssertContainsTaggedFields (t , "cpu_load_short" ,
227- map [string ]interface {}{"value" : float64 (12 )},
228- map [string ]string {"host" : "server01" },
229- )
222+ // post single message to listener
223+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (testMsgNoNewline )))
224+ require .NoError (t , err )
225+ require .NoError (t , resp .Body .Close ())
226+ require .EqualValues (t , 204 , resp .StatusCode )
227+
228+ acc .Wait (1 )
229+ acc .AssertContainsTaggedFields (t , "cpu_load_short" ,
230+ map [string ]interface {}{"value" : float64 (12 )},
231+ map [string ]string {"host" : "server01" },
232+ )
233+ }
230234}
231235
232236func TestAllOrNothing (t * testing.T ) {
@@ -237,11 +241,14 @@ func TestAllOrNothing(t *testing.T) {
237241 require .NoError (t , listener .Start (acc ))
238242 defer listener .Stop ()
239243
240- // post single message to listener
241- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (testPartial )))
242- require .NoError (t , err )
243- require .NoError (t , resp .Body .Close ())
244- require .EqualValues (t , 400 , resp .StatusCode )
244+ for _ , parser := range []string {"internal" , "upstream" } {
245+ listener .ParserType = parser
246+
247+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (testPartial )))
248+ require .NoError (t , err )
249+ require .NoError (t , resp .Body .Close ())
250+ require .EqualValues (t , 400 , resp .StatusCode )
251+ }
245252}
246253
247254func TestWriteMaxLineSizeIncrease (t * testing.T ) {
@@ -256,11 +263,15 @@ func TestWriteMaxLineSizeIncrease(t *testing.T) {
256263 require .NoError (t , listener .Start (acc ))
257264 defer listener .Stop ()
258265
259- // Post a gigantic metric to the listener and verify that it writes OK this time:
260- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (hugeMetric )))
261- require .NoError (t , err )
262- require .NoError (t , resp .Body .Close ())
263- require .EqualValues (t , 204 , resp .StatusCode )
266+ for _ , parser := range []string {"internal" , "upstream" } {
267+ listener .ParserType = parser
268+
269+ // Post a gigantic metric to the listener and verify that it writes OK this time:
270+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (hugeMetric )))
271+ require .NoError (t , err )
272+ require .NoError (t , resp .Body .Close ())
273+ require .EqualValues (t , 204 , resp .StatusCode )
274+ }
264275}
265276
266277func TestWriteVerySmallMaxBody (t * testing.T ) {
@@ -276,10 +287,14 @@ func TestWriteVerySmallMaxBody(t *testing.T) {
276287 require .NoError (t , listener .Start (acc ))
277288 defer listener .Stop ()
278289
279- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (hugeMetric )))
280- require .NoError (t , err )
281- require .NoError (t , resp .Body .Close ())
282- require .EqualValues (t , 413 , resp .StatusCode )
290+ for _ , parser := range []string {"internal" , "upstream" } {
291+ listener .ParserType = parser
292+
293+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (hugeMetric )))
294+ require .NoError (t , err )
295+ require .NoError (t , resp .Body .Close ())
296+ require .EqualValues (t , 413 , resp .StatusCode )
297+ }
283298}
284299
285300func TestWriteLargeLine (t * testing.T ) {
@@ -437,11 +452,15 @@ func TestReceive404ForInvalidEndpoint(t *testing.T) {
437452 require .NoError (t , listener .Start (acc ))
438453 defer listener .Stop ()
439454
440- // post single message to listener
441- resp , err := http .Post (createURL (listener , "http" , "/foobar" , "" ), "" , bytes .NewBuffer ([]byte (testMsg )))
442- require .NoError (t , err )
443- require .NoError (t , resp .Body .Close ())
444- require .EqualValues (t , 404 , resp .StatusCode )
455+ for _ , parser := range []string {"internal" , "upstream" } {
456+ listener .ParserType = parser
457+
458+ // post single message to listener
459+ resp , err := http .Post (createURL (listener , "http" , "/foobar" , "" ), "" , bytes .NewBuffer ([]byte (testMsg )))
460+ require .NoError (t , err )
461+ require .NoError (t , resp .Body .Close ())
462+ require .EqualValues (t , 404 , resp .StatusCode )
463+ }
445464}
446465
447466func TestWriteInvalid (t * testing.T ) {
@@ -452,11 +471,15 @@ func TestWriteInvalid(t *testing.T) {
452471 require .NoError (t , listener .Start (acc ))
453472 defer listener .Stop ()
454473
455- // post single message to listener
456- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (badMsg )))
457- require .NoError (t , err )
458- require .NoError (t , resp .Body .Close ())
459- require .EqualValues (t , 400 , resp .StatusCode )
474+ for _ , parser := range []string {"internal" , "upstream" } {
475+ listener .ParserType = parser
476+
477+ // post single message to listener
478+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (badMsg )))
479+ require .NoError (t , err )
480+ require .NoError (t , resp .Body .Close ())
481+ require .EqualValues (t , 400 , resp .StatusCode )
482+ }
460483}
461484
462485func TestWriteEmpty (t * testing.T ) {
@@ -467,11 +490,15 @@ func TestWriteEmpty(t *testing.T) {
467490 require .NoError (t , listener .Start (acc ))
468491 defer listener .Stop ()
469492
470- // post single message to listener
471- resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (emptyMsg )))
472- require .NoError (t , err )
473- require .NoError (t , resp .Body .Close ())
474- require .EqualValues (t , 204 , resp .StatusCode )
493+ for _ , parser := range []string {"internal" , "upstream" } {
494+ listener .ParserType = parser
495+
496+ // post single message to listener
497+ resp , err := http .Post (createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket" ), "" , bytes .NewBuffer ([]byte (emptyMsg )))
498+ require .NoError (t , err )
499+ require .NoError (t , resp .Body .Close ())
500+ require .EqualValues (t , 204 , resp .StatusCode )
501+ }
475502}
476503
477504func TestReady (t * testing.T ) {
@@ -504,17 +531,20 @@ func TestWriteWithPrecision(t *testing.T) {
504531 defer listener .Stop ()
505532
506533 msg := "xyzzy value=42 1422568543\n "
507- resp , err := http .Post (
508- createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket&precision=s" ), "" , bytes .NewBuffer ([]byte (msg )))
509- require .NoError (t , err )
510- require .NoError (t , resp .Body .Close ())
511- require .EqualValues (t , 204 , resp .StatusCode )
512-
513- acc .Wait (1 )
514- require .Equal (t , 1 , len (acc .Metrics ))
515- // When timestamp is provided, the precision parameter is
516- // overloaded to specify the timestamp's unit
517- require .Equal (t , time .Unix (0 , 1422568543000000000 ), acc .Metrics [0 ].Time )
534+ for _ , parser := range []string {"internal" , "upstream" } {
535+ listener .ParserType = parser
536+
537+ resp , err := http .Post (
538+ createURL (listener , "http" , "/api/v2/write" , "bucket=mybucket&precision=s" ), "" , bytes .NewBuffer ([]byte (msg )))
539+ require .NoError (t , err )
540+ require .NoError (t , resp .Body .Close ())
541+ require .EqualValues (t , 204 , resp .StatusCode )
542+
543+ acc .Wait (1 )
544+ // When timestamp is provided, the precision parameter is
545+ // overloaded to specify the timestamp's unit
546+ require .Equal (t , time .Unix (0 , 1422568543000000000 ), acc .Metrics [0 ].Time )
547+ }
518548}
519549
520550func TestWriteWithPrecisionNoTimestamp (t * testing.T ) {
0 commit comments