recurs 0.0.4 → 0.0.4.1

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 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