# File gstreamer/tests/misc.rb, line 258
    def test(tc)
        # Test the pad as a Gst::Object
        super(tc)
        # Test name
        tc.assert_instance_of(String, name)
        # Test direction
        valid_directions = [
            Gst::Pad::DIRECTION_SRC,
            Gst::Pad::DIRECTION_SINK
        ]
        tc.assert_instance_of(Fixnum, dir  = direction)
        tc.assert valid_directions.include?(dir) 
        # Test pad template
        if pt = pad_template
            tc.assert_instance_of(Gst::PadTemplate, pt)
            pt.test(tc)
        end
        # Test formats
        i = 0
        each_format { |f| f.test(tc); i += 1 } 
        tc.assert_instance_of(Array, a  = formats)
        tc.assert a.length == i
        tc.assert_bool b = provides_formats?
        tc.assert a.length == 0 unless b
        a.each { |f| f.test(tc) }
        # Test query types
        i = 0
        each_query_type { |f| f.test(tc); i += 1 } 
        tc.assert_instance_of(Array, a  = query_types)
        tc.assert_equal(a.length, i)
        tc.assert_bool b = provides_query_types?
        tc.assert_equal(a.length, 0) unless b
        a.each { |f| f.test(tc) }
        # XXX Test event masks 
        # Test flags
        flags = {
            disabled?    => Gst::Pad::FLAG_DISABLED,
            negotiating? => Gst::Pad::FLAG_NEGOTIATING
        }
        test_flags(tc, flags)
    end