Runtime assertions for Ruby literal.fun
ruby
5
fork

Configure Feed

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

Stop freezing Literal::Data properties (#252)

authored by

Joel Drapper and committed by
GitHub
3370350a 63dcaf97

-29
-6
lib/literal/data.rb
··· 15 15 @literal_properties = Literal::Properties::DataSchema.new 16 16 end 17 17 end 18 - 19 - private 20 - 21 - def __literal_property_class__ 22 - Literal::DataProperty 23 - end 24 18 end 25 19 end
-16
lib/literal/data_property.rb
··· 1 - # frozen_string_literal: true 2 - 3 - class Literal::DataProperty < Literal::Property 4 - def generate_initializer_assign_value(buffer = +"") 5 - buffer << 6 - "@" << 7 - @name.name << 8 - " = " << 9 - escaped_name << 10 - ".frozen? ? " << 11 - escaped_name << 12 - " : " << 13 - escaped_name << 14 - ".freeze\n" 15 - end 16 - end
-7
test/data.test.rb
··· 17 17 expect(person).to_be(:frozen?) 18 18 end 19 19 20 - test "mutable attributes are duplicated and frozen" do 21 - name = +"John" 22 - person = Person.new(name:) 23 - 24 - expect(person.name).to_be(:frozen?) 25 - end 26 - 27 20 test "immutable attributes are not duplicated" do 28 21 name = "John" 29 22 person = Person.new(name:)