projecto 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 892bef29667f841586d9f752cf24c5383595ff256a9a5eef7a3e93ff51e85df9
4
- data.tar.gz: 3a86b413be46cae43a4ab557c732c67f93d06c55255f3b4ad9d7d4dd323430b2
3
+ metadata.gz: 71636449799669e462a123f5e997fc24a0626841edd5c465e3b5f88987f7b17b
4
+ data.tar.gz: ea96534c143ebd8ec27575939a57809b2a4b659c9717ef8a6fb5798e3965507e
5
5
  SHA512:
6
- metadata.gz: 160326f923a0b2bcb668f07975e6c24bc30f985b1539950d8cd8198a7f93bcaa8f3878be6fe17d8ae5324dce94dce3ecfb9338be1465f85d51b3711665dd32a0
7
- data.tar.gz: 53383bd2abda905a5975f81f0c491d76b56018ca9b30eb58a1a09d7b8e1aa16833239c285bfa42c56fd61becb528ee6ab50a70d34cb755a5d5861a81ccdde676
6
+ metadata.gz: f4a24659966cc9259aaeb3576cc8c7da210272bb4407de751bab18c85af0e0c715bbc242bf3d4383e18578163d68ade8436d4f8fdfc1ec367a11ec3056855c70
7
+ data.tar.gz: 4673ec3917f3dcf31f5af61f5b127a087b0d125c685f0ab58173170d270ce333aa56860aceea1427e97e26211a3f83e52bd480451f0cfe19079387377f274701
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- projecto (0.1.2)
4
+ projecto (0.2.0)
5
5
  capybara (~> 2.13)
6
6
  rails (~> 6.0.2.2)
7
7
  rspec-rails (~> 4.0.0)
8
- sanitize
9
- selenium-webdriver
10
- webdrivers
8
+ sanitize (~> 5.1)
9
+ selenium-webdriver (~> 3)
10
+ webdrivers (~> 4.3)
11
11
 
12
12
  GEM
13
13
  remote: https://rubygems.org/
data/bin/projecto ADDED
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require "pathname"
5
+
6
+ source_path = (Pathname.new(__FILE__).dirname + "../lib").expand_path
7
+ $LOAD_PATH << source_path
8
+
9
+ require "projecto"
10
+
11
+ if ARGV.empty?
12
+ puts "Please provide a path for the new application"
13
+ puts
14
+ puts "See --help for more info"
15
+ exit 0
16
+ elsif ["-v", "--version"].include? ARGV[0]
17
+ puts Projecto::VERSION
18
+ exit 0
19
+ end
20
+
21
+ templates_root = File.expand_path(File.join("..", "templates"), File.dirname(__FILE__))
22
+
23
+ Projecto::AppGenerator.source_root(templates_root)
24
+ Projecto::AppGenerator.source_paths << Rails::Generators::AppGenerator.source_root << templates_root
25
+
26
+ Projecto::AppGenerator.start
Binary file
@@ -0,0 +1,11 @@
1
+ module Projecto
2
+ class AppBuilder < Rails::AppBuilder
3
+ def set_ruby_version
4
+ create_file ".ruby-version", "#{Projecto::RUBY_VERSION}\n", force: true
5
+ end
6
+
7
+ def gemfile
8
+ template "Gemfile.erb", "Gemfile"
9
+ end
10
+ end
11
+ end
@@ -1,5 +1,3 @@
1
- require "rails"
2
-
3
1
  module Projecto
4
2
  class Engine < ::Rails::Engine
5
3
  require "rails"
