instance method test_to_param

Ruby on Rails 7.0.10

Since v3.0.20

Available in: v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

test_to_param()

Passes if the object’s model responds to to_param and if calling this method returns nil when the object is not persisted. Fails otherwise.

to_param is used to represent the object’s key in URLs. Implementers can decide to either raise an exception or provide a default in case the record uses a composite primary key. There are no tests for this behavior in lint because it doesn’t make sense to force any of the possible implementation strategies on the implementer.

Source
# File activemodel/lib/active_model/lint.rb, line 46
      def test_to_param
        assert_respond_to model, :to_param
        def model.to_key() [1] end
        def model.persisted?() false end
        assert model.to_param.nil?, "to_param should return nil when `persisted?` returns false"
      end

Defined in activemodel/lib/active_model/lint.rb line 46 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveModel::Lint::Tests

Type at least 2 characters to search.

↑↓ navigate · open · esc close