class_docstr: Notes: GAN may yield unstable results, so the test is design for running
  models only, without any performance check.
class_docstr_tok: ["Notes",":","GAN","may","yield","unstable","results",",","so","the","test","is","design","for","running","models","only",",","without","any","performance","check","."]
code: def setUp(self):
      self.n_train = 1000
      self.n_test = 200
      self.n_features = 2
      self.contamination = 0.1
      # GAN may yield unstable results; turning performance check off
      # self.roc_floor = 0.8
      (
          self.X_train,
          self.X_test,
          self.y_train,
          self.y_test,
      ) = generate_data(
          n_train=self.n_train,
          n_test=self.n_test,
          n_features=self.n_features,
          contamination=self.contamination,
          random_state=42,
      )
  
      self.clf = SO_GAAL(contamination=self.contamination)
      self.clf.fit(self.X_train)
  
imports: from __future__ import division
  from __future__ import print_function
  import os
  import sys
  import unittest
  from numpy.testing import assert_equal
  from numpy.testing import assert_raises
  from sklearn.base import clone
  from pyod.models.so_gaal import SO_GAAL
  from pyod.utils.data import generate_data
label_desc: Use image node_id 1 for calling the TestSO_GAAL obj's underlying member method code with example usage: obj.setUp() without return types