vite_rails 1.0.10 → 2.0.2

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.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +55 -30
  4. data/lib/tasks/vite.rake +17 -0
  5. data/lib/vite_rails.rb +5 -82
  6. data/lib/vite_rails/config.rb +11 -135
  7. data/lib/vite_rails/engine.rb +7 -11
  8. data/lib/vite_rails/installation.rb +52 -0
  9. data/lib/vite_rails/tag_helpers.rb +61 -0
  10. data/lib/vite_rails/version.rb +2 -2
  11. data/{test/mounted_app/test/dummy/config/vite.json → templates/config/rails-vite.json} +1 -0
  12. data/{lib/install/javascript → templates}/entrypoints/application.js +0 -0
  13. metadata +25 -127
  14. data/lib/install/bin/vite +0 -17
  15. data/lib/install/binstubs.rb +0 -6
  16. data/lib/install/config/vite.config.ts +0 -11
  17. data/lib/install/config/vite.json +0 -14
  18. data/lib/install/template.rb +0 -40
  19. data/lib/tasks/vite/binstubs.rake +0 -12
  20. data/lib/tasks/vite/build.rake +0 -29
  21. data/lib/tasks/vite/clean.rake +0 -23
  22. data/lib/tasks/vite/clobber.rake +0 -20
  23. data/lib/tasks/vite/info.rake +0 -20
  24. data/lib/tasks/vite/install.rake +0 -12
  25. data/lib/tasks/vite/install_dependencies.rake +0 -20
  26. data/lib/tasks/vite/verify_install.rake +0 -23
  27. data/lib/vite_rails/builder.rb +0 -111
  28. data/lib/vite_rails/commands.rb +0 -109
  29. data/lib/vite_rails/dev_server.rb +0 -23
  30. data/lib/vite_rails/dev_server_proxy.rb +0 -57
  31. data/lib/vite_rails/helper.rb +0 -69
  32. data/lib/vite_rails/manifest.rb +0 -140
  33. data/lib/vite_rails/runner.rb +0 -53
  34. data/package.json +0 -16
  35. data/package/default.vite.json +0 -16
  36. data/test/builder_test.rb +0 -77
  37. data/test/commands_test.rb +0 -67
  38. data/test/config_test.rb +0 -133
  39. data/test/dev_server_proxy_test.rb +0 -101
  40. data/test/dev_server_test.rb +0 -9
  41. data/test/engine_rake_tasks_test.rb +0 -80
  42. data/test/helper_test.rb +0 -70
  43. data/test/manifest_test.rb +0 -79
  44. data/test/mode_test.rb +0 -16
  45. data/test/mounted_app/Rakefile +0 -6
  46. data/test/mounted_app/test/dummy/Rakefile +0 -5
  47. data/test/mounted_app/test/dummy/bin/rails +0 -5
  48. data/test/mounted_app/test/dummy/bin/rake +0 -5
  49. data/test/mounted_app/test/dummy/config.ru +0 -7
  50. data/test/mounted_app/test/dummy/config/application.rb +0 -12
  51. data/test/mounted_app/test/dummy/config/environment.rb +0 -5
  52. data/test/mounted_app/test/dummy/package.json +0 -8
  53. data/test/mounted_app/test/dummy/yarn.lock +0 -208
  54. data/test/rake_tasks_test.rb +0 -60
  55. data/test/runner_test.rb +0 -31
  56. data/test/test_app/Rakefile +0 -5
  57. data/test/test_app/app/frontend/entrypoints/application.js +0 -2
  58. data/test/test_app/bin/vite +0 -17
  59. data/test/test_app/config.ru +0 -7
  60. data/test/test_app/config/application.rb +0 -13
  61. data/test/test_app/config/environment.rb +0 -6
  62. data/test/test_app/config/vite.json +0 -18
  63. data/test/test_app/config/vite_additional_paths.json +0 -5
  64. data/test/test_app/config/vite_public_dir.json +0 -5
  65. data/test/test_app/package.json +0 -13
  66. data/test/test_app/public/vite-production/manifest.json +0 -22
  67. data/test/test_app/some.config.js +0 -0
  68. data/test/test_app/yarn.lock +0 -11
  69. data/test/test_helper.rb +0 -68
