jbuilder_rspec_generator 1.4 → 1.5
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/VERSION +1 -1
- data/jbuilder_rspec_generator.gemspec +3 -3
- data/lib/generators/rspec/templates/index_spec.rb +13 -9
- data/lib/generators/rspec/templates/show_spec.rb +13 -7
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fca0d9fdcdee7a324a2783bfbdf52082d8721414c6f540bf467143658d2c1726
|
4
|
+
data.tar.gz: 8308572944df8297353661ed23b1ec95feea14c1c3fd97b7cb18b8193595c517
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30a6281a929fce2d8c0e955546ee889f462b39faa574538eddea11320ff5943d1d085df947196d332b221b6a54e9c2f90181d8255e170e6b53fff1198e1a2349
|
7
|
+
data.tar.gz: 52ae8bdefc2b5a674f3c309d2b9f9ca152d6fd3e318ad8d90ef66b2c58cc888ab712668262fa53563212659b7e80bf2e8fc049467fc202053c0a12178166347e
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.5
|
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: jbuilder_rspec_generator 1.
|
5
|
+
# stub: jbuilder_rspec_generator 1.5 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "jbuilder_rspec_generator".freeze
|
9
|
-
s.version = "1.
|
9
|
+
s.version = "1.5"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib".freeze]
|
13
13
|
s.authors = ["Dmitri Koulikoff".freeze]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2020-04-30"
|
15
15
|
s.description = "Generates RSpecs for jbuilder templates".freeze
|
16
16
|
s.email = "dima@koulikoff.ru".freeze
|
17
17
|
s.extra_rdoc_files = [
|
@@ -6,21 +6,25 @@ require 'spec_helper'
|
|
6
6
|
|
7
7
|
<% open_attributes = attributes.reject(&:password_digest?) -%>
|
8
8
|
<% links = open_attributes.select{|a| [:belongs_to, :references].include? a.type} -%>
|
9
|
+
|
9
10
|
describe "<%= ns_table_name %>/index.json.jbuilder", type: :view do
|
11
|
+
<% if Rails.application.config.generators.options[:rails][:fixture_replacement] == :factory_bot -%>
|
12
|
+
<% factory = true -%>
|
13
|
+
let(:<%= ns_file_name %>) { create :<%= ns_file_name %> }
|
14
|
+
|
15
|
+
<% end -%>
|
10
16
|
before(:each) do
|
11
17
|
<% if Rails.application.config.generators.options[:rails][:cancan] -%>
|
12
18
|
allow(controller).to receive(:can?).and_return(true)
|
13
19
|
<% end -%>
|
14
|
-
<%
|
15
|
-
@<%= ns_file_name %> = create(:<%= ns_file_name %>)
|
16
|
-
<% else -%>
|
20
|
+
<% unless factory -%>
|
17
21
|
@<%= ns_file_name %> = <%= class_name %>.create(<%= open_attributes.empty? ? ')' : '' %>
|
18
22
|
<% open_attributes.each_with_index do |attribute, attribute_index| -%>
|
19
23
|
<%= attribute.name %>: <%= value_for(attribute) %><%= attribute_index == open_attributes.length - 1 ? '' : ','%>
|
20
24
|
<% end -%>
|
21
25
|
)
|
22
26
|
<% end -%>
|
23
|
-
assign :<%= table_name %>, [
|
27
|
+
assign :<%= table_name %>, [<% unless factory -%>@<% end -%><%= ns_file_name %>, <% unless factory -%>@<% end -%><%= ns_file_name %>]
|
24
28
|
render
|
25
29
|
end
|
26
30
|
|
@@ -53,12 +57,12 @@ describe "<%= ns_table_name %>/index.json.jbuilder", type: :view do
|
|
53
57
|
expect(hash.first).to eq(hash = hash.last)
|
54
58
|
expect(hash.keys.sort).to eq attributes.sort
|
55
59
|
<% if links.present? -%>
|
56
|
-
expected =
|
60
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.attributes.slice *(attributes - complex)
|
57
61
|
<% else -%>
|
58
|
-
expected =
|
62
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.attributes.slice *attributes
|
59
63
|
<% end -%>
|
60
64
|
expected = MultiJson.load MultiJson.dump expected
|
61
|
-
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= ns_file_name %>_url(
|
65
|
+
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= ns_file_name %>_url(<% unless factory -%>@<% end -%><%= ns_file_name %><%= ", format: 'json'" unless options[:with_api] %>)
|
62
66
|
<% if links.present? -%>
|
63
67
|
expect(hash.except! *complex).to eq expected
|
64
68
|
<% else -%>
|
@@ -71,9 +75,9 @@ describe "<%= ns_table_name %>/index.json.jbuilder", type: :view do
|
|
71
75
|
hash = MultiJson.load(rendered).last
|
72
76
|
hash = hash['<%= attribute.name %>']
|
73
77
|
expect(hash.keys.sort).to eq <%= attribute.name %>_attributes.sort
|
74
|
-
expected =
|
78
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.<%= attribute.name %>.attributes.slice *<%= attribute.name %>_attributes
|
75
79
|
expected = MultiJson.load MultiJson.dump expected
|
76
|
-
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= attribute.name %>_url(
|
80
|
+
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= attribute.name %>_url(<% unless factory -%>@<% end -%><%= ns_file_name %>.<%= attribute.name %><%= ", format: 'json'" unless options[:with_api] %>)
|
77
81
|
expect(hash).to eq expected
|
78
82
|
end
|
79
83
|
<% end -%>
|
@@ -6,13 +6,19 @@ require 'spec_helper'
|
|
6
6
|
|
7
7
|
<% open_attributes = attributes.reject(&:password_digest?) -%>
|
8
8
|
<% links = open_attributes.select{|a| [:belongs_to, :references].include? a.type} -%>
|
9
|
+
|
9
10
|
describe "<%= ns_table_name %>/show.json.jbuilder", type: :view do
|
11
|
+
<% if Rails.application.config.generators.options[:rails][:fixture_replacement] == :factory_bot -%>
|
12
|
+
<% factory = true -%>
|
13
|
+
let(:<%= ns_file_name %>) { create :<%= ns_file_name %> }
|
14
|
+
|
15
|
+
<% end -%>
|
10
16
|
before(:each) do
|
11
17
|
<% if Rails.application.config.generators.options[:rails][:cancan] -%>
|
12
18
|
allow(controller).to receive(:can?).and_return(true)
|
13
19
|
<% end -%>
|
14
|
-
<% if
|
15
|
-
|
20
|
+
<% if factory -%>
|
21
|
+
assign :<%= ns_file_name %>, <%= ns_file_name %>
|
16
22
|
<% else -%>
|
17
23
|
@<%= ns_file_name %> = assign(:<%= ns_file_name %>, <%= class_name %>.create(<%= open_attributes.empty? ? '))' : '' %>
|
18
24
|
<% open_attributes.each_with_index do |attribute, attribute_index| -%>
|
@@ -53,12 +59,12 @@ describe "<%= ns_table_name %>/show.json.jbuilder", type: :view do
|
|
53
59
|
hash = MultiJson.load rendered
|
54
60
|
expect(hash.keys.sort).to eq attributes.sort
|
55
61
|
<% if links.present? -%>
|
56
|
-
expected =
|
62
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.attributes.slice *(attributes - complex)
|
57
63
|
<% else -%>
|
58
|
-
expected =
|
64
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.attributes.slice *attributes
|
59
65
|
<% end -%>
|
60
66
|
expected = MultiJson.load MultiJson.dump expected
|
61
|
-
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= ns_file_name %>_url(
|
67
|
+
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= ns_file_name %>_url(<% unless factory -%>@<% end -%><%= ns_file_name %><%= ", format: 'json'" unless options[:with_api] %>)
|
62
68
|
<% if links.present? -%>
|
63
69
|
expect(hash.except! *complex).to eq expected
|
64
70
|
<% else -%>
|
@@ -71,9 +77,9 @@ describe "<%= ns_table_name %>/show.json.jbuilder", type: :view do
|
|
71
77
|
hash = MultiJson.load(rendered)
|
72
78
|
hash = hash['<%= attribute.name %>']
|
73
79
|
expect(hash.keys.sort).to eq <%= attribute.name %>_attributes.sort
|
74
|
-
expected =
|
80
|
+
expected = <% unless factory -%>@<% end -%><%= ns_file_name %>.<%= attribute.name %>.attributes.slice *<%= attribute.name %>_attributes
|
75
81
|
expected = MultiJson.load MultiJson.dump expected
|
76
|
-
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= attribute.name %>_url(
|
82
|
+
expected['url'] = <%= "api_" if options[:with_api] %><%= "#{options[:api_version]}_" if options[:with_api] and options[:api_version].present? %><%= attribute.name %>_url(<% unless factory -%>@<% end -%><%= ns_file_name %>.<%= attribute.name %><%= ", format: 'json'" unless options[:with_api] %>)
|
77
83
|
expect(hash).to eq expected
|
78
84
|
end
|
79
85
|
<% end -%>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jbuilder_rspec_generator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '1.
|
4
|
+
version: '1.5'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitri Koulikoff
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-04-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: multi_json
|