recurs 0.0.4 → 0.0.4.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,4 +1,5 @@
1
1
  pkg/*
2
2
  *.gem
3
3
  .bundle
4
- .idea
4
+ .idea
5
+ tmp/*
data/Gemfile CHANGED
@@ -6,4 +6,5 @@ gemspec
6
6
  group :test do
7
7
  #gem 'rails', '3.0.1'
8
8
  gem 'rspec'
9
+ gem 'aruba'
9
10
  end
@@ -0,0 +1,27 @@
1
+ Feature:
2
+ In order to easily generate recurrence interfaces with their complex rest logic
3
+ As a user of Rails3
4
+ I would like to use recurs generators
5
+
6
+ Scenario: The recurs generators create a recurs scaffold
7
+ for each model that I generate with a recurs generator
8
+ Given I run "rails new test_app"
9
+ And I cd to "test_app"
10
+ And a file named "Gemfile" with:
11
+ """
12
+ source "http://rubygems.org"
13
+ gem 'rails', '3.0.0'
14
+ gem 'sqlite3-ruby', :require => 'sqlite3'
15
+ gem 'recurs', :path => '../../../'
16
+ """
17
+ And I run "bundle install"
18
+ And I run "rails generate recurs_widget Event"
19
+ And I run "rake db:migrate"
20
+ And the following files should exist:
21
+ | app/models/event.rb |
22
+ | app/views/events/index.html.haml |
23
+ | app/views/events/new.html.haml |
24
+ | app/views/events/edit.html.haml |
25
+ | app/views/events/_form.html.haml |
26
+ And the following files should not exist:
27
+ | test/fixtures/users.yml |
@@ -0,0 +1,24 @@
1
+ When /^I do aruba (.*)$/ do |aruba_step|
2
+ begin
3
+ When(aruba_step)
4
+ rescue => e
5
+ @aruba_exception = e
6
+ end
7
+ end
8
+
9
+ # Useful for debugging timing problems
10
+ When /^sleep (\d+)$/ do |time|
11
+ sleep time.to_i
12
+ end
13
+
14
+ Then /^aruba should fail with "([^"]*)"$/ do |error_message|
15
+ @aruba_exception.message.should include(unescape(error_message))
16
+ end
17
+
18
+ Then /^the following step should fail with Spec::Expectations::ExpectationNotMetError:$/ do |multiline_step|
19
+ proc {steps multiline_step}.should raise_error(RSpec::Expectations::ExpectationNotMetError)
20
+ end
21
+
22
+ Then /^the output should be (\d+) bytes long$/ do |length|
23
+ all_output.chomp.length.should == length.to_i
24
+ end
@@ -0,0 +1 @@
1
+ require 'aruba'
@@ -0,0 +1,15 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__) + '/../../lib')
2
+ require 'aruba/cucumber'
3
+ require 'fileutils'
4
+
5
+ begin
6
+ # rspec-2
7
+ require 'rspec/expectations'
8
+ rescue LoadError
9
+ # rspec-1
10
+ require 'spec/expectations'
11
+ end
12
+
13
+ Before do
14
+ FileUtils.rm(Dir['config/*.yml'])
15
+ end
@@ -0,0 +1,9 @@
1
+ class RecursInstanceGenerator < Rails::Generators::Base
2
+ source_root File.expand_path("../templates", __FILE__)
3
+ argument :name, :type => :string, :default => "event"
4
+
5
+ def create_instance_model
6
+ template "instance.rb.tmpl", "app/models/#{name}.rb"
7
+ #create_file "app/models#{model_name}"
8
+ end
9
+ end
@@ -0,0 +1,3 @@
1
+ class <%= name.classify %> < ActiveRecord::Base
2
+ acts_as_recurring
3
+ end
data/lib/recurs/rules.rb CHANGED
@@ -3,13 +3,6 @@ module Recurs
3
3
  mattr_accessor :repeat_procs, :schema
4
4
  @@repeat_procs = {
5
5
 
6
- =begin
7
- 'Daily' => ->(args = {}){
8
- args[:repeats] = 'DAILY'
9
- rrule(args);
10
- }, # 0
11
- =end
12
-
13
6
  #=begin
14
7
  'Daily' => ->(set=false, args = {}){
15
8
  unless set
@@ -1,3 +1,3 @@
1
1
  module Recurs
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.4.1"
3
3
  end
data/recurs.gemspec CHANGED
@@ -15,6 +15,11 @@ Gem::Specification.new do |s|
15
15
  s.rubyforge_project = "recurs"
16
16
  s.add_dependency('ri_cal', '>= 0.8.7')
17
17
 
18
+ s.add_development_dependency 'rspec', '~> 2.3.0'
19
+ s.add_development_dependency 'aruba', '~> 0.2.7'
20
+ s.add_development_dependency('rake')
21
+ s.add_development_dependency('cucumber')
22
+
18
23
  s.files = `git ls-files`.split("\n")
19
24
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
20
25
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
metadata CHANGED
@@ -6,7 +6,8 @@ version: !ruby/object:Gem::Version
6
6
  - 0
7
7
  - 0
8
8
  - 4
9
- version: 0.0.4
9
+ - 1
10
+ version: 0.0.4.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Steve Caney Martin
@@ -32,6 +33,62 @@ dependencies:
32
33
  version: 0.8.7
33
34
  type: :runtime
34
35
  version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ segments:
45
+ - 2
46
+ - 3
47
+ - 0
48
+ version: 2.3.0
49
+ type: :development
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: aruba
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ~>
58
+ - !ruby/object:Gem::Version
59
+ segments:
60
+ - 0
61
+ - 2
62
+ - 7
63
+ version: 0.2.7
64
+ type: :development
65
+ version_requirements: *id003
66
+ - !ruby/object:Gem::Dependency
67
+ name: rake
68
+ prerelease: false
69
+ requirement: &id004 !ruby/object:Gem::Requirement
70
+ none: false
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ segments:
75
+ - 0
76
+ version: "0"
77
+ type: :development
78
+ version_requirements: *id004
79
+ - !ruby/object:Gem::Dependency
80
+ name: cucumber
81
+ prerelease: false
82
+ requirement: &id005 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ segments:
88
+ - 0
89
+ version: "0"
90
+ type: :development
91
+ version_requirements: *id005
35
92
  description: Specifiy you're recurrence pattern in symbols and strings and get an ical format recurrence string
36
93
  email:
37
94
  - steve@shakewell.co.uk
@@ -46,6 +103,12 @@ files:
46
103
  - Gemfile
47
104
  - README
48
105
  - Rakefile
106
+ - features/generators.feature
107
+ - features/step_definitions/aruba_steps.rb
108
+ - features/support/aruba.rb
109
+ - features/support/env.rb
110
+ - lib/generators/recurs_instance_generator.rb
111
+ - lib/generators/templates/instance.rb.tmpl
49
112
  - lib/recurs.rb
50
113
  - lib/recurs/consts.rb
51
114
  - lib/recurs/rules.rb
@@ -89,6 +152,10 @@ signing_key:
89
152
  specification_version: 3
90
153
  summary: A recurrence generator for ical format
91
154
  test_files:
155
+ - features/generators.feature
156
+ - features/step_definitions/aruba_steps.rb
157
+ - features/support/aruba.rb
158
+ - features/support/env.rb
92
159
  - spec/models/instance_spec.rb
93
160
  - spec/models/parser_spec.rb
94
161
  - spec/models/rules_spec.rb