laravel 0.5.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  module Laravel
2
- VERSION = "0.5.1"
2
+ VERSION = "0.7.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: laravel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.7.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-27 00:00:00.000000000 Z
12
+ date: 2013-01-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
@@ -59,7 +59,7 @@ dependencies:
59
59
  - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
- description: A wrapper around Laravel framework for PHP
62
+ description: Readily build new web applications using Laravel framework for PHP.
63
63
  email:
64
64
  - me@nikhgupta.com
65
65
  executables:
@@ -74,21 +74,19 @@ files:
74
74
  - README.md
75
75
  - Rakefile
76
76
  - bin/commands/config.rb
77
- - bin/commands/install.rb
78
77
  - bin/commands/new.rb
79
78
  - bin/laravel
79
+ - features/S_0__release.feature
80
80
  - features/S_1_new_online.feature
81
81
  - features/S_2_new_offline.feature
82
82
  - features/S_3_new_customized.feature
83
83
  - features/S_4_config.feature
84
- - features/S_5_install.feature
84
+ - features/S_5_do.feature
85
+ - features/step_definitions/app_steps.rb
85
86
  - features/step_definitions/config_steps.rb
86
- - features/step_definitions/install_steps.rb
87
- - features/step_definitions/laravel.rb
88
87
  - features/step_definitions/new_steps.rb
89
- - features/step_definitions/requirements.rb
90
88
  - features/support/env.rb
91
- - features/support/laravel_helpers.rb
89
+ - features/support/spec_helpers.rb
92
90
  - laravel.gemspec
93
91
  - lib/laravel.rb
94
92
  - lib/laravel/app.rb
@@ -96,8 +94,6 @@ files:
96
94
  - lib/laravel/configuration.rb
97
95
  - lib/laravel/errors.rb
98
96
  - lib/laravel/helpers.rb
99
- - lib/laravel/installer.rb
100
- - lib/laravel/settings.yml
101
97
  - lib/laravel/version.rb
102
98
  homepage: https://github.com/nikhgupta/laravel
103
99
  licenses: []
@@ -113,7 +109,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
113
109
  version: '0'
114
110
  segments:
115
111
  - 0
116
- hash: 2758462782054416537
112
+ hash: 3328694536106812419
117
113
  required_rubygems_version: !ruby/object:Gem::Requirement
118
114
  none: false
119
115
  requirements:
@@ -122,25 +118,24 @@ required_rubygems_version: !ruby/object:Gem::Requirement
122
118
  version: '0'
123
119
  segments:
124
120
  - 0
125
- hash: 2758462782054416537
121
+ hash: 3328694536106812419
126
122
  requirements: []
127
123
  rubyforge_project:
128
124
  rubygems_version: 1.8.24
129
125
  signing_key:
130
126
  specification_version: 3
131
- summary: This gem is a wrapper around the Laravel framework for PHP. Initially, the
132
- gem would allow to create new laravel apps along with options to modify the default
133
- behavior for these new installations.
127
+ summary: This gem helps in readily creating new web application based on the Laravel
128
+ framework for PHP with as much customization as possible. Moreover, it allows configuring
129
+ existing Laravel applications, and installing Laravel bundles for them.
134
130
  test_files:
131
+ - features/S_0__release.feature
135
132
  - features/S_1_new_online.feature
136
133
  - features/S_2_new_offline.feature
137
134
  - features/S_3_new_customized.feature
138
135
  - features/S_4_config.feature
139
- - features/S_5_install.feature
136
+ - features/S_5_do.feature
137
+ - features/step_definitions/app_steps.rb
140
138
  - features/step_definitions/config_steps.rb
141
- - features/step_definitions/install_steps.rb
142
- - features/step_definitions/laravel.rb
143
139
  - features/step_definitions/new_steps.rb
144
- - features/step_definitions/requirements.rb
145
140
  - features/support/env.rb