@@ -0,0 +1,28 @@
1
+ require "rails/generators"
2
+ require "rails/generators/rails/app/app_generator"
3
+
4
+ module Projecto
5
+ class AppGenerator < Rails::Generators::AppGenerator
6
+ class_option :database, type: :string, aliases: "-d", default: "postgresql",
7
+ desc: "Configure for selected database (options: #{DATABASES.join('/')})"
8
+
9
+ class_option :skip_turbolinks, type: :boolean, default: false,
10
+ desc: "Skip turbolinks gem"
11
+ class_option :skip_webpack_install, type: :boolean, default: true,
12
+ desc: "Don't run Webpack install"
13
+
14
+ def finish_template
15
+ invoke :projecto_customizations
16
+ end
17
+
18
+ def projecto_customizations
19
+ build :set_ruby_version
20
+ end
21
+
22
+ protected
23
+
24
+ def get_builder_class
25
+ Projecto::AppBuilder
26
+ end
27
+ end
28
+ end
@@ -1,3 +1,6 @@
1
1
  module Projecto
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.0"
3
+ RAILS_VERSION = "~> 6.0.2.2"
4
+ RUBY_VERSION = "2.6.5"
5
+ PG_VERSION = "12"
3
6
  end
data/lib/projecto.rb CHANGED
@@ -1,6 +1,9 @@
1
+ require "rails"
1
2
  require "projecto/version"
2
3
  require "projecto/railtie" if defined?(Rails)
3
- require "projecto/engine"
4
+ require "projecto/engine" if defined?(Rails)
5
+ require "projecto/generators/app_generator" if defined?(Rails)
6
+ require "projecto/app_builder" if defined?(Rails)
4
7
 
5
8
  module Projecto
6
9
  class Error < StandardError; end
