code: def test_fullheader1(self):
      # Parsing trivial header with nothing.
      with open(test1) as ofile:
          rel, attrs = read_header(ofile)
  
      # Test relation
      assert_(rel == "test1")
  
      # Test numerical attributes
      assert_(len(attrs) == 5)
      for i in range(4):
          assert_(attrs[i].name == "attr%d" % i)
          assert_(attrs[i].type_name == "numeric")
  
      # Test nominal attribute
      assert_(attrs[4].name == "class")
      assert_(
          attrs[4].values == ("class0", "class1", "class2", "class3")
      )
  
imports: import datetime
  import os
  import sys
  from os.path import join
  from io import StringIO
  import numpy
  from numpy.testing import assert_array_almost_equal, assert_array_equal, assert_equal, assert_
  from pytest import raises
  from scipy.io.arff import loadarff
  from scipy.io.arff._arffread import read_header, ParseArffError
label_desc: Use image node_id 3 for calling the TestHeader obj's underlying member method code with example usage: obj.test_fullheader1() without return types