Function(s) to test:
    - newgame()
    - loadCheckGame()
    - getDoors()
    - isDirectory()
    - get_schema_name()
    - isAllowedChar()

Input function type and test scope:
    A - valid data with known output (check correctness)
    B - structured, but not valid data (check strength)
    C - structured, with random data (check strength)

Scope: Increase the detection of errors that could
       determine conditions of software vulnerabilities.
       
Output: input and (possible) comments,
        (possible) function errors/success,
        (possible) explanations and/or solutions.
        
        
        
----------------------------------------------------------------------------------------------------------
TEST n°1:

Data input (B): newgame()

         /*
            schemaFileName as value NULL

            Return value is -1
            
        */

No errors.       
----------------------------------------------------------------------------------------------------------
TEST n°2:

Data input (C): loadCheckGame()

        /*
            Random schema with:
                Row and Column numbers from 0 to 110
                
                N.          Type   Location  Status
                1 or more   START     ?        ok
                ?           DOOR      ?        ?
                ?           OPEN      ?        ?
                ?           CLOSE     ?        ?              

            Return value rapresent the number of errors that occurs
            
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°3:

Data input (C): newgame()

         /*
            Random schema with:
                Row and Column numbers from 0 to 110
                
                N.          Type   Location  Status
                1 or more   START     ?        ok
                ?           DOOR      ?        ?
                ?           OPEN      ?        ?
                ?           CLOSE     ?        ?              

            Return value is -1 if occurs and error, >0 otherwise
            
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°4:

Data input (A): getDoors()

         /*
            Map where 
            START = S, DOOR = D,
            FREE = . , CLOSE = X
            
            S...D
            .....
            .....
            .....
            D...D
            
            Number of doors = 3
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°5:

Data input (A) : getDoors()

          /*
            Map where 
            START = S, DOOR = D,
            FREE = . , CLOSE = X
            
            S....
            .....
            .....
            .....
            .....
            
            No doors in the schema
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°6:

Data input (C) : getDoors()

        /*
            Schema with:
                Row and Column numbers from 2 to 100
                
                N.          Type       Location	    Status
                1	        START       (0,0)         ok
                ?           DOOR         ?            ?
                ?           FREE         ?            ?        
		        ?	        CLOSE	     ?	          ?

		     Will return the number of doors in the schema
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°7:

Data input (A) : isDirectory() 

        /*
            Path is an existent directory

            Return true
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°8:

Data input (B) : isDirectory()

        /*
            Path is a file
            
            Return false
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°9:

Data input (A) : isDirectory()

         /*
            Path is NULL

            Return false
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°10:

Data input (A) : get_schema_name()

         /*
            Try to getting the file name in two full
            directory and in a empty directory.
            
            For full directory, returns the relative path
                of the file.
            For empty directory, returns an empty string.    
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°11:

Data input (A) : isallowedchar()

         /*
            Test all the possible correct check and some
            impossible check for a given char.
        
            Return true or false.
        */

No errors.
----------------------------------------------------------------------------------------------------------
TEST n°12:

Data input (C) : isallowedchar()

         /*
            Test all the possible correct check and some
            impossible check for all the possible chars.
        
            Return true or false.
        */

No errors.
----------------------------------------------------------------------------------------------------------


