Runtime assertions for Ruby literal.fun
ruby
5
fork

Configure Feed

Select the types of activity you want to include in your feed.

Make `prop?` accept a description

Closes #354

+10 -2
+2 -2
lib/literal/properties.rb
··· 13 13 base.include(base.__send__(:__literal_extension__)) 14 14 end 15 15 16 - def prop?(name, type, kind = :keyword, reader: false, writer: false, predicate: false, &coercion) 17 - prop(name, _Union(type, Literal::Undefined), kind, reader:, writer:, predicate:, default: Literal::Undefined, description: nil, &coercion) 16 + def prop?(name, type, kind = :keyword, reader: false, writer: false, predicate: false, description: nil, &coercion) 17 + prop(name, _Union(type, Literal::Undefined), kind, reader:, writer:, predicate:, default: Literal::Undefined, description:, &coercion) 18 18 end 19 19 20 20 def prop(name, type, kind = :keyword, reader: false, writer: false, predicate: false, default: nil, description: nil, &coercion)
+8
test/properties.test.rb
··· 38 38 refute_raises { example.new(example: "Hello") } 39 39 end 40 40 41 + test "prop? accepts a description" do 42 + example = Class.new(Example) do 43 + prop? :example, String, description: "An optional example" 44 + end 45 + 46 + assert_equal example.literal_properties[:example].description, "An optional example" 47 + end 48 + 41 49 test "positional splats are optional" do 42 50 example = Class.new(Example) do 43 51 prop :example, _Array(String), :*