Change-Id: Id3f569d94d347af2f5e27513fa01c5a1e8e30fd9
1. Added functional tests. 2. Added negative tests. Change-Id: Id346b66c024161a3755abfa5137f91e38759da21