Sha256: fbea3254798ee1fa60ef6813e83e87db1361e51f28ef1b0b0b47481c911f37a1
Contents?: true
Size: 1.85 KB
Versions: 1
Compression:
Stored size: 1.85 KB
Contents
require 'test_helper' module Opinions class IntegrationTestOpinionsPollable < MiniTest::Integration::TestCase def test_being_voted_by_any_conforming_object example_object = ExampleObject.new example_object.id = 123 ExampleTarget.send(:include, Pollable) ExampleTarget.send(:opinions, :example) example_target = ExampleTarget.new example_target.id = 456 example_target.example_by(example_object) assert Opinion.new(target: example_target, object: example_object, opinion: :example).exists? end def test_cancelling_a_vote_by_any_conforming_object example_object = ExampleObject.new example_object.id = 123 ExampleTarget.send(:include, Pollable) ExampleTarget.send(:opinions, :example) example_target = ExampleTarget.new example_target.id = 456 expected_opinion = Opinion.new(target: example_target, object: example_object, opinion: :example) expected_opinion.persist example_target.cancel_example_by(example_object) refute Opinion.new(target: example_target, object: example_object, opinion: :example).exists? end def test_counting_the_number_of_votes example_object_one = ExampleObject.new example_object_one.id = 123 example_object_two = ExampleObject.new example_object_two.id = 456 ExampleTarget.send(:include, Pollable) ExampleTarget.send(:opinions, :example) example_target = ExampleTarget.new example_target.id = 456 expected_opinion_one = Opinion.new(target: example_target, object: example_object_one, opinion: :example) expected_opinion_one.persist expected_opinion_two = Opinion.new(target: example_target, object: example_object_two, opinion: :example) expected_opinion_two.persist assert_equal 2, example_target.example_votes.count end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
opinions-0.0.1 | test/integration_test_opinions_pollable_mixin.rb |