mjml-rails 4.0.0 → 4.0.1

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
  SHA1:
3
- metadata.gz: 72a95cbc8dcf59b245446fd1406d85d1b6b043ba
4
- data.tar.gz: 79a41fff1da9e8af8fdfecd2dd22c4a046171e6a
3
+ metadata.gz: 5014e13de47b20eba32fbaeadc7b709c709a641a
4
+ data.tar.gz: e480e849f097186c3cc15689304b31e0a677dbda
5
5
  SHA512:
6
- metadata.gz: 77bbcb101b03a89845d1439c93ebc83322fffc70118596441141d63310e9542ece495b2eafc838fe1eac73767a5dc31d8c395fd570ab5dbd156b9662b6ca50bc
7
- data.tar.gz: 0bc851c256341883f0e69ccc44aa2b60a228b3193ed6cf846409ae283eed27de91b4751260b54cff35b93ba8a373c18a7b619096e108cda8ac6a7dfb16cf8c06
6
+ metadata.gz: 288223021e733b84cad492e4f8a096b25dca32aed961a669758a855299ee2e85a6fafe248ad3025525d911690b31f49eb42bbd6b051935b173b611870fe33314
7
+ data.tar.gz: 645b6fd54de458ea4b5907b908013b77066f65b5c9925aab1293af4dc7232261353178f5adcb3f1adb08079ed3759c8875d196cdc0dedb734690bd4373790271
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- ��k/������0L�qIƬQCYQ��W�,'��!�x�4���/�s�.f�up�]�i͐����`i/����G�b�}��v\�4<:+cy�WS@E0�q�`]�jE�Fӆ�kd���Z?��(8���^���f�?�F4h����0���|�g(�2��O,�P1|��r�@b���_�ј"����������I�~�s���#
2
- 6�� X�����Z �ت_xK��́��ތSO����n���;a1�
1
+ Y?�>�2[�`Iŀ�Zsz����П�f<��φ� ��8���棠��=Kɕ�pDPϾ��0��E�&�)=���S)A
2
+ �<�K��kc��� Ȋ����^#����aq#�uD���XHp?xX�c
data/README.md CHANGED
@@ -4,11 +4,16 @@
4
4
 
5
5
  **MJML-Rails** allows you to render HTML e-mails from an [MJML](https://mjml.io) template.
6
6
 
7
+ *Please note: this gem has recently updated to support MJML 4 - so there may be rendering changes. Check your output! And please submit pull requests for updates to the documentation if needed*
8
+
7
9
  An example template might look like:
8
10
 
9
11
  ```erb
10
12
  <!-- ./app/views/user_mailer/email.mjml -->
11
13
  <mjml>
14
+ <mj-head>
15
+ <mj-preview>Hello World</mj-preview>
16
+ </mj-head>
12
17
  <mj-body>
13
18
  <mj-container>
14
19
  <mj-section>
@@ -62,7 +67,7 @@ bundle install
62
67
  Install the MJML parser (optional -g to install it globally):
63
68
 
64
69
  ```console
65
- npm install -g mjml@4.0.0
70
+ npm install -g mjml
66
71
  ```
67
72
 
68
73
  Note that you'll need at least Node.js version 6 for MJML to function properly.
@@ -76,6 +81,15 @@ Mjml.setup do |config|
76
81
  end
77
82
  ```
78
83
 
84
+ If you'd like to see render errors:
85
+
86
+ ```ruby
87
+ Mjml.setup do |config|
88
+ # Default is `false` (errors suppressed), set to `true` to enable error raising
89
+ config.raise_render_exception = true
90
+ end
91
+ ```
92
+
79
93
  ### MJML v3.x & v4.0.x support
80
94
 
81
95
  Version 4.0.x of this gem brings support for MJML 4.0.x
@@ -94,6 +108,12 @@ For MJML 3.x lock the mjml-rails gem:
94
108
  gem 'mjml-rails', '2.4.3'
95
109
  ```
96
110
 
111
+ And then to install MJML 3.x
112
+
113
+ ```console
114
+ npm install -g mjml@3.3.5
115
+ ```
116
+
97
117
  ### How to guides
98
118
 
99
119
  [Hugo Giraudel](https://twitter.com/hugogiraudel) wrote a post on [using MJML in Rails](http://dev.edenspiekermann.com/2016/06/02/using-mjml-in-rails/).
data/lib/mjml.rb CHANGED
@@ -5,9 +5,10 @@ require "mjml/railtie"
5
5
  require "rubygems"
6
6
 
7
7
  module Mjml
8
- mattr_accessor :template_language
8
+ mattr_accessor :template_language, :raise_render_exception
9
9
 
10
10
  @@template_language = :erb
11
+ @@raise_render_exception = false
11
12
 
12
13
  def self.check_version(bin)
13
14
  IO.popen("#{bin} --version").read.include?('mjml-core: 4.0.')
data/lib/mjml/parser.rb CHANGED
@@ -19,7 +19,7 @@ module Mjml
19
19
  remove_tmp_files
20
20
  result
21
21
  rescue
22
-
22
+ raise if Mjml.raise_render_exception
23
23
  ""
24
24
  end
25
25
 
data/lib/mjml/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module Mjml
2
2
  # Version number no longer matches MJML.io version
3
- VERSION = "4.0.0"
3
+ VERSION = "4.0.1"
4
4
  end
@@ -0,0 +1,41 @@
1
+ require 'test_helper'
2
+
3
+ describe Mjml::Parser do
4
+ let(:input) { mock('input') }
5
+ let(:parser) { Mjml::Parser.new(input) }
6
+
7
+ describe '#render' do
8
+ describe 'when execption is raised' do
9
+ let(:custom_error_class) { Class.new(StandardError) }
10
+ let(:error) { custom_error_class.new('custom error') }
11
+
12
+ before do
13
+ parser.stubs(:run).raises(error)
14
+ end
15
+
16
+ describe 'when render exception raising is enabled' do
17
+ before do
18
+ Mjml.setup do |config|
19
+ config.raise_render_exception = true
20
+ end
21
+ end
22
+
23
+ it 'raises exception' do
24
+ -> { parser.render }.must_raise(custom_error_class, error.message)
25
+ end
26
+ end
27
+
28
+ describe 'when render exception raising is disabled' do
29
+ before do
30
+ Mjml.setup do |config|
31
+ config.raise_render_exception = false
32
+ end
33
+ end
34
+
35
+ it 'returns empty string' do
36
+ parser.render.must_equal ''
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
data/test/test_helper.rb CHANGED
@@ -9,6 +9,7 @@ require "action_mailer"
9
9
  require "rails/railtie"
10
10
  require "rails/generators"
11
11
  require "rails/generators/test_case"
12
+ require 'mocha/minitest'
12
13
 
13
14
  # require "minitest/reporters"
14
15
  # Minitest::Reporters.use!
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mjml-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Loffler
@@ -31,7 +31,7 @@ cert_chain:
31
31
  IUdCp7zF7QpeLz6cgerOpdG0NLHQOEPcWqHpt4yM++TieNrYOuJlkkSd11Ypvgsc
32
32
  RRE0kJj2aO7haTBQ7uQl3cTv2c1s4bLu
33
33
  -----END CERTIFICATE-----
34
- date: 2018-03-07 00:00:00.000000000 Z
34
+ date: 2018-04-03 00:00:00.000000000 Z
35
35
  dependencies: []
36
36
  description: Render MJML + ERb template views in Rails
37
37
  email: sighmon@sighmon.com
@@ -53,6 +53,7 @@ files:
53
53
  - test/generator_test.rb
54
54
  - test/mjml_subdir_test.rb
55
55
  - test/mjml_test.rb
56
+ - test/parser_test.rb
56
57
  - test/template_test.rb
57
58
  - test/test_helper.rb
58
59
  homepage: https://github.com/sighmon/mjml-rails
@@ -82,6 +83,7 @@ summary: MJML + ERb templates
82
83
  test_files:
83
84
  - test/generator_test.rb
84
85
  - test/mjml_subdir_test.rb
86
+ - test/parser_test.rb
85
87
  - test/mjml_test.rb
86
88
  - test/template_test.rb
87
89
  - test/test_helper.rb
metadata.gz.sig CHANGED
@@ -1 +1,2 @@
1
- I�_���� 0"���[�<��(��s���;YM����o*�4K��x+�S�R@U�em�i�N��|q!���Pr��&��[X0ۙ�f:�yf3�L��~����cS�aN��� ~�#9���m8k�>�l��_ ����H�ٷZp���Z�a�'Y2����ͱ���?��y銪�T�<�"�g1ʂ3��`����hY;�z[�;�Ҹ�"v�\���CSd٭�m�u���u4+�i_u����k���;�Ѡ
1
+ �b���W
2
+ 1�s�� D�'f�>��Z����U�p��P� �X��]�{e�� ����_�z�'�0M]�����6�9]t��Rq���F����N�LL