Sha256: dbb04d11be705f5cd2b57c0d260a1083179f4cdf82a775319e20641631eb2b0b

Contents?: true

Size: 1.05 KB

Versions: 21

Compression:

Stored size: 1.05 KB

Contents

require 'test_helper'

class CassandraObject::CallbacksTest < CassandraObject::TestCase
  class TestIssue < CassandraObject::BaseSchemaless
    self.column_family = 'Issues'
    string :description

    %w(before_validation after_validation after_save after_create after_update after_destroy).each do |method|
      send(method) do
        callback_history << method
      end
    end

    def reset_callback_history
      @callback_history = []
    end

    def callback_history
      @callback_history ||= []
    end
  end

  test 'create' do
    issue = TestIssue.create

    assert_equal ['before_validation', 'after_validation', 'after_save', 'after_create'], issue.callback_history
  end

  test 'update' do
    issue = TestIssue.create
    issue.reset_callback_history

    issue.update_attribute :description, 'foo'

    assert_equal ['after_save', 'after_update'], issue.callback_history
  end

  test 'destroy' do
    issue = TestIssue.create
    issue.reset_callback_history

    issue.destroy

    assert_equal ['after_destroy'], issue.callback_history
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
extendi-cassandra_object-1.1.1 test/unit/callbacks_test.rb
extendi-cassandra_object-1.1.0 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.20 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.19 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.18 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.17 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.16 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.15 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.14 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.13 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.12 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.11 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.10 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.9 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.8 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.7 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.6 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.5 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.4 test/unit/callbacks_test.rb
extendi-cassandra_object-1.0.1 test/unit/callbacks_test.rb