private void ImportarArquivo(string arquivo, ResultadoImportação resultado)
        {
            try
            {
                ParserXmlAtacadoCancelamento parser = new ParserXmlAtacadoCancelamento(arquivo);

                if (!parser.Cancelamento)
                {
                    resultado.ArquivosIgnorados.Adicionar(new ArquivoIgnorado(arquivo, Motivo.NãoÉCancelamento));
                    return;
                }

                string id = SaídaFiscal.ObterIdNfe(parser.Id);

                if (idsJáCancelados.Contains(id))
                {
                    resultado.ArquivosIgnorados.Adicionar(new ArquivoIgnorado(arquivo, Motivo.CancelamentoJáRegistrado, id));
                    return;
                }

                if (!idsSaídas.Contains(id))
                { 
                    throw new NotaInexistente(id);
                }

                SaídaFiscal.Cancelar(id);
                resultado.ArquivosSucesso.Adicionar(new Arquivo(arquivo, id));
                idsJáCancelados.Add(id);
            }
            catch (Exception erro)
            {
                resultado.AdicionarFalha(arquivo, erro);
            }
        }
        public void DeveInterpretarId()
        {
            ParserXmlAtacadoCancelamento parser = new ParserXmlAtacadoCancelamento(ARQUIVO_CANCELAMENTO);

            Assert.AreEqual("ID31101218219329000103550010000000988538006600", parser.Id);
        }
        public void DeveInterpretarCancelamento()
        {
            ParserXmlAtacadoCancelamento parser = new ParserXmlAtacadoCancelamento(ARQUIVO_CANCELAMENTO);

            Assert.IsTrue(parser.Cancelamento);
        }