generic_app 1.1.0 → 2.0.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.
- checksums.yaml +4 -4
- data/.rubocop.yml +14 -1
- data/.travis.yml +2 -0
- data/all.sh +17 -0
- data/bin/generic_app +12 -7
- data/code_test.sh +35 -0
- data/credentials.sh +52 -0
- data/gem_test.sh +11 -53
- data/generic_app.gemspec +1 -0
- data/lib/generic_app/git_clone_url.txt +1 -0
- data/lib/generic_app/version.rb +1 -1
- data/lib/generic_app.rb +28 -6
- data/spec/lib/generic_app_spec.rb +41 -0
- data/spec/spec_helper.rb +2 -2
- metadata +23 -5
- data/spec/lib/1_sqlite_spec.rb +0 -71
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c93913b447f4225b2cbb08783ed9f13377f41d66
|
4
|
+
data.tar.gz: 5f00d06f9db717dec4363e26dcb303bb5202cc51
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f345adb80df2c600c3bca20b965f29732643d0fd7fbce1a751a4a46572f03061b86b8ffb6308594c25e35d444a226b4a9304ca5190c250e22c25d90a812b98f
|
7
|
+
data.tar.gz: b0e94ff588828906bfe7b7fb0f015f48df3c51e2f92db87ddb95653d0b4f4250c871e702fa5b2938c75742a4a2fc9914e55c315a0dabce9b5cd087a6a483e81c
|
data/.rubocop.yml
CHANGED
@@ -1,8 +1,18 @@
|
|
1
|
+
AllCops:
|
2
|
+
Exclude:
|
3
|
+
- tmp/vulnerabilities/*
|
4
|
+
- tmp/vulnerabilities/lib/*
|
5
|
+
- tmp/vulnerabilities/spec/*
|
6
|
+
|
7
|
+
Metrics/BlockLength:
|
8
|
+
Exclude:
|
9
|
+
- spec/lib/generic_app_spec.rb
|
10
|
+
|
1
11
|
Metrics/LineLength:
|
2
12
|
Exclude:
|
3
13
|
- generic_app.gemspec
|
4
14
|
- lib/generic_app.rb
|
5
|
-
- spec/lib/
|
15
|
+
- spec/lib/generic_app_spec.rb
|
6
16
|
|
7
17
|
Metrics/MethodLength:
|
8
18
|
Exclude:
|
@@ -11,3 +21,6 @@ Metrics/MethodLength:
|
|
11
21
|
Style/RedundantSelf:
|
12
22
|
Exclude:
|
13
23
|
- lib/generic_app.rb
|
24
|
+
|
25
|
+
Style/VariableNumber:
|
26
|
+
Enabled: false
|
data/.travis.yml
CHANGED
data/all.sh
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
mkdir -p log
|
4
|
+
FILE_TEST_GEM='log/1-test-gem.log'
|
5
|
+
FILE_TEST_CODE='log/2-test-code.log'
|
6
|
+
FILE_INSTALL_GEM='log/3-install-gem.log'
|
7
|
+
sh gem_test.sh 2>&1 | tee $FILE_TEST_GEM
|
8
|
+
sh code_test.sh 2>&1 | tee $FILE_TEST_CODE
|
9
|
+
sh gem_install.sh 2>&1 | tee $FILE_INSTALL_GEM
|
10
|
+
|
11
|
+
echo 'Results are logged in:'
|
12
|
+
echo $FILE_TEST_GEM
|
13
|
+
echo $FILE_TEST_CODE
|
14
|
+
echo $FILE_INSTALL_GEM
|
15
|
+
echo
|
16
|
+
echo 'Gemsurance Report: log/gemsurance_report.html'
|
17
|
+
echo 'Gem dependency diagram: log/diagram-gems.svg'
|
data/bin/generic_app
CHANGED
@@ -30,13 +30,14 @@ email = get_input(default_email)
|
|
30
30
|
|
31
31
|
GenericApp.create_new(subdir_name, email)
|
32
32
|
|
33
|
-
puts '
|
34
|
-
puts "BEGIN TESTING THE #{subdir_name} RAILS APP"
|
35
|
-
system("cd #{subdir_name} && sh
|
36
|
-
puts "FINISHED TESTING THE #{subdir_name} RAILS APP"
|
37
|
-
puts '
|
38
|
-
|
39
|
-
puts
|
33
|
+
puts '******************************************************'
|
34
|
+
puts "BEGIN TESTING AND SEEDING THE #{subdir_name} RAILS APP"
|
35
|
+
system("cd #{subdir_name} && sh all.sh")
|
36
|
+
puts "FINISHED TESTING AND SEEDING THE #{subdir_name} RAILS APP"
|
37
|
+
puts '*********************************************************'
|
38
|
+
|
39
|
+
puts 'Your new Rails app has been created, tested, outlined and seeded at'
|
40
|
+
puts "#{ENV['PWD']}/#{subdir_name} ."
|
40
41
|
puts 'It is currently configured to use the SQLite database in the'
|
41
42
|
puts 'development environment.'
|
42
43
|
puts 'To set up the PostgreSQL database, enter the'
|
@@ -44,3 +45,7 @@ puts "#{ENV['PWD']}/#{subdir_name} directory and enter the command"
|
|
44
45
|
puts 'sh pg-setup.sh .'
|
45
46
|
puts 'Please note that the rails, pg, and nokogiri gems may be outdated.'
|
46
47
|
puts 'You should update these gem versions in the Gemfile.'
|
48
|
+
puts
|
49
|
+
puts 'There is a list of things to do at'
|
50
|
+
puts "#{ENV['PWD']}/#{subdir_name}/README-to_do.txt"
|
51
|
+
puts
|
data/code_test.sh
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
DIR_PARENT="${PWD%/*}"
|
4
|
+
DIR_TMP="$DIR_PARENT/tmp"
|
5
|
+
mkdir -p log
|
6
|
+
rm -rf tmp
|
7
|
+
|
8
|
+
echo '--------------'
|
9
|
+
echo 'bundle install'
|
10
|
+
bin/setup >/dev/null
|
11
|
+
|
12
|
+
echo
|
13
|
+
echo '----------'
|
14
|
+
echo 'rubocop -D'
|
15
|
+
rubocop -D
|
16
|
+
|
17
|
+
echo
|
18
|
+
echo '-----------'
|
19
|
+
echo 'sandi_meter'
|
20
|
+
sandi_meter
|
21
|
+
|
22
|
+
echo
|
23
|
+
echo '------------'
|
24
|
+
echo 'bundle-audit'
|
25
|
+
bundle-audit
|
26
|
+
|
27
|
+
echo '----------------------------------------------'
|
28
|
+
echo 'gemsurance --output log/gemsurance_report.html'
|
29
|
+
gemsurance --output log/gemsurance_report.html
|
30
|
+
echo 'Gemsurance Report: log/gemsurance_report.html'
|
31
|
+
|
32
|
+
echo '------------------------------------------------------------------------'
|
33
|
+
echo 'bundle viz --file=log/diagram-gems --format=svg --requirements --version'
|
34
|
+
bundle viz --file=log/diagram-gems --format=svg --requirements --version
|
35
|
+
echo 'Gem dependency diagram: log/diagram-gems.svg'
|
data/credentials.sh
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# This script provides one-stop shopping for entering your credentials.
|
4
|
+
# Please run this script when you reset the Docker container.
|
5
|
+
# The "git commit" command will not work without your Git credentials.
|
6
|
+
|
7
|
+
# Output:
|
8
|
+
# First argument if it is not blank
|
9
|
+
# Second argument if first argument is blank
|
10
|
+
anti_blank () {
|
11
|
+
if [ -z "$1" ]; then
|
12
|
+
echo "$2"
|
13
|
+
else
|
14
|
+
echo "$1"
|
15
|
+
fi
|
16
|
+
}
|
17
|
+
|
18
|
+
echo '***********************'
|
19
|
+
echo 'SETTING GIT CREDENTIALS'
|
20
|
+
EMAIL_DEF='you@example.com'
|
21
|
+
|
22
|
+
echo
|
23
|
+
echo "Default email address: ${EMAIL_DEF}"
|
24
|
+
echo
|
25
|
+
echo 'Enter your Git email address:'
|
26
|
+
read EMAIL_SEL
|
27
|
+
EMAIL=$(anti_blank $EMAIL_SEL $EMAIL_DEF)
|
28
|
+
echo
|
29
|
+
|
30
|
+
echo
|
31
|
+
echo '------------------------------'
|
32
|
+
echo "git config --global user.email"
|
33
|
+
echo "$EMAIL"
|
34
|
+
git config --global user.email "$EMAIL"
|
35
|
+
|
36
|
+
NAME_DEF='Your Name'
|
37
|
+
echo
|
38
|
+
echo "Default name: ${NAME_DEF}"
|
39
|
+
echo
|
40
|
+
echo 'Enter your Git name:'
|
41
|
+
read NAME_SEL
|
42
|
+
|
43
|
+
# NOTE: The double quotes are needed to avoid truncating the string
|
44
|
+
# at the space.
|
45
|
+
NAME=$(anti_blank "$NAME_SEL" "$NAME_DEF")
|
46
|
+
|
47
|
+
echo
|
48
|
+
echo '-----------------------------'
|
49
|
+
echo "git config --global user.name"
|
50
|
+
echo "$NAME"
|
51
|
+
git config --global user.name "$NAME"
|
52
|
+
echo
|
data/gem_test.sh
CHANGED
@@ -5,61 +5,19 @@ DIR_GENERIC_APP=$PWD
|
|
5
5
|
DIR_PARENT="${PWD%/*}"
|
6
6
|
mkdir -p log
|
7
7
|
|
8
|
-
echo '
|
8
|
+
echo '=============='
|
9
9
|
echo 'bundle install'
|
10
10
|
bin/setup >/dev/null
|
11
11
|
|
12
|
-
echo '
|
13
|
-
echo 'BEGIN
|
14
|
-
rake
|
15
|
-
echo 'FINISHED
|
16
|
-
echo '
|
12
|
+
echo '=================='
|
13
|
+
echo 'BEGIN PART 1: rake'
|
14
|
+
rake
|
15
|
+
echo 'FINISHED PART 1: rake'
|
16
|
+
echo '====================='
|
17
17
|
echo
|
18
|
-
echo '
|
19
|
-
echo 'BEGIN
|
20
|
-
rubocop
|
21
|
-
echo 'FINISHED
|
22
|
-
echo '
|
23
|
-
echo
|
24
|
-
echo '************************************'
|
25
|
-
echo 'BEGIN TEST 1A: SQLite, build_fast.sh'
|
26
|
-
cd $DIR_PARENT/tmp1 && spring stop
|
27
|
-
cd $DIR_PARENT/tmp1 && sh build_fast.sh 2>&1 | tee $DIR_GENERIC_APP/log/tmp1A.txt
|
28
|
-
echo 'FINISHED TEST1A'
|
29
|
-
echo '***************'
|
30
|
-
echo ''
|
31
|
-
echo '***********************************'
|
32
|
-
echo 'BEGIN TEST 1B: SQLite, test_code.sh'
|
33
|
-
printf 'y\n' | cd $DIR_PARENT/tmp1 && sh test_code.sh 2>&1 | tee $DIR_GENERIC_APP/log/tmp1B.txt
|
34
|
-
echo 'FINISHED TEST 1B'
|
35
|
-
echo '****************'
|
36
|
-
|
37
|
-
echo '*************************************'
|
38
|
-
echo 'BEGIN TEST 2A: PostgreSQL, pg-test.sh'
|
39
|
-
printf 'y\n' | cd $DIR_PARENT/tmp1 && sh pg-test.sh auto 2>&1 | tee $DIR_GENERIC_APP/log/tmp2A.txt
|
40
|
-
echo 'FINISHED TEST 2A'
|
41
|
-
echo '****************'
|
42
|
-
|
43
|
-
echo '***************************************'
|
44
|
-
echo 'BEGIN TEST 2B: PostgreSQL, test_code.sh'
|
45
|
-
cd $DIR_PARENT/tmp1 && sh test_code.sh auto 2>&1 | tee $DIR_GENERIC_APP/log/tmp2B.txt
|
46
|
-
echo "\n"
|
47
|
-
echo 'FINISHED TEST 2B'
|
48
|
-
echo '****************'
|
49
|
-
|
50
|
-
echo
|
51
|
-
echo '***********************************'
|
52
|
-
echo 'The locations of the test logs are:'
|
53
|
-
echo "GEM TEST: $DIR_GENERIC_APP/log/generic_app-rake_test.txt"
|
54
|
-
echo "GEM TEST - code quality: $DIR_GENERIC_APP/log/generic_app-rubocop.txt"
|
55
|
-
echo "TEST 1A (SQLite, build_fast.sh): $DIR_GENERIC_APP/log/tmp1A.txt"
|
56
|
-
echo "TEST 1B (SQLite, test_code.sh): $DIR_GENERIC_APP/log/tmp1B.txt"
|
57
|
-
echo "TEST 2A (PostgreSQL, pg-test.sh): $DIR_GENERIC_APP/log/tmp2A.txt"
|
58
|
-
echo "TEST 2B (PostgreSQL, test_code.sh): $DIR_GENERIC_APP/log/tmp2B.txt"
|
59
|
-
|
60
|
-
echo
|
61
|
-
echo 'If all went well, the results at the end of tests 1A and 2A show 0 failures and 0 errors.'
|
62
|
-
echo 'Please note that in tests 1B and 2B, bundle-audit will flag violations due to outdated'
|
63
|
-
echo 'rails, pg, and nokogiri gems.'
|
64
|
-
echo 'It is up to the user to update these gems upon creating a new Rails project.'
|
18
|
+
echo '========================'
|
19
|
+
echo 'BEGIN PART 2: rubocop -D'
|
20
|
+
rubocop -D
|
21
|
+
echo 'FINISHED PART 2: rubocop -D'
|
22
|
+
echo '==========================='
|
65
23
|
echo
|
data/generic_app.gemspec
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
https://github.com/jhsu802701/generic-rails-2017-01-10-2332.git
|
data/lib/generic_app/version.rb
CHANGED
data/lib/generic_app.rb
CHANGED
@@ -3,9 +3,10 @@
|
|
3
3
|
require 'generic_app/version'
|
4
4
|
require 'string_in_file'
|
5
5
|
require 'line_containing'
|
6
|
+
require 'remove_double_blank'
|
6
7
|
|
7
|
-
|
8
|
-
|
8
|
+
DIR_MAIN = File.expand_path('../../', __FILE__)
|
9
|
+
DIR_PARENT = File.expand_path('../../../', __FILE__)
|
9
10
|
|
10
11
|
#
|
11
12
|
module GenericApp
|
@@ -13,20 +14,41 @@ module GenericApp
|
|
13
14
|
def self.create_new(subdir_name, email)
|
14
15
|
t1 = Thread.new { self.git_clone(subdir_name) }
|
15
16
|
t1.join
|
17
|
+
self.remove_heroku_name(subdir_name)
|
16
18
|
self.email_update(subdir_name, email)
|
19
|
+
self.remove_badges(subdir_name)
|
17
20
|
self.git_init(subdir_name)
|
18
21
|
end
|
19
22
|
|
23
|
+
def self.remove_heroku_name(subdir_name)
|
24
|
+
File.delete("#{subdir_name}/config/heroku_name.txt")
|
25
|
+
end
|
26
|
+
|
20
27
|
def self.git_clone(subdir_name)
|
21
28
|
puts '------------------------------------'
|
22
29
|
puts 'Downloading the Generic App Template'
|
23
|
-
|
30
|
+
url_template = StringInFile.read("#{DIR_MAIN}/lib/generic_app/git_clone_url.txt")
|
31
|
+
system("git clone #{url_template} #{subdir_name}")
|
24
32
|
end
|
25
33
|
|
26
34
|
def self.email_update(subdir_name, email)
|
27
|
-
email_orig = '
|
28
|
-
|
29
|
-
|
35
|
+
email_orig = 'somebody@rubyonracetracks.com'
|
36
|
+
path_of_email_1 = "#{subdir_name}/config/initializers/devise.rb"
|
37
|
+
path_of_email_2 = "#{subdir_name}/app/views/static_pages/contact.html.erb"
|
38
|
+
path_of_email_3 = "#{subdir_name}/test/integration/static_pages_test.rb"
|
39
|
+
StringInFile.replace(email_orig, email, path_of_email_1)
|
40
|
+
StringInFile.replace(email_orig, email, path_of_email_2)
|
41
|
+
StringInFile.replace(email_orig, email, path_of_email_3)
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.remove_badges(subdir_name)
|
45
|
+
path_readme = "#{subdir_name}/README.md"
|
46
|
+
line1 = 'BEGIN: continuous integration badges'
|
47
|
+
line2 = 'END: continuous integration badges'
|
48
|
+
LineContaining.delete_between(line1, line2, path_readme)
|
49
|
+
LineContaining.delete(line1, path_readme)
|
50
|
+
LineContaining.delete(line2, path_readme)
|
51
|
+
RemoveDoubleBlank.update(path_readme)
|
30
52
|
end
|
31
53
|
|
32
54
|
def self.git_init(subdir_name)
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'generic_app'
|
3
|
+
require 'string_in_file'
|
4
|
+
|
5
|
+
dir_parent = File.expand_path('../../../../', __FILE__)
|
6
|
+
dir_app_1 = "#{dir_parent}/tmp1"
|
7
|
+
|
8
|
+
describe GenericApp do
|
9
|
+
it 'New Rails app' do
|
10
|
+
puts
|
11
|
+
puts '**************'
|
12
|
+
puts 'CREATING APP 1'
|
13
|
+
puts 'New Rails app'
|
14
|
+
system("rm -rf #{dir_app_1}")
|
15
|
+
Dir.chdir(dir_parent) do
|
16
|
+
GenericApp.create_new('tmp1', '007@railstutorial.org')
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'config/heroku_name.txt should be removed' do
|
21
|
+
expect(File.exist?("#{dir_app_1}/config/heroku_name.txt")).to eq(false)
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'Email address should be updated' do
|
25
|
+
expect(StringInFile.present('007@railstutorial.org', "#{dir_app_1}/config/initializers/devise.rb")).to eq(true)
|
26
|
+
expect(StringInFile.present('007@railstutorial.org', "#{dir_app_1}/app/views/static_pages/contact.html.erb")).to eq(true)
|
27
|
+
expect(StringInFile.present('007@railstutorial.org', "#{dir_app_1}/test/integration/static_pages_test.rb")).to eq(true)
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'Badges should be removed from README.md' do
|
31
|
+
expect(StringInFile.present('continuous integration badges', "#{dir_app_1}/README.md")).to eq(false)
|
32
|
+
expect(StringInFile.present('[CircleCI]', "#{dir_app_1}/README.md")).to eq(false)
|
33
|
+
expect(StringInFile.present('[Dependency Status]', "#{dir_app_1}/README.md")).to eq(false)
|
34
|
+
expect(StringInFile.present('[security]', "#{dir_app_1}/README.md")).to eq(false)
|
35
|
+
expect(StringInFile.present('[Code Climate]', "#{dir_app_1}/README.md")).to eq(false)
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'New README.md file should be provided' do
|
39
|
+
expect(StringInFile.present('Generic App Template', "#{dir_app_1}/README.md")).to eq(true)
|
40
|
+
end
|
41
|
+
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: generic_app
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Hsu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-01-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: remove_double_blank
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
description: Instead of creating your Rails app from scratch, start with a generic
|
84
98
|
app.
|
85
99
|
email:
|
@@ -98,14 +112,18 @@ files:
|
|
98
112
|
- LICENSE.txt
|
99
113
|
- README.md
|
100
114
|
- Rakefile
|
115
|
+
- all.sh
|
101
116
|
- bin/generic_app
|
102
117
|
- bin/setup
|
118
|
+
- code_test.sh
|
119
|
+
- credentials.sh
|
103
120
|
- gem_install.sh
|
104
121
|
- gem_test.sh
|
105
122
|
- generic_app.gemspec
|
106
123
|
- lib/generic_app.rb
|
124
|
+
- lib/generic_app/git_clone_url.txt
|
107
125
|
- lib/generic_app/version.rb
|
108
|
-
- spec/lib/
|
126
|
+
- spec/lib/generic_app_spec.rb
|
109
127
|
- spec/spec_helper.rb
|
110
128
|
homepage: https://github.com/jhsu802701/generic_app
|
111
129
|
licenses:
|
@@ -127,10 +145,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
127
145
|
version: '0'
|
128
146
|
requirements: []
|
129
147
|
rubyforge_project:
|
130
|
-
rubygems_version: 2.5.
|
148
|
+
rubygems_version: 2.5.2
|
131
149
|
signing_key:
|
132
150
|
specification_version: 4
|
133
151
|
summary: Save time by instantly create a generic Rails app.
|
134
152
|
test_files:
|
135
|
-
- spec/lib/
|
153
|
+
- spec/lib/generic_app_spec.rb
|
136
154
|
- spec/spec_helper.rb
|
data/spec/lib/1_sqlite_spec.rb
DELETED
@@ -1,71 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'generic_app'
|
3
|
-
require 'string_in_file'
|
4
|
-
|
5
|
-
dir_app_1 = "#{ENV['DIR_PARENT']}/tmp1"
|
6
|
-
|
7
|
-
describe GenericApp do
|
8
|
-
it 'New Rails app' do
|
9
|
-
puts
|
10
|
-
puts '**************'
|
11
|
-
puts 'CREATING APP 1'
|
12
|
-
puts 'New Rails app'
|
13
|
-
system("rm -rf #{dir_app_1}")
|
14
|
-
Dir.chdir(ENV['DIR_PARENT']) do
|
15
|
-
GenericApp.create_new('tmp1', '007@railstutorial.org')
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
it 'Email address should be updated' do
|
20
|
-
expect(StringInFile.present('007@railstutorial.org', "#{dir_app_1}/config/initializers/devise.rb")).to eq(true)
|
21
|
-
end
|
22
|
-
|
23
|
-
it 'Bash scripts should be provided' do
|
24
|
-
expect(StringInFile.present('heroku run rake db:migrate', "#{dir_app_1}/heroku_upload.sh")).to eq(true)
|
25
|
-
expect(StringInFile.present('pkill', "#{dir_app_1}/kill_spring.sh")).to eq(true)
|
26
|
-
expect(StringInFile.present('tree app/controllers', "#{dir_app_1}/outline.sh")).to eq(true)
|
27
|
-
expect(StringInFile.present('rails console --sandbox', "#{dir_app_1}/sandbox.sh")).to eq(true)
|
28
|
-
expect(StringInFile.present('rake db:seed', "#{dir_app_1}/seed.sh")).to eq(true)
|
29
|
-
expect(StringInFile.present('rails server -b 0.0.0.0', "#{dir_app_1}/server.sh")).to eq(true)
|
30
|
-
expect(StringInFile.present('bundle install', "#{dir_app_1}/build_fast.sh")).to eq(true)
|
31
|
-
end
|
32
|
-
|
33
|
-
it 'New README.md file should be provided' do
|
34
|
-
expect(StringInFile.present('outline.sh', "#{dir_app_1}/README.md")).to eq(true)
|
35
|
-
end
|
36
|
-
|
37
|
-
it 'Guardfile should be set to automatically run tests upon startup' do
|
38
|
-
expect(StringInFile.present('all_on_start: true', "#{dir_app_1}/Guardfile")).to eq(true)
|
39
|
-
end
|
40
|
-
|
41
|
-
it 'The .gitignore file includes tmp, tmp*, and ,DS_Store' do
|
42
|
-
expect(StringInFile.present('tmp', "#{dir_app_1}/.gitignore")).to eq(true)
|
43
|
-
expect(StringInFile.present('tmp*', "#{dir_app_1}/.gitignore")).to eq(true)
|
44
|
-
expect(StringInFile.present('.DS_Store', "#{dir_app_1}/.gitignore")).to eq(true)
|
45
|
-
expect(StringInFile.present('notes/*.dot', "#{dir_app_1}/.gitignore")).to eq(true)
|
46
|
-
expect(StringInFile.present('notes/*.svg', "#{dir_app_1}/.gitignore")).to eq(true)
|
47
|
-
expect(StringInFile.present('gemsurance_report.html', "#{dir_app_1}/.gitignore")).to eq(true)
|
48
|
-
end
|
49
|
-
|
50
|
-
it 'The notes/1-file_list-controllers.txt file should be in place' do
|
51
|
-
expect(StringInFile.present('users_controller_test.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
52
|
-
expect(StringInFile.present('users_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
53
|
-
expect(StringInFile.present('confirmations_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
54
|
-
expect(StringInFile.present('omniauth_callbacks_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
55
|
-
expect(StringInFile.present('passwords_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
56
|
-
expect(StringInFile.present('registrations_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
57
|
-
expect(StringInFile.present('sessions_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
58
|
-
expect(StringInFile.present('unlocks_controller.rb', "#{dir_app_1}/notes/1-file_list-controllers.txt")).to eq(true)
|
59
|
-
end
|
60
|
-
|
61
|
-
it 'The notes/1-file_list-misc.txt file should be in place' do
|
62
|
-
expect(StringInFile.present('application_helper.rb', "#{dir_app_1}/notes/1-file_list-helpers.txt")).to eq(true)
|
63
|
-
end
|
64
|
-
|
65
|
-
it 'The notes/1-file_list-models.txt file should be in place' do
|
66
|
-
expect(StringInFile.present('admin_test.rb', "#{dir_app_1}/notes/1-file_list-models.txt")).to eq(true)
|
67
|
-
expect(StringInFile.present('user_test.rb', "#{dir_app_1}/notes/1-file_list-models.txt")).to eq(true)
|
68
|
-
expect(StringInFile.present('admin.rb', "#{dir_app_1}/notes/1-file_list-models.txt")).to eq(true)
|
69
|
-
expect(StringInFile.present('user.rb', "#{dir_app_1}/notes/1-file_list-models.txt")).to eq(true)
|
70
|
-
end
|
71
|
-
end
|