Sha256: 5f3d5ce4d61a9886473f6f78e059e1629f6967b165ec53da24c2cf70ba8d8f28
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
test_dir = File.dirname(__FILE__) $:.unshift test_dir unless $:.include?(test_dir) require 'test_helper' require 'couchtiny' require 'couchtiny/document' require 'workflow' class User < CouchTiny::Document include Workflow workflow do state :submitted do event :activate_via_link, :transitions_to => :proved_email end state :proved_email end def load_workflow_state self[:workflow_state] end def persist_workflow_state(new_value) self[:workflow_state] = new_value save! end end class CouchtinyExample < Test::Unit::TestCase def setup db = CouchTiny::Database.url("http://127.0.0.1:5984/test-workflow") db.delete_database! rescue nil db.create_database! User.use_database db end test 'CouchDB persistence' do user = User.new :email => 'manya@example.com' user.save! assert user.submitted? user.activate_via_link! assert user.proved_email? reloaded_user = User.get user.id puts reloaded_user.inspect assert reloaded_user.proved_email?, 'Reloaded user should have the desired workflow state' end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
workflow_on_mongoid-1.0.0.0 | test/couchtiny_example.rb |
workflow_on_mongoid-0.8.0.7 | test/couchtiny_example.rb |