text: # -*- coding: utf-8 -*-
  # (C) 2015 Muthiah Annamalai
  
  import sys
  
  # setup the paths
  from opentamiltests import *
  from solthiruthi.data_parser import *
  from solthiruthi.solthiruthi import Solthiruthi
  
  
  class CmdLineIO(unittest.TestCase):
      def test_CLI_interface_help(self):
          return
          # find a way to run this test which exits the suite
          _, parser = Solthiruthi.get_CLI_options(do_parse=False)
          args = parser.parse_args(["--help"])
          self.assertEqual(args.help, True)
  
      def test_CLI_defaults(self):
          _, parser = Solthiruthi.get_CLI_options(do_parse=False)
          args = parser.parse_args(["-stdin"])
          self.assertEqual(args.files, "")
          self.assertEqual(args.help, False)
          self.assertEqual(args.nalt, 10)
          self.assertEqual(args.Dictionary, ["std"])
          self.assertEqual(args.dialects, ["std"])
  
      def test_CLI_files(self):
          ips = ["-files", "poonga", "vanam", "sethu", "ezhuthu"]
          _, parser = Solthiruthi.get_CLI_options(do_parse=False)
          args = parser.parse_args(ips)
          self.assertEqual(args.files, ips[1:])
  
      def test_CLI_dicts(self):
          ips = ["-Dict", "std", "wikipedia", "madurai"]
          _, parser = Solthiruthi.get_CLI_options(do_parse=False)
          args = parser.parse_args(ips)
          self.assertEqual(args.Dictionary, ips[1:])
  
  
  class DataParserTest(unittest.TestCase):
      def test_worlists(self):
          obj = DataParser.run(["data/maligaiporul.txt", "data/vilangugal.txt"])
          r = obj.analysis()
          self.assertEqual(r["catlen"], 5)
          # self.assertEqual(r['total'],141)
          self.assertEqual(
              sorted(list(map(len, r["dict"].values()))), sorted([56, 28, 15, 8, 3])
          )
  
  
  if __name__ == "__main__":
      unittest.main()
  