data/projecto.gemspec CHANGED
@@ -27,19 +27,16 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  # Specify which files should be added to the gem when it is released.
29
29
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
30
- spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
31
- `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test)/}) }
32
- end
33
- spec.bindir = "exe"
34
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
+ spec.files = `git ls-files`.split("\n")
31
+ spec.executables = ["projecto"]
35
32
  spec.require_paths = ["lib"]
36
33
 
37
34
  spec.add_development_dependency "bundler", "~> 2.1.4"
38
35
  spec.add_development_dependency "rake", "~> 13.0"
39
- spec.add_dependency "rails", "~> 6.0.2.2"
36
+ spec.add_dependency "rails", Projecto::RAILS_VERSION
40
37
  spec.add_dependency "rspec-rails", "~> 4.0.0"
41
38
  spec.add_dependency "capybara", "~> 2.13"
42
- spec.add_dependency "selenium-webdriver"
43
- spec.add_dependency "webdrivers"
44
- spec.add_dependency "sanitize"
39
+ spec.add_dependency "selenium-webdriver", "~> 3"
40
+ spec.add_dependency "webdrivers", "~> 4.3"
41
+ spec.add_dependency "sanitize", "~> 5.1"
45
42
  end
@@ -0,0 +1,69 @@
1
+ source "https://rubygems.org"
2
+
3
+ # The projecto gem is used for correcting your assignment / work with the help
4
+ # of some browser tests using selenuim web driver.
5
+ # The projecto gem includes the below gems:
6
+ # 1. rails ~> 6.0.2.2
7
+ # 2. rspec-rails ~> 4.0
8
+ # 3. capybara
9
+ # 4. selenium-webdriver and webdrivers
10
+ # 5. sanitize
11
+ gem "projecto", "<%= Projecto::VERSION %>"
12
+
13
+ # This is PostgreDB gem, Read more: https://github.com/ged/ruby-pg
14
+ gem "pg"
15
+ # Use Puma as the app server, Read more: https://github.com/puma/puma
16
+ gem "puma"
17
+ # Use SCSS for stylesheets. This only install's bootstrapV3, Read more: https://github.com/twbs/bootstrap-sass
18
+ gem "bootstrap-sass"
19
+ # Use Uglifier as compressor for JavaScript assets. Read more: https://github.com/lautis/uglifier
20
+ gem "uglifier"
21
+ # Use CoffeeScript for .coffee assets and views, Read more: https://github.com/rails/coffee-rails
22
+ gem "coffee-rails"
23
+ # Use Jquery rails to include jquery to your project, Read more: https://github.com/rails/jquery-rails
24
+ gem "jquery-rails"
25
+ # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
26
+ gem "turbolinks"
27
+ # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
28
+ gem "jbuilder"
29
+ # This gem helps you to upload files to rails application, Read more: https://github.com/carrierwaveuploader/carrierwave
30
+ gem "carrierwave"
31
+ # MiniMagick is a wrapper for ImageMagick which helps to resize images, Read more: https://github.com/minimagick/minimagick
32
+ gem "mini_magick"
33
+ # Font Awesome rails helps you to include font awesome to asset pipeline, Read more: https://github.com/bokmann/font-awesome-rails
34
+ gem "font-awesome-rails"
35
+ # Store passwords secretly in database using hashing algorithms using Bycrypt, Read more: https://github.com/codahale/bcrypt-ruby
36
+ gem "bcrypt"
37
+
38
+ # Dotenv allows you to set environment variables for your application, Read more: https://github.com/bkeepers/dotenv
39
+ gem "dotenv-rails", groups: [:development, :test]
40
+
41
+ group :development, :test do
42
+ # Call "byebug" anywhere in the code to stop execution and get a debugger console
43
+ gem "byebug", platforms: [:mri, :mingw, :x64_mingw]
44
+ gem "pry"
45
+ end
46
+
47
+ group :development do
48
+ <%- unless options.api? -%>
49
+ # Access an interactive console on exception pages or by calling 'console' anywhere in the code.
50
+ <%- if options.dev? || options.edge? -%>
51
+ gem "web-console", github: "rails/web-console"
52
+ <%- else -%>
53
+ gem "web-console", ">= 3.3.0"
54
+ <%- end -%>
55
+ <%- end -%>
56
+ <% if depend_on_listen? -%>
57
+ gem "listen", "~> 3.2"
58
+ <% end -%>
59
+ <% if spring_install? -%>
60
+ # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
61
+ gem "spring"
62
+ <% if depend_on_listen? -%>
63
+ gem "spring-watcher-listen", "~> 2.0.0"
64
+ <% end -%>
65
+ <% end -%>
66
+ end
67
+
68
+ # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
69
+ gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby]
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: projecto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anto Dominic
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-04-19 00:00:00.000000000 Z
12
12
  dependencies:
@@ -84,49 +84,50 @@ dependencies:
84
84
  name: selenium-webdriver
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '3'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: '3'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: webdrivers
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0'
103
+ version: '4.3'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0'
110
+ version: '4.3'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: sanitize
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '5.1'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '5.1'
125
125
  description: To include the project tests in webapp examiner test run needs to be
126
126
  included here
127
127
  email:
128
128
  - antodoms@gmail.com
129
- executables: []
129
+ executables:
130
+ - projecto
130
131
  extensions: []
131
132
  extra_rdoc_files: []
132
133
  files:
@@ -141,13 +142,17 @@ files:
141
142
  - README.md
142
143
  - Rakefile
143
144
  - bin/console
145
+ - bin/projecto
144
146
  - bin/setup
145
147
  - gem_builds/projecto-0.1.0.gem
146
148
  - gem_builds/projecto-0.1.1.gem
147
149
  - gem_builds/projecto-0.1.2.gem
150
+ - gem_builds/projecto-0.2.0.gem
148
151
  - lib/projecto.rb
149
152
  - lib/projecto/Rakefile
153
+ - lib/projecto/app_builder.rb
150
154
  - lib/projecto/engine.rb
155
+ - lib/projecto/generators/app_generator.rb
151
156
  - lib/projecto/railtie.rb
152
157
  - lib/projecto/tasks/projecto.rake
153
158
  - lib/projecto/version.rb
@@ -158,6 +163,7 @@ files:
158
163
  - spec/spec_helper.rb
159
164
  - spec/support/capybara.rb
160
165
  - spec/support/test_helper.rb
166
+ - templates/Gemfile.erb
161
167
  homepage: https://web-examiner.herokuapp.com
162
168
  licenses:
163
169
  - MIT