Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
paranoia
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ikcrm_common
paranoia
Commits
5e1cfd09
Commit
5e1cfd09
authored
Jan 26, 2012
by
curtis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implement persisted? method. Closes #17
parent
f05f83dc
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
84 additions
and
15 deletions
+84
-15
.gitignore
+1
-0
.rvmrc
+48
-0
Gemfile.lock
+17
-15
lib/paranoia.rb
+7
-0
test/paranoia_test.rb
+11
-0
No files found.
.gitignore
View file @
5e1cfd09
pkg/*
*.gem
.bundle
tmp
.rvmrc
0 → 100644
View file @
5e1cfd09
#!/usr/bin/env bash
# This is an RVM Project .rvmrc file, used to automatically load the ruby
# development environment upon cd'ing into the directory
# First we specify our desired <ruby>[@<gemset>], the @gemset name is optional.
environment_id
=
"ruby-1.9.2@paranoia"
#
# First we attempt to load the desired environment directly from the environment
# file. This is very fast and efficicent compared to running through the entire
# CLI and selector. If you want feedback on which environment was used then
# insert the word 'use' after --create as this triggers verbose mode.
#
if
[[
-d
"
${
rvm_path
:-
$HOME
/.rvm
}
/environments"
\
&&
-s
"
${
rvm_path
:-
$HOME
/.rvm
}
/environments/
$environment_id
"
]]
;
then
\.
"
${
rvm_path
:-
$HOME
/.rvm
}
/environments/
$environment_id
"
[[
-s
".rvm/hooks/after_use"
]]
&&
.
".rvm/hooks/after_use"
else
# If the environment file has not yet been created, use the RVM CLI to select.
rvm
--create
use
"
$environment_id
"
fi
#
# If you use an RVM gemset file to install a list of gems (*.gems), you can have
# it be automatically loaded. Uncomment the following and adjust the filename if
# necessary.
#
# filename=".gems"
# if [[ -s "$filename" ]] ; then
# rvm gemset import "$filename" | grep -v already | grep -v listed | grep -v complete | sed '/^$/d'
# fi
#
# If you use bundler and would like to run bundle each time you enter the
# directory, you can uncomment the following code.
#
# Ensure that Bundler is installed. Install it if it is not.
if
!
command
-v
bundle
>
/dev/null
;
then
printf
"The rubygem 'bundler' is not installed. Installing it now.
\n
"
gem install bundler
fi
# Bundle while reducing excess noise.
printf
"Bundling your gems. This may take a few minutes on a fresh clone.
\n
"
bundle |
grep
-v
'^Using '
|
grep
-v
' is complete'
| sed
'/^$/d'
Gemfile.lock
View file @
5e1cfd09
...
...
@@ -7,22 +7,24 @@ PATH
GEM
remote: http://rubygems.org/
specs:
activemodel (3.0.8)
activesupport (= 3.0.8)
builder (~> 2.1.2)
i18n (~> 0.5.0)
activerecord (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
arel (~> 2.0.10)
tzinfo (~> 0.3.23)
activesupport (3.0.8)
arel (2.0.10)
builder (2.1.2)
i18n (0.5.0)
activemodel (3.2.0)
activesupport (= 3.2.0)
builder (~> 3.0.0)
activerecord (3.2.0)
activemodel (= 3.2.0)
activesupport (= 3.2.0)
arel (~> 3.0.0)
tzinfo (~> 0.3.29)
activesupport (3.2.0)
i18n (~> 0.6)
multi_json (~> 1.0)
arel (3.0.0)
builder (3.0.0)
i18n (0.6.0)
multi_json (1.0.4)
rake (0.8.7)
sqlite3 (1.3.
3
)
tzinfo (0.3.
28
)
sqlite3 (1.3.
5
)
tzinfo (0.3.
31
)
PLATFORMS
ruby
...
...
lib/paranoia.rb
View file @
5e1cfd09
...
...
@@ -42,4 +42,11 @@ class ActiveRecord::Base
def
self
.
paranoid?
;
false
;
end
def
paranoid?
;
self
.
class
.
paranoid?
;
end
# Override the persisted method to allow for the paranoia gem.
# If a paranoid record is selected, then we only want to check
# if it's a new record, not if it is "destroyed".
def
persisted?
paranoid?
?
!
new_record?
:
super
end
end
test/paranoia_test.rb
View file @
5e1cfd09
...
...
@@ -30,6 +30,17 @@ class ParanoiaTest < Test::Unit::TestCase
assert_equal
true
,
ParanoidModel
.
new
.
paranoid?
end
def
test_paranoid_models_to_param
model
=
ParanoidModel
.
new
model
.
save
to_param
=
model
.
to_param
model
.
destroy
assert_not_equal
nil
,
model
.
to_param
assert_equal
to_param
,
model
.
to_param
end
def
test_destroy_behavior_for_plain_models
model
=
PlainModel
.
new
assert_equal
0
,
model
.
class
.
count
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment