Ao meu ver, com essas infos, se você já tem as 2 funções e uma fica sobre a outra acredito que você esteja salvando em
obj.situacao = testaValidade() //res funcão testa cpf e cnpj
obj.situacao = testaDuplicidade() //res funcão testa duplicidade
Uma sobrescreve a outra, então você tem que salvar como um array, situacao[], dessa forma tendo 2 erros você terá 2 itens.
obj.situacao.push() = testaValidade() //res funcão testa cpf e cnpj
obj.situacao.push() = testaDuplicidade() //res funcão testa duplicidade
Foi o que consegui entender, porque aparemente as 2 funções funcionam, você consegue extrair os dados e popular a tabela, seria isso mesmo?