private void Spider_FetchCompleted(object Sender, FetchCompleteEventArgs args)
        {
            var senador = new Lib.Senado.Leg.Senador()
            {
                CodigoSenador = ConversionHelper.ToInt(args.Link.Parts[3], 0),
            };

            var hObj = args.GetHObject();

            var dl_dd = hObj["dd"].ToArray();

            senador.NomeCivil     = dl_dd[0].Trim();
            senador.Nascimento    = dl_dd[1].Trim();
            senador.Naturalidade  = TextExtensions.RemoveExcessiveWhitespaces(dl_dd[2]);
            senador.LocalGabinete = dl_dd[3].Trim();

            // funcionários
            var funcionarios = new List <Lib.Senado.Leg.FuncionarioGabinete>();
            var todosTrs     = hObj["tr"];

            foreach (var linha in todosTrs)
            {
                var tds = linha["td"];
                if (tds.IsEmpty()) // é header da tabela
                {
                    continue;
                }

                var id   = ConversionHelper.ToInt(tds[0]["a"].GetHrefValue().Split('=')[1], 0);
                var func = new Lib.Senado.Leg.FuncionarioGabinete()
                {
                    Senador           = senador.CodigoSenador,
                    CodigoFuncionario = id,
                    Nome       = tds[0]["span"].GetValue(),
                    Funcao     = tds[1].GetValue(),
                    NomeFuncao = tds[2].GetValue(),
                };

                if (funcionarios.Any(o => o.CodigoFuncionario == id))
                {
                    continue;
                }

                funcionarios.Add(func);
            }
            senador.Gabinete = funcionarios.ToArray();

            Senadores.Add(senador);
        }
        public void Extensions_TextExtensions_RemoveExcessiveWhitespacesFalse(string Input, string Expected)
        {
            var actual = TextExtensions.RemoveExcessiveWhitespaces(Input, false);

            Assert.Equal(Expected, actual);
        }