summaryrefslogtreecommitdiff
path: root/src/pal/tests/palsuite/pal_specific/PAL_get_stdin/test1/PAL_get_stdin.c
blob: 5d1fd23f92bdb7dd1c81ed62acb58998ccde6161 (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
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.

/*=============================================================
**
** Source: pal_get_stdin.c
**
** Purpose: Positive test the PAL_get_stdout API.
**          Call PAL_get_stdin to retrieve the PAL standard input
**          stream pointer.
**          This test case should be run manually.
**          

**
**============================================================*/
#include <palsuite.h>

int __cdecl main(int argc, char *argv[])
{
    int err;
    FILE *pPAL_stdin = NULL;  
    char Buffer[256];
    
    /*Initialize the PAL environment*/
    err = PAL_Initialize(argc, argv);
    if(0 != err)
    {
        return FAIL;
    }

    /*retrieve the PAL standard input stream pointer*/
    pPAL_stdin = PAL_get_stdin();  
    if(NULL == pPAL_stdin)
    {
        Fail("\nFailed to call PAL_get_stdin API to retrieve the "
                "PAL standard input stream pointer, "
                "error code = %u\n", GetLastError());
    }    

    /*zero the buffer*/
    memset(Buffer, 0, 256);

    printf("\nPlease input some words: (less than 255 characters)\n");     

    /*further test the input stream*/
    /*read message from the PAL standard input stream*/
    if(NULL == fgets(Buffer, 255, pPAL_stdin))
    {
        Fail( "Failed to call fgets to get a string from PAL standard "
            "input stream, error code=%u\n", GetLastError());
    }    
    else
    {
        if(1 == strlen(Buffer) && Buffer[0] == '\n')
        {
            printf("\nEmpty input!\n");
        }
        else
        {
            printf("\nYour input words are:\n%s\n", Buffer);
        }
    }

    
    PAL_Terminate();
    return PASS;
}