super_test_engine 0.0.6 → 0.1.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/README.md +7 -21
- data/lib/super_test_engine.rb +1 -3
- data/lib/super_test_engine/copy_app_templates/controllers/favorite_things_controller.rb +50 -0
- data/lib/super_test_engine/copy_app_templates/controllers/members_controller.rb +57 -0
- data/lib/super_test_engine/copy_app_templates/controllers/ships_controller.rb +47 -0
- data/{db/migrate → lib/super_test_engine/copy_app_templates/migrations}/20190216224956_create_members.rb +0 -0
- data/lib/super_test_engine/copy_app_templates/migrations/20190803143320_create_ships.rb +11 -0
- data/lib/super_test_engine/copy_app_templates/migrations/20190806014121_add_ship_to_members.rb +5 -0
- data/lib/super_test_engine/copy_app_templates/migrations/20191126050453_create_favorite_things.rb +10 -0
- data/lib/super_test_engine/copy_app_templates/models/favorite_thing.rb +7 -0
- data/{app → lib/super_test_engine/copy_app_templates}/models/member.rb +10 -0
- data/lib/super_test_engine/copy_app_templates/models/ship.rb +3 -0
- data/lib/super_test_engine/copy_app_templates/routes.rb +11 -0
- data/lib/super_test_engine/copy_app_templates/seeds.rb +2 -0
- data/lib/super_test_engine/copy_app_templates/views/members/_favorite_things.html.erb +11 -0
- data/lib/super_test_engine/copy_app_templates/views/members/show.html.erb +11 -0
- data/lib/super_test_engine/fixtures/favorite_things.yml +9 -0
- data/{test → lib/super_test_engine}/fixtures/members.yml +56 -0
- data/lib/super_test_engine/fixtures/ships.yml +10 -0
- data/lib/super_test_engine/generate_copy_app.rb +49 -0
- data/lib/super_test_engine/generate_dummy.rb +98 -0
- data/lib/super_test_engine/starfleet_seeder.rb +50 -0
- data/super_test_engine.gemspec +23 -0
- metadata +47 -28
- data/MIT-LICENSE +0 -20
- data/Rakefile +0 -32
- data/app/controllers/admin/members_controller.rb +0 -9
- data/app/controllers/admin_controller.rb +0 -2
- data/app/dashboards/member_dashboard.rb +0 -81
- data/config/routes.rb +0 -5
- data/db/seeds.rb +0 -34
- data/lib/generators/super_test_engine/dummy/USAGE +0 -8
- data/lib/generators/super_test_engine/dummy/dummy_generator.rb +0 -108
- data/lib/generators/super_test_engine/dummy/templates/db_seeds.rb.tt +0 -1
- data/lib/super_test_engine/engine.rb +0 -9
- data/lib/super_test_engine/version.rb +0 -3
data/config/routes.rb
DELETED
data/db/seeds.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
class EnterpriseSeeder
|
2
|
-
def initialize
|
3
|
-
@seeded = {}
|
4
|
-
end
|
5
|
-
|
6
|
-
def seed(basename, key, klass, value)
|
7
|
-
@seeded[basename] ||= {}
|
8
|
-
puts "--> #{key} (#{value})"
|
9
|
-
@seeded[basename][key] = klass.find_or_create_by(value)
|
10
|
-
puts " success!"
|
11
|
-
rescue => e
|
12
|
-
puts " failure (#{e.message})"
|
13
|
-
end
|
14
|
-
|
15
|
-
def seed_from_fixture(basename, klass)
|
16
|
-
puts "==> #{basename}"
|
17
|
-
fixtures(basename).each do |key, value|
|
18
|
-
seed(basename, key, klass, value)
|
19
|
-
end
|
20
|
-
|
21
|
-
nil
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
def fixtures(basename)
|
27
|
-
@fixtures_dir ||= Pathname.new("../test/fixtures").expand_path(__dir__)
|
28
|
-
|
29
|
-
YAML.load_file(@fixtures_dir.join("#{basename}.yml"))
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
seeder = EnterpriseSeeder.new
|
34
|
-
seeder.seed_from_fixture("members", Member)
|
@@ -1,108 +0,0 @@
|
|
1
|
-
require "fileutils"
|
2
|
-
require "tmpdir"
|
3
|
-
|
4
|
-
require "rails"
|
5
|
-
require "rails/generators/rails/app/app_generator"
|
6
|
-
require "rails/generators/rails/plugin/plugin_generator"
|
7
|
-
require "generators/super/install/install_generator"
|
8
|
-
|
9
|
-
Rails::Generators::AppGenerator
|
10
|
-
|
11
|
-
module Rails
|
12
|
-
module Generators
|
13
|
-
class AppGenerator
|
14
|
-
def valid_const?
|
15
|
-
true
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
class PluginGenerator
|
20
|
-
def valid_const?
|
21
|
-
true
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
module SuperTestEngine
|
28
|
-
class DummyGenerator < Rails::Generators::Base
|
29
|
-
source_root(File.expand_path("templates", __dir__))
|
30
|
-
|
31
|
-
def create_new_plugin
|
32
|
-
if plugin_name.blank?
|
33
|
-
warn "Not currently in a plugin directory"
|
34
|
-
exit
|
35
|
-
end
|
36
|
-
|
37
|
-
opts = {
|
38
|
-
force: true,
|
39
|
-
skip_active_storage: true,
|
40
|
-
skip_action_mailer: true,
|
41
|
-
skip_action_cable: true,
|
42
|
-
skip_puma: true,
|
43
|
-
skip_coffee: true,
|
44
|
-
database: "sqlite3",
|
45
|
-
}
|
46
|
-
|
47
|
-
Dir.mktmpdir do |dir|
|
48
|
-
plugin_path = File.join(dir, plugin_name)
|
49
|
-
new_dummy_path = File.join(plugin_path, "test/dummy")
|
50
|
-
|
51
|
-
invoke(Rails::Generators::PluginGenerator, [plugin_path], opts)
|
52
|
-
|
53
|
-
inside(new_dummy_path) do
|
54
|
-
remove_file(".ruby-version")
|
55
|
-
end
|
56
|
-
|
57
|
-
FileUtils.rm_rf(dummy_path)
|
58
|
-
FileUtils.mv(new_dummy_path, dummy_path)
|
59
|
-
end
|
60
|
-
end
|
61
|
-
|
62
|
-
def delete_unnecessary_files
|
63
|
-
inside(dummy_path) do
|
64
|
-
remove_file("app/assets/javascripts/cable.js")
|
65
|
-
remove_file("app/channels/")
|
66
|
-
end
|
67
|
-
end
|
68
|
-
|
69
|
-
def apply_required_changes
|
70
|
-
template("db_seeds.rb.tt", File.join(dummy_path, "db/seeds.rb"))
|
71
|
-
|
72
|
-
insert_into_file(
|
73
|
-
File.join(dummy_path, "config/application.rb"),
|
74
|
-
%(require "super_test_engine"\n),
|
75
|
-
before: "\nmodule Dummy\n"
|
76
|
-
)
|
77
|
-
|
78
|
-
inside(dummy_path) do
|
79
|
-
invoke(Super::InstallGenerator, [], {})
|
80
|
-
remove_file("app/controllers/admin/")
|
81
|
-
remove_file("app/controllers/admin_controller.rb")
|
82
|
-
remove_file("app/super/")
|
83
|
-
end
|
84
|
-
|
85
|
-
rake("db:create")
|
86
|
-
rake("db:migrate")
|
87
|
-
end
|
88
|
-
|
89
|
-
private
|
90
|
-
|
91
|
-
def dummy_path
|
92
|
-
@dummy_path ||= File.expand_path("test/dummy", destination_root)
|
93
|
-
end
|
94
|
-
|
95
|
-
def plugin_name
|
96
|
-
@plugin_name ||=
|
97
|
-
begin
|
98
|
-
filename = Dir.glob("*.gemspec").first
|
99
|
-
|
100
|
-
if filename.present?
|
101
|
-
File.basename(filename, ".gemspec")
|
102
|
-
else
|
103
|
-
""
|
104
|
-
end
|
105
|
-
end
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
@@ -1 +0,0 @@
|
|
1
|
-
SuperTestEngine::Engine.load_seed
|