summaryrefslogtreecommitdiff
path: root/stdlib/tst-fmtmsg.c
blob: b7948c5f1eaff603b36076f341367a80f9219140 (plain)
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
#include <fmtmsg.h>
#include <mcheck.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>


#define MM_TEST 10

static int
do_test (void)
{
  int result = 0;

  mtrace ();

  char TEST[] = "ABCD";
  if (addseverity (MM_TEST, TEST) != MM_OK)
    {
      puts ("addseverity failed");
      result = 1;
    }
  strcpy (TEST, "TEST");

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_HALT, "halt",
	      "should print message for MM_HALT", "GLIBC:tst-fmtmsg:1")
      != MM_OK)
    result = 1;

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_ERROR, "halt",
	      "should print message for MM_ERROR", "GLIBC:tst-fmtmsg:2")
      != MM_OK)
    result = 1;

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_WARNING, "halt",
	      "should print message for MM_WARNING", "GLIBC:tst-fmtmsg:3")
      != MM_OK)
    result = 1;

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_INFO, "halt",
	      "should print message for MM_INFO", "GLIBC:tst-fmtmsg:4")
      != MM_OK)
    result = 1;

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_NOSEV, "halt",
	      "should print message for MM_NOSEV", "GLIBC:tst-fmtmsg:5")
      != MM_OK)
    result = 1;

  if (fmtmsg (MM_PRINT, "GLIBC:tst-fmtmsg", MM_TEST, "halt",
	      "should print message for MM_TEST", "GLIBC:tst-fmtmsg:6")
      != MM_OK)
    result = 1;

  if (addseverity (MM_TEST, NULL) != MM_OK)
    {
      puts ("second addseverity failed");
      result = 1;
    }

  if (addseverity (MM_TEST, NULL) != MM_NOTOK)
    {
      puts ("third addseverity unexpectedly succeeded");
      result = 1;
    }

  char *p = strdup ("TEST2");
  if (addseverity (MM_TEST, p) != MM_OK)
    {
      puts ("fourth addseverity failed");
      result = 1;
    }
  if (addseverity (MM_TEST, "TEST3") != MM_OK)
    {
      puts ("fifth addseverity failed");
      result = 1;
    }

  free (p);

  return result;
}

#define TEST_FUNCTION do_test ()
#include "../test-skeleton.c"