public void MeiDocumentTest()
    {
      Mei blubb = new Mei();
      MeiDocument testDoc = new MeiDocument(blubb);

      Assert.IsNotNull(testDoc);
    }
 private static void LoadMei(Mei mei)
 {
     mei.AdicionarTaxa(Taxa.DAS, 49.9m);
     mei.AdicionarTaxa(Taxa.ISS, 2);
     mei.AdicionarTaxa(Taxa.IRPJ, 12);
     mei.AdicionarBeneficio(Beneficio.ValeRefeicao, 320m);
 }
        static void Main(string[] args)
        {
            string     path      = string.Format(@"C:\Users\{0}\Desktop\Matheus Eduardo - Resultado Da Parcial 1.txt", Environment.UserName);
            TextWriter writer    = new StreamWriter(path, false);
            Cooperado  cooperado = new Cooperado(2700, 160);

            LoadCooperado(cooperado);
            Console.WriteLine("Aguarde, gerando informações do Cooperado...");
            Escritor.ImprimirDados(writer, cooperado);

            Clt clt = new Clt(1000, 160);

            LoadClt(clt);
            Console.WriteLine("Aguarde, gerando informações do Clt...");
            Escritor.ImprimirDados(writer, clt);

            Mei empreendedor = new Mei(2100, 160);

            LoadMei(empreendedor);
            Console.WriteLine("Aguarde, gerando informações do Mei...");
            Escritor.ImprimirDados(writer, empreendedor);


            writer.Flush();
            writer.Dispose();
            writer.Close();
            Console.WriteLine("O arquivo com os resultados foi gerado em {0}", path);
            Console.Read();
        }
 private void ExecuteMeiImport( Mei mei, string cmdParam , string fileName)
 {
     var template = @"""{0}"" {1} {2} {3} {4} {5}";
     Process process;
     string paramsLine;
     paramsLine = template.F(
         mei.EasitraxDatabase,
         mei.CommandLineParam1,
         mei.Login,
         Decrypt(mei.Password),
         cmdParam,
         Path.Combine(mei.OutputDirectory, fileName));
     Logger.Info(cmdParam + " params: " + paramsLine);
     process = Process.Start(mei.ExecutablePath, paramsLine);
     if (!process.WaitForExit(Config.Timeout*1000*60))
         throw new Exception("MEI. Data retrieving timeout expired.");
 }