/// @brief	Extracts the test information from the current test script line.
        ///
        ///	@throw	Throws a scriptException on syntax failure.
        ///
        /// @return	The populated Info for the test.  If the object has no more
        ///			script lines the Info.isValid() will return false.
        public Info GetNextTest()
        {
            this.fileAssert( m_scriptStream != null, "File not initialised" );
            this.fileAssert( m_scriptStream.CanRead, "File not open" );

            Info    info = new Info();
            string  buff = m_reader.ReadLine();

            if (buff.Length > 0) {
                info.SetNull(false);
                this.ProcessLine(info, buff);
            }
            return info;
        }