data/test/mode_test.rb DELETED
@@ -1,16 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- class ModeTest < ViteRails::Test
6
- def test_mode
7
- assert_equal Rails.env, ViteRails.config.mode
8
- assert_equal ViteRails.config.mode, ViteRails.mode
9
- end
10
-
11
- def test_mode_with_rails_env
12
- with_rails_env('staging') do |config|
13
- assert_equal 'staging', config.mode
14
- end
15
- end
16
- end
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'bundler/setup'
4
-
5
- APP_RAKEFILE = File.expand_path('test/dummy/Rakefile', __dir__)
6
- load 'rails/tasks/engine.rake'
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'config/application'
4
-
5
- Rails.application.load_tasks
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- APP_PATH = File.expand_path('../config/application', __dir__)
5
- require 'rails/commands'
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- require 'rake'
5
- Rake.application.run
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # This file allows the `Rails.root` to be correctly determined.
4
-
5
- require_relative 'config/environment'
6
-
7
- run Rails.application
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'action_controller/railtie'
4
- require 'action_view/railtie'
5
- require 'vite_rails'
6
-
7
- module TestDummyApp
8
- class Application < Rails::Application
9
- config.secret_key_base = 'abcdef'
10
- config.eager_load = true
11
- end
12
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'application'
4
-
5
- Rails.application.initialize!
@@ -1,8 +0,0 @@
1
- {
2
- "private": true,
3
- "dependencies": {
4
- "vite": "^2.0.0-beta.34",
5
- "vite-plugin-ruby": "^1.0.2"
6
- },
7
- "license": "MIT"
8
- }
@@ -1,208 +0,0 @@
1
- # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2
- # yarn lockfile v1
3
-
4
-
5
- "@nodelib/fs.scandir@2.1.4":
6
- version "2.1.4"
7
- resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69"
8
- integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==
9
- dependencies:
10
- "@nodelib/fs.stat" "2.0.4"
11
- run-parallel "^1.1.9"
12
-
13
- "@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2":
14
- version "2.0.4"
15
- resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz#a3f2dd61bab43b8db8fa108a121cfffe4c676655"
16
- integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==
17
-
18
- "@nodelib/fs.walk@^1.2.3":
19
- version "1.2.6"
20
- resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz#cce9396b30aa5afe9e3756608f5831adcb53d063"
21
- integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==
22
- dependencies:
23
- "@nodelib/fs.scandir" "2.1.4"
24
- fastq "^1.6.0"
25
-
26
- braces@^3.0.1:
27
- version "3.0.2"
28
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
29
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
30
- dependencies:
31
- fill-range "^7.0.1"
32
-
33
- colorette@^1.2.1:
34
- version "1.2.1"
35
- resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b"
36
- integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==
37
-
38
- esbuild@^0.8.26:
39
- version "0.8.34"
40
- resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.8.34.tgz#16b4ac58f74c821d2c5a8c2f0585ca96a38ab4e6"
41
- integrity sha512-tnr0V1ooakYr1aRLXQLzCn2GVG1kBTW3FWpRyC+NgrR3ntsouVpJOlTOV0BS4YLATx3/c+x3h/uBq9lWJlUAtQ==
42
-
43
- fast-glob@^3.2.4:
44
- version "3.2.5"
45
- resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661"
46
- integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==
47
- dependencies:
48
- "@nodelib/fs.stat" "^2.0.2"
49
- "@nodelib/fs.walk" "^1.2.3"
50
- glob-parent "^5.1.0"
51
- merge2 "^1.3.0"
52
- micromatch "^4.0.2"
53
- picomatch "^2.2.1"
54
-
55
- fastq@^1.6.0:
56
- version "1.10.0"
57
- resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.10.0.tgz#74dbefccade964932cdf500473ef302719c652bb"
58
- integrity sha512-NL2Qc5L3iQEsyYzweq7qfgy5OtXCmGzGvhElGEd/SoFWEMOEczNh5s5ocaF01HDetxz+p8ecjNPA6cZxxIHmzA==
59
- dependencies:
60
- reusify "^1.0.4"
61
-
62
- fill-range@^7.0.1:
63
- version "7.0.1"
64
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
65
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
66
- dependencies:
67
- to-regex-range "^5.0.1"
68
-
69
- fsevents@~2.1.2:
70
- version "2.1.3"
71
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e"
72
- integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==
73
-
74
- function-bind@^1.1.1:
75
- version "1.1.1"
76
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
77
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
78
-
79
- glob-parent@^5.1.0:
80
- version "5.1.1"
81
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229"
82
- integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==
83
- dependencies:
84
- is-glob "^4.0.1"
85
-
86
- has@^1.0.3:
87
- version "1.0.3"
88
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
89
- integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
90
- dependencies:
91
- function-bind "^1.1.1"
92
-
93
- is-core-module@^2.1.0:
94
- version "2.2.0"
95
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a"
96
- integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==
97
- dependencies:
98
- has "^1.0.3"
99
-
100
- is-extglob@^2.1.1:
101
- version "2.1.1"
102
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
103
- integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
104
-
105
- is-glob@^4.0.1:
106
- version "4.0.1"
107
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
108
- integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
109
- dependencies:
110
- is-extglob "^2.1.1"
111
-
112
- is-number@^7.0.0:
113
- version "7.0.0"
114
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
115
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
116
-
117
- merge2@^1.3.0:
118
- version "1.4.1"
119
- resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
120
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
121
-
122
- micromatch@^4.0.2:
123
- version "4.0.2"
124
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
125
- integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==
126
- dependencies:
127
- braces "^3.0.1"
128
- picomatch "^2.0.5"
129
-
130
- nanoid@^3.1.20:
131
- version "3.1.20"
132
- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788"
133
- integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==
134
-
135
- path-parse@^1.0.6:
136
- version "1.0.6"
137
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
138
- integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
139
-
140
- picomatch@^2.0.5, picomatch@^2.2.1:
141
- version "2.2.2"
142
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
143
- integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
144
-
145
- postcss@^8.2.1:
146
- version "8.2.4"
147
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.4.tgz#20a98a39cf303d15129c2865a9ec37eda0031d04"
148
- integrity sha512-kRFftRoExRVXZlwUuay9iC824qmXPcQQVzAjbCCgjpXnkdMCJYBu2gTwAaFBzv8ewND6O8xFb3aELmEkh9zTzg==
149
- dependencies:
150
- colorette "^1.2.1"
151
- nanoid "^3.1.20"
152
- source-map "^0.6.1"
153
-
154
- resolve@^1.19.0:
155
- version "1.19.0"
156
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.19.0.tgz#1af5bf630409734a067cae29318aac7fa29a267c"
157
- integrity sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==
158
- dependencies:
159
- is-core-module "^2.1.0"
160
- path-parse "^1.0.6"
161
-
162
- reusify@^1.0.4:
163
- version "1.0.4"
164
- resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
165
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
166
-
167
- rollup@^2.35.1:
168
- version "2.37.1"
169
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.37.1.tgz#aa7aadffd75c80393f9314f9857e851b0ffd34e7"
170
- integrity sha512-V3ojEeyGeSdrMSuhP3diBb06P+qV4gKQeanbDv+Qh/BZbhdZ7kHV0xAt8Yjk4GFshq/WjO7R4c7DFM20AwTFVQ==
171
- optionalDependencies:
172
- fsevents "~2.1.2"
173
-
174
- run-parallel@^1.1.9:
175
- version "1.1.10"
176
- resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.10.tgz#60a51b2ae836636c81377df16cb107351bcd13ef"
177
- integrity sha512-zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw==
178
-
179
- source-map@^0.6.1:
180
- version "0.6.1"
181
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
182
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
183
-
184
- to-regex-range@^5.0.1:
185
- version "5.0.1"
186
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
187
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
188
- dependencies:
189
- is-number "^7.0.0"
190
-
191
- vite-plugin-ruby@^1.0.2:
192
- version "1.0.2"
193
- resolved "https://registry.yarnpkg.com/vite-plugin-ruby/-/vite-plugin-ruby-1.0.2.tgz#9c193982c912b6399d9b269136e533201b445fb1"
194
- integrity sha512-m+CIyHiZElaW4TpdtyVQXnvLbz5ovYSwo5bTgr/ODLPMgmAqTaZu9GImPkIMZwp8PmBWnHT8h6vUtnIq0yFLOg==
195
- dependencies:
196
- fast-glob "^3.2.4"
197
-
198
- vite@^2.0.0-beta.34:
199
- version "2.0.0-beta.36"
200
- resolved "https://registry.yarnpkg.com/vite/-/vite-2.0.0-beta.36.tgz#ccecac854ded0b7c0fe14c52c0460e1c23a9c70b"
201
- integrity sha512-+Q/Twq1/tpNQIZl0HSFTqiEuP7lXj+6H/f9q63+s5I2K/sqgSUajL3PL7W9uUUIv9dYpJ1eLqkO42ppH9w9Ldw==
202
- dependencies:
203
- esbuild "^0.8.26"
204
- postcss "^8.2.1"
205
- resolve "^1.19.0"
206
- rollup "^2.35.1"
207
- optionalDependencies:
208
- fsevents "~2.1.2"
@@ -1,60 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- class RakeTasksTest < Minitest::Test
6
- def test_rake_tasks
7
- output = Dir.chdir(test_app_path) { `rake -T` }
8
- assert_includes output, 'vite:build'
9
- assert_includes output, 'vite:clean'
10
- assert_includes output, 'vite:clobber'
11
- assert_includes output, 'vite:install'
12
- assert_includes output, 'vite:install_dependencies'
13
- assert_includes output, 'vite:verify_install'
14
- end
15
-
16
- def test_rake_task_vite_check_binstubs
17
- output = Dir.chdir(test_app_path) { `rake vite:verify_install 2>&1` }
18
- refute_includes output, 'vite binstub not found.'
19
- end
20
-
21
- def test_rake_vite_install_dependencies_in_non_production_environments
22
- assert_includes test_app_dev_dependencies, 'right-pad'
23
-
24
- ViteRails.commands.send(:with_node_env, 'test') do
25
- Dir.chdir(test_app_path) do
26
- `bundle exec rake vite:install_dependencies`
27
- end
28
- end
29
-
30
- assert_includes installed_node_module_names, 'right-pad',
31
- 'Expected dev dependencies to be installed'
32
- end
33
-
34
- def test_rake_vite_install_dependencies_in_production_environment
35
- ViteRails.commands.send(:with_node_env, 'production') do
36
- Dir.chdir(test_app_path) do
37
- `bundle exec rake vite:install_dependencies`
38
- end
39
- end
40
-
41
- refute_includes installed_node_module_names, 'right-pad',
42
- 'Expected only production dependencies to be installed'
43
- end
44
-
45
- private
46
-
47
- def test_app_path
48
- File.expand_path('test_app', __dir__)
49
- end
50
-
51
- def test_app_dev_dependencies
52
- package_json = File.expand_path('package.json', test_app_path)
53
- JSON.parse(File.read(package_json))['devDependencies']
54
- end
55
-
56
- def installed_node_module_names
57
- node_modules_path = File.expand_path('node_modules', test_app_path)
58
- Dir.chdir(node_modules_path) { Dir.glob('*') }
59
- end
60
- end
data/test/runner_test.rb DELETED
@@ -1,31 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- class RunnerTest < ViteRails::Test
6
- def test_dev_server_command
7
- assert_run_command(flags: ['--mode', 'production'])
8
- end
9
-
10
- def test_dev_server_command_via_yarn
11
- assert_run_command(flags: ['--mode', 'production'], use_yarn: true)
12
- end
13
-
14
- def test_dev_server_command_with_argument
15
- assert_run_command('--quiet', flags: ['--mode', 'production'])
16
- end
17
-
18
- def test_build_command
19
- assert_run_command('build', flags: ['--mode', 'production'])
20
- end
21
-
22
- def test_build_command_via_yarn
23
- assert_run_command('build', flags: ['--mode', 'production'], use_yarn: true)
24
- end
25
-
26
- def test_build_command_with_argument
27
- with_rails_env('development') do
28
- assert_run_command('build', '--emptyOutDir', flags: ['--mode', 'development'])
29
- end
30
- end
31
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'config/application'
4
-
5
- Rails.application.load_tasks
@@ -1,2 +0,0 @@
1
- /* eslint no-console:0 */
2
- console.log('Hello World from ViteRails')
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- ENV['RAILS_ENV'] ||= ENV['RACK_ENV'] || 'development'
5
- ENV['NODE_ENV'] ||= ENV['RAILS_ENV'] == 'development' ? 'development' : 'production'
6
-
7
- require 'pathname'
8
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', Pathname.new(__FILE__).realpath)
9
-
10
- require 'bundler/setup'
11
-
12
- require 'vite_rails'
13
-
14
- APP_ROOT = File.expand_path('..', __dir__)
15
- Dir.chdir(APP_ROOT) do
16
- ViteRails.run(ARGV)
17
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # This file allows the `Rails.root` to be correctly determined.
4
-
5
- require_relative 'config/environment'
6
-
7
- run Rails.application
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'action_controller/railtie'
4
- require 'action_view/railtie'
5
- require 'vite_rails'
6
-
7
- module TestApp
8
- class Application < ::Rails::Application
9
- config.secret_key_base = 'abcdef'
10
- config.eager_load = true
11
- config.active_support.test_order = :sorted
12
- end
13
- end
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'application'
4
-
5
- Rails.backtrace_cleaner.remove_silencers!
6
- Rails.application.initialize!