Skip to content
This repository was archived by the owner on Apr 11, 2024. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
pkg/*
*.gem
.bundle
coverage
coverage
.rvmrc
.idea
2 changes: 0 additions & 2 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,6 @@ PLATFORMS
ruby

DEPENDENCIES
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
rcov
rspec
simplecov
Expand Down
2 changes: 1 addition & 1 deletion lib/vestal_versions/creation.rb
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def create_initial_version?

# Creates an initial version upon creation of the parent record.
def create_initial_version
versions.create(version_attributes.merge(:number => 1))
versions.create(version_attributes.merge(:number => 1, :modifications => attributes))
reset_version_changes
reset_version
end
Expand Down
2 changes: 1 addition & 1 deletion lib/vestal_versions/deletion.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ def delete_version?
end

def create_destroyed_version
create_version({:modifications => attributes, :number => last_version + 1, :tag => 'deleted'})
create_version(version_attributes.merge(:modifications => attributes, :tag => 'deleted'))
end

end
Expand Down
5 changes: 5 additions & 0 deletions spec/vestal_versions/creation_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,11 @@
User.prepare_versioned_options(:initial_version => true)
subject.versions.first.number.should == 1
end

it "stores a snapshot of the model attributes as modifications" do
User.prepare_versioned_options(:initial_version => true)
subject.versions.first.modifications.should == User.last.attributes
end
end

end
7 changes: 7 additions & 0 deletions spec/vestal_versions/deletion_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,13 @@
VestalVersions::Version.last.tag.should == 'deleted'
end

it "creates a version with user" do
user = User.create(:first_name => "Naruto", :last_name => "Uzumaki")
subject.updated_by = user

subject.destroy
VestalVersions::Version.last.user.should == user
end
end

context "deleted versions" do
Expand Down