Testing Directed Acyclic Graph via Structural, Supervised and Generative Adversarial Learning