# File lib/rspec-puppet/matchers/create_generic.rb, line 116
      def description
        values = []
        value_str_prefix = "with"

        if @expected_params_count
          values << "exactly #{@expected_params_count} parameters"
        end

        if @expected_params.any?
          values.concat(generate_param_list(@expected_params, :should))
        end

        if @expected_undef_params.any?
          values.concat(generate_param_list(@expected_undef_params, :not))
        end

        if @notifies.any?
          value_str_prefix = "that notifies"
          values = @notifies
        end

        if @subscribes.any?
          value_str_prefix = "that subscribes to"
          values = @subscribes
        end

        if @requires.any?
          value_str_prefix = "that requires"
          values = @requires
        end

        if @befores.any?
          value_str_prefix = "that comes before"
          values = @befores
        end

        unless values.empty?
          if values.length == 1
            value_str = " #{value_str_prefix} #{values.first}"
          else
            value_str = " #{value_str_prefix} #{values[0..-2].join(", ")} and #{values[-1]}"
          end
        end

        "contain #{@referenced_type}[#{@title}]#{value_str}"
      end