souls 0.13.8 → 0.14.3
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/Gemfile.lock +1 -1
- data/lib/souls/init.rb +37 -8
- data/lib/souls/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d23a325d465a04acf398abbe43f7b437a2bf80b9f9d6781e7dce9e6d2869e3f
|
4
|
+
data.tar.gz: 0461a1b6872078e0c2df3e63376676c1158d928df2058ed72598b077b95bc789
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6fb6c07afbc8dbc4652e77e4ef65d414e1a4041dddc72bf71e8b8ce54cad84cbf450bda3e4f5876dadb5ebdc63993de280c29648aafe575c0d603ea10054b985
|
7
|
+
data.tar.gz: 518118fef287de1dfcf33b7fcf9a9bdfac97d6c470337640bb6d72562f01bdbee6c02a682c6e7044a7d74f8e7d5ded67bdde98a96d8cd57537f82bee5663bdc1
|
data/Gemfile.lock
CHANGED
data/lib/souls/init.rb
CHANGED
@@ -723,7 +723,6 @@ module Souls
|
|
723
723
|
f.write <<~EOS
|
724
724
|
RSpec.describe \"#{class_name.camelize} Mutation テスト\" do
|
725
725
|
describe "#{class_name.camelize} データを登録する" do
|
726
|
-
get_global_key = proc {|class_name, id| Base64.encode64(\"\#{class_name}:\#{id}\")}
|
727
726
|
EOS
|
728
727
|
end
|
729
728
|
end
|
@@ -739,20 +738,37 @@ module Souls
|
|
739
738
|
f.each_line.with_index do |line, i|
|
740
739
|
if @on
|
741
740
|
if line.include?("end") || line.include?("t.index")
|
742
|
-
|
741
|
+
if @relation_params.empty?
|
742
|
+
new_line.write <<-EOS
|
743
|
+
let(:#{class_name}) { FactoryBot.attributes_for(:#{class_name}) }
|
744
|
+
|
745
|
+
let(:mutation) do
|
746
|
+
%(mutation {
|
747
|
+
create#{class_name.camelize}(input: {
|
748
|
+
EOS
|
749
|
+
else
|
750
|
+
new_line.write <<-EOS
|
751
|
+
|
752
|
+
def get_global_key class_name, id
|
753
|
+
Base64.encode64(\"\#{class_name}:\#{id}\")
|
754
|
+
end
|
743
755
|
let(:#{class_name}) { FactoryBot.attributes_for(:#{class_name}, #{@relation_params.join(", ")}) }
|
744
756
|
|
745
757
|
let(:mutation) do
|
746
758
|
%(mutation {
|
747
759
|
create#{class_name.camelize}(input: {
|
748
|
-
|
760
|
+
EOS
|
761
|
+
end
|
749
762
|
break
|
750
763
|
end
|
751
764
|
_, name = line.split(",")[0].gsub("\"", "").scan(/((?<=t\.).+(?=\s)) (.+)/)[0]
|
752
765
|
case name
|
766
|
+
when "user_id"
|
767
|
+
relation_col = name.gsub("_id", "")
|
768
|
+
new_line.write " let(:#{relation_col}) { FactoryBot.create(:#{relation_col}) }\n"
|
753
769
|
when /$*_id\z/
|
754
770
|
relation_col = name.gsub("_id", "")
|
755
|
-
@relation_params << "#{name}: get_global_key
|
771
|
+
@relation_params << "#{name}: get_global_key(\"#{name.singularize.camelize.gsub("Id", "")}\", #{relation_col}.id)"
|
756
772
|
new_line.write " let(:#{relation_col}) { FactoryBot.create(:#{relation_col}) }\n"
|
757
773
|
end
|
758
774
|
end
|
@@ -789,7 +805,7 @@ module Souls
|
|
789
805
|
else
|
790
806
|
case type
|
791
807
|
when "string", "text", "date", "datetime"
|
792
|
-
if array_true
|
808
|
+
if array_true
|
793
809
|
new_line.write " #{name.pluralize.camelize(:lower)}: \#{#{class_name.singularize}[:#{name.pluralize.underscore}]}\n"
|
794
810
|
else
|
795
811
|
new_line.write " #{name.singularize.camelize(:lower)}: \"\#{#{class_name.singularize}[:#{name.singularize.underscore}]}\"\n"
|
@@ -954,6 +970,18 @@ module Souls
|
|
954
970
|
f.each_line.with_index do |line, i|
|
955
971
|
if @on
|
956
972
|
if line.include?("end") || line.include?("t.index")
|
973
|
+
if @relation_params.empty?
|
974
|
+
new_line.write <<-EOS
|
975
|
+
let(:#{class_name}) { FactoryBot.create(:#{class_name}) }
|
976
|
+
|
977
|
+
let(:query) do
|
978
|
+
data_id = Base64.encode64("#{class_name.camelize}:\#{#{class_name.singularize.underscore}.id}")
|
979
|
+
%(query {
|
980
|
+
#{class_name.singularize.camelize(:lower)}(id: \\"\#{data_id}\\") {
|
981
|
+
id
|
982
|
+
EOS
|
983
|
+
break
|
984
|
+
else
|
957
985
|
new_line.write <<-EOS
|
958
986
|
let(:#{class_name}) { FactoryBot.create(:#{class_name}, #{@relation_params.join(", ")}) }
|
959
987
|
|
@@ -964,6 +992,7 @@ module Souls
|
|
964
992
|
id
|
965
993
|
EOS
|
966
994
|
break
|
995
|
+
end
|
967
996
|
end
|
968
997
|
_, name = line.split(",")[0].gsub("\"", "").scan(/((?<=t\.).+(?=\s)) (.+)/)[0]
|
969
998
|
case name
|
@@ -1012,7 +1041,7 @@ module Souls
|
|
1012
1041
|
when "user_id", "created_at", "updated_at", /$*_id\z/
|
1013
1042
|
next
|
1014
1043
|
else
|
1015
|
-
new_line.write " #{name.
|
1044
|
+
new_line.write " #{name.camelize(:lower)}\n"
|
1016
1045
|
end
|
1017
1046
|
end
|
1018
1047
|
if table_check(line: line, class_name: class_name)
|
@@ -1050,9 +1079,9 @@ end
|
|
1050
1079
|
case type
|
1051
1080
|
when "text", "date", "datetime"
|
1052
1081
|
if array_true
|
1053
|
-
new_line.write " \"#{name.
|
1082
|
+
new_line.write " \"#{name.camelize(:lower)}\" => be_all(String),\n"
|
1054
1083
|
else
|
1055
|
-
new_line.write " \"#{name.
|
1084
|
+
new_line.write " \"#{name.camelize(:lower)}\" => be_a(String),\n"
|
1056
1085
|
end
|
1057
1086
|
when "boolean"
|
1058
1087
|
new_line.write " \"#{name.singularize.camelize(:lower)}\" => be_in([true, false]),\n"
|
data/lib/souls/version.rb
CHANGED