146
- - features/support/laravel_helpers.rb
141
+ - features/support/spec_helpers.rb
@@ -1,37 +0,0 @@
1
- module Laravel
2
- # This module handles the subcommands used by this gem.
3
- module Commands
4
- # This class is responsible for the various installation tasks
5
- # e.g. installing the bundles or other goodies.
6
- class Install < Thor
7
- class_option :debug, :type => :boolean
8
-
9
- # This option specifies the application directory to use.
10
- # By default, this is the path to the current directory.
11
- class_option :app, :type => :string, :aliases => "-a",
12
- :desc => "use the specified Laravel application instead of current directory"
13
-
14
- # This option specifies whether we want to forcefully install
15
- # the resource by overwriting already existing files.
16
- # Virtually, this is the same as reinstalling a certain resource.
17
- class_option :force, :type => :boolean,
18
- :desc => "force an installation - same as reinstall"
19
-
20
- # This task downloads the Laravel Generator by Jeffrey Way and creates
21
- # a file called 'generate.php' in the tasks folder.
22
- #
23
- # Once done, we can use `php artisan generate` to get an overview of the
24
- # different actions this laravel-task can perform.
25
- #
26
- desc "generator", "download the Laravel Generator by Jeffrey Way"
27
- def generator
28
- @installer = Laravel::Installer.new(options[:app])
29
- begin
30
- @installer.task_generator
31
- rescue StandardError => e
32
- Laravel::handle_error e, options[:debug]
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,13 +0,0 @@
1
- Feature: Download Laravel Generator by Jeffrey Way
2
- In order to generate code for my application quickly using :generate tasks
3
- As a PHP developer acquinted with ruby
4
- I want to use Laravel gem to download Laravel Generator by Jeffrey Way
5
-
6
- Background: An application based on Laravel framework exists
7
- Given I want to create a new application
8
- When I create this application
9
- Then the application should be ready for development
10
-
11
- Scenario: download Laravel generator
12
- When I install generator for this application
13
- Then a task should be installed as "generate.php"
@@ -1,9 +0,0 @@
1
- When /install generator for this application$/ do
2
- step "I run `laravel install generator --app=#{@app_path}`"
3
- end
4
-
5
- Then /^(?:|a )tasks? should be installed as "(.*?)"$/ do |filename|
6
- filepath = @app_tester.app.tasks_file(filename)
7
- @app_tester.raise_error?(File.exists?(filepath))
8
- step "the stdout should contain \"Installed task\""
9
- end
@@ -1,6 +0,0 @@
1
-
2
-
3
- Then /^I should get an error$/ do
4
- step "the stdout should contain \"ERROR\""
5
- end
6
-
@@ -1,20 +0,0 @@
1
- Given /.*want to create (?:an|the|a new) application( forcefully)?$/ do |force|
2
- @args = force ? "--force" : ""
3
- end
4
-
5
- Given /^I want to use( local cache for)? "(.*?)" as source$/ do |use_cache, source|
6
- @source = source
7
- @args = "#{@args} --source=#{source}"
8
- end
9
-
10
-
11
-
12
- Given /^I( do not)? want to update file permissions for storage$/ do |negate|
13
- @args = "#{@args} #{negate ? "--no-perms" : "--perms"}"
14
- end
15
- Then /^file permissions on storage should( not)? be updated$/ do |negate|
16
- step "the stdout should contain \"Updated permissions\"" unless negate
17
- world_bit = sprintf("%o", File.stat(@app_path).mode).to_s[-1,1].to_i
18
- is_world_writable = [2,3,6,7].include?(world_bit)
19
- @app_tester.raise_error?(is_world_writable, negate)
20
- end
@@ -1,63 +0,0 @@
1
- module Laravel
2
- # a means to test the gem
3
- class AppTests
4
- attr_reader :app, :app_path, :aruba
5
- TestDirectory = File.expand_path(File.join(File.dirname(__FILE__), %w[ .. .. tmp aruba]))
6
-
7
- # create a new object that handles the tests for us
8
- #
9
- # ==== Parameters
10
- # +dir+ :: directory of the application - can be relative path or absolute path.
11
- # +repo+ :: repository URL/directory for source
12
- #
13
- def initialize(dir = nil, repo = nil)
14
- # Store absolute path to the directory
15
- @app_path = dir || Dir.pwd
16
- convert_to_relative_path
17
-
18
- options = {
19
- :force => false, :quiet => false,
20
- :perms => true, :source => repo
21
- }
22
-
23
- # create a new Laravel App instance for given options
24
- @app = Laravel::App.new(@app_path, options)
25
- end
26
-
27
- # get the relative path of a directory relative to the temporary path aruba creates
28
- #
29
- # ==== Parameters
30
- # +relative_to+ :: Path to use as base directory, when converting to relative path.
31
- # By default, it is the path to the aruba tmp directory
32
- #
33
- def convert_to_relative_path(relative_to = nil)
34
- relative_to = TestDirectory unless relative_to
35
- @app_path = File.expand_path(@app_path, relative_to)
36
- end
37
-
38
- # checks if the configuration file contains a particular string
39
- #
40
- # ==== Parameters
41
- # +search+ :: the search term/regex pattern to look for
42
- #
43
- # ==== Return
44
- # +boolean+:: true, if the search term was found in the configuration file.
45
- #
46
- def validate_configuration(search)
47
- raise_error? File.readlines(@app.config_file).grep(Regexp.new search).any?
48
- end
49
-
50
- # raises an error based on a condition and negation
51
- # if negation is not supplied, simply raises an error if condition is not true
52
- #
53
- # ==== Parameters
54
- # +condition+ :: a condition to check against - if +negate+ is not provided,
55
- # this condition raises an error if it evaluates to false.
56
- # +negate+ :: negate the default behaviour
57
- def raise_error?(condition, negate = nil)
58
- raise ExpectationNotMetError if condition == !negate.nil?
59
- end
60
- end
61
- end
62
-
63
- World(Laravel)
@@ -1,61 +0,0 @@
1
- module Laravel
2
- # This class handles the installation of certain tasks or some bundles, e.g.
3
- # bob, sentry, etc. Since, these installation do not follow a definite
4
- # pattern, we will need to define method that handles a particular
5
- # installation.
6
- class Installer < App
7
-
8
- # This method acts as a gateway for the installation methods exposed by
9
- # this class. The exposed methods follow a definite naming convention:
10
- # {type}_{resource}, where {type} can either be 'task' or 'bundle', and
11
- # {resource} is the name of the thing we are trying to install.
12
- #
13
- # For example: calling: task_generator() will install a task in the
14
- # application/tasks/ folder, where 'do_task_generator' method defines how
15
- # the particular install wil really be handled. Please, have a look at the
16
- # source code of the above example for more information.
17
- #
18
- # The 'do_{method}' methods must be defined in this class, which actually
19
- # handle the installation routine for us. These methods must have 'boolean'
20
- # as their return value.
21
- #
22
- def method_missing(name, *args)
23
- # know what we are doing
24
- dissect = name.to_s.split "_"
25
- type = dissect[0]
26
- source = dissect[1]
27
-
28
- # we MUST have a 'do_{method}' defined!!
29
- if Installer.method_defined?("do_#{name}".to_sym)
30
-
31
- if method("do_#{name}").call
32
- say_success "Installed #{type}: #{source.capitalize}"
33
- else
34
- say_failed "Could not install #{type}: #{source.capitalize}"
35
- end
36
- else
37
- say_failed "Don't know how to install #{source.capitalize}!"
38
- end
39
- end
40
-
41
- # install the particular tasks or bundles by looking the options
42
- # that the user has provided when running the 'new' task.
43
- #
44
- def from_options
45
- return unless @options
46
-
47
- # read and perform installs from options passed through the command line.
48
- task_generator if @options[:generator]
49
- end
50
-
51
- # Install the Laravel Generator by Jeffrey Way. This creates a file named
52
- # 'generate.php' in the application/tasks/ folder, which can be invoked as:
53
- # `php artisan generate` using artisan.
54
- #
55
- def do_task_generator
56
- url = "https://raw.github.com/JeffreyWay/Laravel-Generator/master/generate.php"
57
- # download the Laravel Generator using curl as 'generate.php'
58
- download_resource(tasks_file("generate.php"), url, "curl")
59
- end
60
- end
61
- end
@@ -1,43 +0,0 @@
1
- config:
2
- url:
3
- factory: ""
4
- default: __factory__
5
- type: url
6
- asset_url:
7
- factory: ""
8
- default: __factory__
9
- type: url
10
- index:
11
- factory: index.php
12
- default: ""
13
- type: string
14
- key:
15
- factory: "YourSecretKeyGoesHere!"
16
- default: __random__
17
- type: string
18
- profiler:
19
- factory: false
20
- default: __factory__
21
- type: boolean
22
- encoding:
23
- factory: UTF-8
24
- default: __factory__
25
- type: string
26
- language:
27
- factory: en
28
- default: __factory__
29
- type: string
30
- langauges:
31
- supported: false
32
- type: array
33
- ssl:
34
- factory: false
35
- default: __factory__
36
- type: boolean
37
- timezone:
38
- factory: UTC
39
- default: __factory__
40
- type: string
41
- aliases:
42
- supported: false
43
- type: array