dead_simple_cms 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +19 -0
- data/.rspec +2 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +266 -0
- data/Rakefile +17 -0
- data/dead_simple_cms.gemspec +47 -0
- data/lib/dead_simple_cms.rb +132 -0
- data/lib/dead_simple_cms/attribute/collection.rb +45 -0
- data/lib/dead_simple_cms/attribute/type/all.rb +104 -0
- data/lib/dead_simple_cms/attribute/type/base.rb +79 -0
- data/lib/dead_simple_cms/attribute/type/collection_support.rb +26 -0
- data/lib/dead_simple_cms/configuration.rb +50 -0
- data/lib/dead_simple_cms/file_uploader/base.rb +29 -0
- data/lib/dead_simple_cms/group.rb +58 -0
- data/lib/dead_simple_cms/group/configuration.rb +32 -0
- data/lib/dead_simple_cms/group/presenter.rb +23 -0
- data/lib/dead_simple_cms/rails/action_controller/extensions.rb +24 -0
- data/lib/dead_simple_cms/rails/action_controller/fragment_sweeper.rb +19 -0
- data/lib/dead_simple_cms/rails/action_view/extensions.rb +14 -0
- data/lib/dead_simple_cms/rails/action_view/form_builders/default.rb +16 -0
- data/lib/dead_simple_cms/rails/action_view/form_builders/interface.rb +72 -0
- data/lib/dead_simple_cms/rails/action_view/form_builders/simple_form.rb +43 -0
- data/lib/dead_simple_cms/rails/action_view/form_builders/simple_form_with_bootstrap.rb +19 -0
- data/lib/dead_simple_cms/rails/action_view/presenter.rb +63 -0
- data/lib/dead_simple_cms/section.rb +103 -0
- data/lib/dead_simple_cms/section/builder.rb +73 -0
- data/lib/dead_simple_cms/storage/base.rb +49 -0
- data/lib/dead_simple_cms/storage/database.rb +33 -0
- data/lib/dead_simple_cms/storage/memory.rb +20 -0
- data/lib/dead_simple_cms/storage/rails_cache.rb +19 -0
- data/lib/dead_simple_cms/storage/redis.rb +23 -0
- data/lib/dead_simple_cms/util/identifier.rb +40 -0
- data/lib/dead_simple_cms/util/identifier/dictionary.rb +65 -0
- data/lib/dead_simple_cms/version.rb +3 -0
- data/spec/dead_simple_cms/attribute/collection_spec.rb +46 -0
- data/spec/dead_simple_cms/attribute/type/all_spec.rb +252 -0
- data/spec/dead_simple_cms/attribute/type/base_spec.rb +117 -0
- data/spec/dead_simple_cms/configuration_spec.rb +117 -0
- data/spec/dead_simple_cms/file_uploader/base_spec.rb +35 -0
- data/spec/dead_simple_cms/group/configuration_spec.rb +24 -0
- data/spec/dead_simple_cms/group/presenter_spec.rb +28 -0
- data/spec/dead_simple_cms/group_spec.rb +65 -0
- data/spec/dead_simple_cms/rails/action_view/form_builders/default_spec.rb +8 -0
- data/spec/dead_simple_cms/rails/action_view/form_builders/simple_form_spec.rb +8 -0
- data/spec/dead_simple_cms/rails/action_view/form_builders/simple_form_with_bootstrap_spec.rb +8 -0
- data/spec/dead_simple_cms/rails/action_view/fragment_sweeper_spec.rb +22 -0
- data/spec/dead_simple_cms/rails/action_view/presenter_spec.rb +54 -0
- data/spec/dead_simple_cms/section/builder_spec.rb +28 -0
- data/spec/dead_simple_cms/section_spec.rb +78 -0
- data/spec/dead_simple_cms/storage/base_spec.rb +59 -0
- data/spec/dead_simple_cms/storage/database_spec.rb +51 -0
- data/spec/dead_simple_cms/storage/memory_spec.rb +25 -0
- data/spec/dead_simple_cms/storage/rails_cache_spec.rb +33 -0
- data/spec/dead_simple_cms/storage/redis_spec.rb +33 -0
- data/spec/dead_simple_cms/util/identifier/dictionary/duplciate_item_spec.rb +10 -0
- data/spec/dead_simple_cms/util/identifier/dictionary/invalid_entry_class_spec.rb +10 -0
- data/spec/dead_simple_cms/util/identifier/dictionary_spec.rb +42 -0
- data/spec/dead_simple_cms/util/identifier_spec.rb +27 -0
- data/spec/setup.rb +26 -0
- data/spec/setup/banner_presenter.rb +19 -0
- data/spec/setup/rspec_template_builder.rb +104 -0
- data/spec/setup/shared.rb +57 -0
- data/spec/setup/test_file_uploader.rb +12 -0
- data/spec/spec_helper.rb +48 -0
- metadata +221 -0
data/spec/setup.rb
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
require File.expand_path('../setup/test_file_uploader', __FILE__)
|
2
|
+
require File.expand_path('../setup/banner_presenter', __FILE__)
|
3
|
+
require File.expand_path('../setup/shared', __FILE__)
|
4
|
+
|
5
|
+
|
6
|
+
DeadSimpleCMS.configure do
|
7
|
+
|
8
|
+
default_form_builder :default
|
9
|
+
|
10
|
+
file_uploader_class DeadSimpleCMS::TestFileUploader
|
11
|
+
|
12
|
+
storage_class :database
|
13
|
+
|
14
|
+
group_configuration(:image_tag) do
|
15
|
+
image :url, :required => true
|
16
|
+
string :alt, :default => "Design Beautiful Books"
|
17
|
+
string :href, :hint => "Here is the hint.", :required => true
|
18
|
+
|
19
|
+
display do |group, html_options, image_html_options|
|
20
|
+
(image_html_options ||= {}).reverse_merge!(:alt => group.alt)
|
21
|
+
image_html_options[:alt] = image_alt_for_seo(image_html_options[:alt]) if image_html_options[:alt]
|
22
|
+
link_to_if(group.href, image_tag(group.url, image_html_options), group.href, html_options)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module DeadSimpleCMS
|
2
|
+
class BannerPresenter < DeadSimpleCMS::Group::Presenter
|
3
|
+
|
4
|
+
attr_reader :coupon, :options, :size
|
5
|
+
|
6
|
+
def render
|
7
|
+
link_to_if(group.href, image_tag(group.url, :alt => group.alt), group.href) if group.show
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def initialize_extra_arguments(coupon, options={})
|
13
|
+
@coupon, @options = coupon, options
|
14
|
+
@size = options.delete(:size) || :small # Currently we have two sizes for these banners: 715x85 and 890x123. - Aryk
|
15
|
+
raise("Invalid size: #{size}") unless [:small, :large].include?(size)
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
require 'rspec'
|
2
|
+
require 'spec_helper'
|
3
|
+
require 'active_support'
|
4
|
+
require 'fileutils'
|
5
|
+
|
6
|
+
# A little helper I created to make it easier to build the rspec template files for all the classes within a namespace.
|
7
|
+
module RSpec
|
8
|
+
|
9
|
+
def self.build_templates(*classes)
|
10
|
+
options = classes.extract_options!
|
11
|
+
|
12
|
+
classes.each do |klass|
|
13
|
+
filename = "spec/#{klass.to_s.underscore}_spec.rb"
|
14
|
+
if File.exists?(filename)
|
15
|
+
puts "#{filename} already exists. Overwrite it? y/n"
|
16
|
+
next unless %w{y yes}.include?(gets.strip.downcase)
|
17
|
+
end
|
18
|
+
|
19
|
+
FileUtils.mkdir_p(File.dirname(filename))
|
20
|
+
File.open(filename, 'w+') { |f| TemplateBuilder.new(klass, f).build! }
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.build_templates_from_namespace(*namespaces)
|
25
|
+
build_templates(*namespaces.map { |namespace| classes_from_namespace(namespace) }.flatten)
|
26
|
+
end
|
27
|
+
|
28
|
+
|
29
|
+
def self.classes_from_namespace(namespace, arr=[], original_namespace=nil)
|
30
|
+
original_namespace ||= namespace
|
31
|
+
|
32
|
+
namespace.constants.map(&namespace.method(:const_get)).each do |constant|
|
33
|
+
next if arr.include?(constant) || !constant.to_s.starts_with?(original_namespace.to_s)
|
34
|
+
arr << constant if constant.is_a?(Class)
|
35
|
+
classes_from_namespace(constant, arr, original_namespace) if constant.is_a?(Class) || constant.is_a?(Module)
|
36
|
+
end
|
37
|
+
arr
|
38
|
+
end
|
39
|
+
|
40
|
+
class TemplateBuilder
|
41
|
+
|
42
|
+
INDENT = " "
|
43
|
+
|
44
|
+
attr_reader :current_indent, :klass
|
45
|
+
|
46
|
+
def initialize(klass, target = "")
|
47
|
+
@klass = klass
|
48
|
+
@target = target
|
49
|
+
@current_indent = ""
|
50
|
+
end
|
51
|
+
|
52
|
+
def parse_file
|
53
|
+
FileParse.new(filename)
|
54
|
+
end
|
55
|
+
|
56
|
+
def build!
|
57
|
+
require_files
|
58
|
+
describe(klass) do
|
59
|
+
before_each do
|
60
|
+
|
61
|
+
end
|
62
|
+
klass.methods(false).each do |method_name| # class methods
|
63
|
+
describe(%{".#{method_name}"})
|
64
|
+
end
|
65
|
+
klass.instance_methods(false).each do |method_name| # instance methods
|
66
|
+
describe(%{"##{method_name}"})
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def require_files
|
72
|
+
w %{require "spec_helper"}, nil
|
73
|
+
end
|
74
|
+
|
75
|
+
def indent
|
76
|
+
@current_indent << INDENT
|
77
|
+
yield
|
78
|
+
ensure
|
79
|
+
@current_indent.gsub!(/^#{INDENT}/, '')
|
80
|
+
end
|
81
|
+
|
82
|
+
def before_each
|
83
|
+
w "before(:each) do", nil, "end", nil
|
84
|
+
end
|
85
|
+
|
86
|
+
def describe(what, &block)
|
87
|
+
w "describe #{what} do", nil
|
88
|
+
indent(&block) if block_given?
|
89
|
+
w "end", nil
|
90
|
+
end
|
91
|
+
|
92
|
+
# If nothing is passed in, will add one empty line.
|
93
|
+
def write_lines(*strings)
|
94
|
+
strings = [""] if strings.empty?
|
95
|
+
strings.each do |s|
|
96
|
+
line = "#{current_indent}#{s}"
|
97
|
+
line = "" if line.empty?
|
98
|
+
@target << "#{line}\n"
|
99
|
+
end
|
100
|
+
end
|
101
|
+
alias w write_lines
|
102
|
+
|
103
|
+
end
|
104
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
shared_context :sample_section do
|
2
|
+
|
3
|
+
let(:section) do
|
4
|
+
# Site announcement is an example of a potential use case. It leverages a lot of the functionality of the
|
5
|
+
# library, hence why we are teting against it.
|
6
|
+
DeadSimpleCMS::Section.new(:site_announcement, :path => "/") do
|
7
|
+
boolean :show_default, :default => false
|
8
|
+
string :coupon_code
|
9
|
+
group(:top_bar) do
|
10
|
+
string :css_class, :collection => %w{facebook default christmas green}, :default => "facebook"
|
11
|
+
string :strong, :default => "FREE Priority Shipping on Orders $50+"
|
12
|
+
string :normal
|
13
|
+
string :action
|
14
|
+
string :href
|
15
|
+
end
|
16
|
+
group(:banners) do
|
17
|
+
[[:small, 715, 85], [:large, 890, 123]].each do |size, width, height|
|
18
|
+
group size => :image_tag, :width => width, :height => height do
|
19
|
+
boolean :show
|
20
|
+
string :promotional_href, :hint => "Used for all custom coupon banners not from the site announcement."
|
21
|
+
display DeadSimpleCMS::BannerPresenter
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
shared_context :sample_storage do
|
30
|
+
include_context :sample_section
|
31
|
+
|
32
|
+
let(:attributes_hash) { subject.send(:attributes_hash) }
|
33
|
+
let(:attributes_hash_dump) { Psych.dump(attributes_hash) }
|
34
|
+
|
35
|
+
subject { described_class.new(section).tap { |x| x.serializer_class = Psych } }
|
36
|
+
end
|
37
|
+
|
38
|
+
shared_examples :group_display do
|
39
|
+
|
40
|
+
describe "#display" do
|
41
|
+
context "when presenter_class is set" do
|
42
|
+
it "should set the @presenter_class variable" do
|
43
|
+
subject.display :presenter_class
|
44
|
+
subject.instance_variable_get(:@presenter_class).should == :presenter_class
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
context "when block provided" do
|
49
|
+
it "should set it to the @render_proc" do
|
50
|
+
proc = lambda { "do something" }
|
51
|
+
subject.display(&proc)
|
52
|
+
subject.instance_variable_get(:@render_proc).should == proc
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
2
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
3
|
+
# Require this file using `require "spec_helper.rb"` to ensure that it is only
|
4
|
+
# loaded once.
|
5
|
+
|
6
|
+
require 'rubygems'
|
7
|
+
require 'bundler/setup'
|
8
|
+
|
9
|
+
require 'rails/all'
|
10
|
+
require 'simple_form'
|
11
|
+
|
12
|
+
require 'dead_simple_cms'
|
13
|
+
require File.expand_path('../setup', __FILE__)
|
14
|
+
|
15
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
16
|
+
RSpec.configure do |config|
|
17
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
18
|
+
config.run_all_when_everything_filtered = true
|
19
|
+
config.filter_run :focus
|
20
|
+
end
|
21
|
+
|
22
|
+
# Datbase setup.
|
23
|
+
require 'sqlite3'
|
24
|
+
ActiveRecord::Base.establish_connection(adapter: "sqlite3", database: "dead_simple_cms.sqlite3")
|
25
|
+
ActiveRecord::Base.silence do
|
26
|
+
ActiveRecord::Migration.verbose = false
|
27
|
+
ActiveRecord::Schema.define :version => 0 do
|
28
|
+
create_table :dead_simple_cms, :force => true do |t|
|
29
|
+
t.string :key
|
30
|
+
t.text :value
|
31
|
+
t.timestamps
|
32
|
+
end
|
33
|
+
add_index :dead_simple_cms, :key, :unique => true
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
#RSpec::Matchers.define :have_only_tag_values do |expected|
|
38
|
+
# match do |actual|
|
39
|
+
# actual = actual.tags if actual.class.respond_to?(:taggable?) && actual.class.taggable?
|
40
|
+
# same_elements?(actual.map(&:value), expected)
|
41
|
+
# end
|
42
|
+
#end
|
43
|
+
#
|
44
|
+
#RSpec::Matchers.define :have_same_elements do |expected|
|
45
|
+
# match do |actual|
|
46
|
+
# same_elements?(actual, expected)
|
47
|
+
# end
|
48
|
+
#end
|
metadata
ADDED
@@ -0,0 +1,221 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: dead_simple_cms
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.9.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Aryk Grosz
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-06-24 00:00:00.000000000 -07:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: activesupport
|
17
|
+
requirement: &2156091300 !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '3.0'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: *2156091300
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: activemodel
|
28
|
+
requirement: &2156090500 !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '3.0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: *2156090500
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: simple_form
|
39
|
+
requirement: &2156089880 !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
41
|
+
requirements:
|
42
|
+
- - ! '>='
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: '0'
|
45
|
+
type: :development
|
46
|
+
prerelease: false
|
47
|
+
version_requirements: *2156089880
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: rails
|
50
|
+
requirement: &2156088660 !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '3.0'
|
56
|
+
type: :development
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: *2156088660
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: rspec
|
61
|
+
requirement: &2156087880 !ruby/object:Gem::Requirement
|
62
|
+
none: false
|
63
|
+
requirements:
|
64
|
+
- - ! '>='
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '0'
|
67
|
+
type: :development
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: *2156087880
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: sqlite3
|
72
|
+
requirement: &2156087300 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: *2156087300
|
81
|
+
description: ! "Dead Simple CMS is a library for modifying different parts of your
|
82
|
+
website without the overhead of having a\nfullblown CMS. The idea with this library
|
83
|
+
is simple: provide an easy way to hook into different parts of your\napplication
|
84
|
+
(not only views) by defining the different parts to modify in an easy, straight-forward
|
85
|
+
DSL.\n\nThe basic components of this library include:\n\n * A DSL to define the
|
86
|
+
changeable values in your app\n * Form generators based on SimpleForm (with or without
|
87
|
+
Bootstrap) and default rails FormBuilder\n * Expandable storage mechanisms so you
|
88
|
+
can store the data in different locations\n * Currently supported: Redis, Database,
|
89
|
+
Memcache, even Memory (for testing)\n * Presenters/renderers so you can take groups
|
90
|
+
of variables and render them into your views (ie image_tag)\n\nWhat it doesn't have:\n\n
|
91
|
+
* Versioning - be able to look at old versions of the content\n * Timing - set start
|
92
|
+
and end time for different content\n * Page builder tools - this is not the right
|
93
|
+
tool if you want to design full pages\n"
|
94
|
+
email:
|
95
|
+
- aryk@mixbook.com
|
96
|
+
executables: []
|
97
|
+
extensions: []
|
98
|
+
extra_rdoc_files: []
|
99
|
+
files:
|
100
|
+
- .gitignore
|
101
|
+
- .rspec
|
102
|
+
- Gemfile
|
103
|
+
- LICENSE
|
104
|
+
- README.md
|
105
|
+
- Rakefile
|
106
|
+
- dead_simple_cms.gemspec
|
107
|
+
- lib/dead_simple_cms.rb
|
108
|
+
- lib/dead_simple_cms/attribute/collection.rb
|
109
|
+
- lib/dead_simple_cms/attribute/type/all.rb
|
110
|
+
- lib/dead_simple_cms/attribute/type/base.rb
|
111
|
+
- lib/dead_simple_cms/attribute/type/collection_support.rb
|
112
|
+
- lib/dead_simple_cms/configuration.rb
|
113
|
+
- lib/dead_simple_cms/file_uploader/base.rb
|
114
|
+
- lib/dead_simple_cms/group.rb
|
115
|
+
- lib/dead_simple_cms/group/configuration.rb
|
116
|
+
- lib/dead_simple_cms/group/presenter.rb
|
117
|
+
- lib/dead_simple_cms/rails/action_controller/extensions.rb
|
118
|
+
- lib/dead_simple_cms/rails/action_controller/fragment_sweeper.rb
|
119
|
+
- lib/dead_simple_cms/rails/action_view/extensions.rb
|
120
|
+
- lib/dead_simple_cms/rails/action_view/form_builders/default.rb
|
121
|
+
- lib/dead_simple_cms/rails/action_view/form_builders/interface.rb
|
122
|
+
- lib/dead_simple_cms/rails/action_view/form_builders/simple_form.rb
|
123
|
+
- lib/dead_simple_cms/rails/action_view/form_builders/simple_form_with_bootstrap.rb
|
124
|
+
- lib/dead_simple_cms/rails/action_view/presenter.rb
|
125
|
+
- lib/dead_simple_cms/section.rb
|
126
|
+
- lib/dead_simple_cms/section/builder.rb
|
127
|
+
- lib/dead_simple_cms/storage/base.rb
|
128
|
+
- lib/dead_simple_cms/storage/database.rb
|
129
|
+
- lib/dead_simple_cms/storage/memory.rb
|
130
|
+
- lib/dead_simple_cms/storage/rails_cache.rb
|
131
|
+
- lib/dead_simple_cms/storage/redis.rb
|
132
|
+
- lib/dead_simple_cms/util/identifier.rb
|
133
|
+
- lib/dead_simple_cms/util/identifier/dictionary.rb
|
134
|
+
- lib/dead_simple_cms/version.rb
|
135
|
+
- spec/dead_simple_cms/attribute/collection_spec.rb
|
136
|
+
- spec/dead_simple_cms/attribute/type/all_spec.rb
|
137
|
+
- spec/dead_simple_cms/attribute/type/base_spec.rb
|
138
|
+
- spec/dead_simple_cms/configuration_spec.rb
|
139
|
+
- spec/dead_simple_cms/file_uploader/base_spec.rb
|
140
|
+
- spec/dead_simple_cms/group/configuration_spec.rb
|
141
|
+
- spec/dead_simple_cms/group/presenter_spec.rb
|
142
|
+
- spec/dead_simple_cms/group_spec.rb
|
143
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/default_spec.rb
|
144
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/simple_form_spec.rb
|
145
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/simple_form_with_bootstrap_spec.rb
|
146
|
+
- spec/dead_simple_cms/rails/action_view/fragment_sweeper_spec.rb
|
147
|
+
- spec/dead_simple_cms/rails/action_view/presenter_spec.rb
|
148
|
+
- spec/dead_simple_cms/section/builder_spec.rb
|
149
|
+
- spec/dead_simple_cms/section_spec.rb
|
150
|
+
- spec/dead_simple_cms/storage/base_spec.rb
|
151
|
+
- spec/dead_simple_cms/storage/database_spec.rb
|
152
|
+
- spec/dead_simple_cms/storage/memory_spec.rb
|
153
|
+
- spec/dead_simple_cms/storage/rails_cache_spec.rb
|
154
|
+
- spec/dead_simple_cms/storage/redis_spec.rb
|
155
|
+
- spec/dead_simple_cms/util/identifier/dictionary/duplciate_item_spec.rb
|
156
|
+
- spec/dead_simple_cms/util/identifier/dictionary/invalid_entry_class_spec.rb
|
157
|
+
- spec/dead_simple_cms/util/identifier/dictionary_spec.rb
|
158
|
+
- spec/dead_simple_cms/util/identifier_spec.rb
|
159
|
+
- spec/setup.rb
|
160
|
+
- spec/setup/banner_presenter.rb
|
161
|
+
- spec/setup/rspec_template_builder.rb
|
162
|
+
- spec/setup/shared.rb
|
163
|
+
- spec/setup/test_file_uploader.rb
|
164
|
+
- spec/spec_helper.rb
|
165
|
+
has_rdoc: true
|
166
|
+
homepage: http://github.com/Aryk/dead_simple_cms
|
167
|
+
licenses: []
|
168
|
+
post_install_message:
|
169
|
+
rdoc_options: []
|
170
|
+
require_paths:
|
171
|
+
- lib
|
172
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
173
|
+
none: false
|
174
|
+
requirements:
|
175
|
+
- - ! '>='
|
176
|
+
- !ruby/object:Gem::Version
|
177
|
+
version: '0'
|
178
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
179
|
+
none: false
|
180
|
+
requirements:
|
181
|
+
- - ! '>='
|
182
|
+
- !ruby/object:Gem::Version
|
183
|
+
version: '0'
|
184
|
+
requirements: []
|
185
|
+
rubyforge_project:
|
186
|
+
rubygems_version: 1.6.2
|
187
|
+
signing_key:
|
188
|
+
specification_version: 3
|
189
|
+
summary: DeadSimpleCMS provides a way to define, modify, and present custom variables
|
190
|
+
and content in your application.
|
191
|
+
test_files:
|
192
|
+
- spec/dead_simple_cms/attribute/collection_spec.rb
|
193
|
+
- spec/dead_simple_cms/attribute/type/all_spec.rb
|
194
|
+
- spec/dead_simple_cms/attribute/type/base_spec.rb
|
195
|
+
- spec/dead_simple_cms/configuration_spec.rb
|
196
|
+
- spec/dead_simple_cms/file_uploader/base_spec.rb
|
197
|
+
- spec/dead_simple_cms/group/configuration_spec.rb
|
198
|
+
- spec/dead_simple_cms/group/presenter_spec.rb
|
199
|
+
- spec/dead_simple_cms/group_spec.rb
|
200
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/default_spec.rb
|
201
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/simple_form_spec.rb
|
202
|
+
- spec/dead_simple_cms/rails/action_view/form_builders/simple_form_with_bootstrap_spec.rb
|
203
|
+
- spec/dead_simple_cms/rails/action_view/fragment_sweeper_spec.rb
|
204
|
+
- spec/dead_simple_cms/rails/action_view/presenter_spec.rb
|
205
|
+
- spec/dead_simple_cms/section/builder_spec.rb
|
206
|
+
- spec/dead_simple_cms/section_spec.rb
|
207
|
+
- spec/dead_simple_cms/storage/base_spec.rb
|
208
|
+
- spec/dead_simple_cms/storage/database_spec.rb
|
209
|
+
- spec/dead_simple_cms/storage/memory_spec.rb
|
210
|
+
- spec/dead_simple_cms/storage/rails_cache_spec.rb
|
211
|
+
- spec/dead_simple_cms/storage/redis_spec.rb
|
212
|
+
- spec/dead_simple_cms/util/identifier/dictionary/duplciate_item_spec.rb
|
213
|
+
- spec/dead_simple_cms/util/identifier/dictionary/invalid_entry_class_spec.rb
|
214
|
+
- spec/dead_simple_cms/util/identifier/dictionary_spec.rb
|
215
|
+
- spec/dead_simple_cms/util/identifier_spec.rb
|
216
|
+
- spec/setup/banner_presenter.rb
|
217
|
+
- spec/setup/rspec_template_builder.rb
|
218
|
+
- spec/setup/shared.rb
|
219
|
+
- spec/setup/test_file_uploader.rb
|
220
|
+
- spec/setup.rb
|
221
|
+
- spec/spec_helper.rb
|