object_manager_attribute.rb 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. FactoryBot.define do
  2. sequence :object_manager_attribute_name do |n|
  3. "internal_name#{n}"
  4. end
  5. sequence :object_manager_attribute_display do |n|
  6. "Display Name #{n}"
  7. end
  8. end
  9. FactoryBot.define do
  10. factory :object_manager_attribute, class: ObjectManager::Attribute do
  11. object_lookup_id 2
  12. name { generate(:object_manager_attribute_name) }
  13. display { generate(:object_manager_attribute_display) }
  14. data_option_new do
  15. {}
  16. end
  17. editable false
  18. active true
  19. screens do
  20. {
  21. 'create_top' => {
  22. '-all-' => {
  23. 'null' => false
  24. }
  25. },
  26. 'edit' => {}
  27. }
  28. end
  29. add_attribute(:to_create) { false }
  30. to_migrate false
  31. to_delete false
  32. to_config false
  33. position 15
  34. updated_by_id 1
  35. created_by_id 1
  36. end
  37. factory :object_manager_attribute_text, parent: :object_manager_attribute do
  38. data_type 'input'
  39. data_option do
  40. {
  41. 'type' => 'text',
  42. 'maxlength' => 200,
  43. 'null' => true,
  44. 'translate' => false,
  45. 'default' => '',
  46. 'options' => {},
  47. 'relation' => '',
  48. }
  49. end
  50. end
  51. factory :object_manager_attribute_select, parent: :object_manager_attribute do
  52. data_type 'select'
  53. data_option do
  54. {
  55. 'default' => '',
  56. 'options' => {
  57. 'key_1' => 'value_1',
  58. 'key_2' => 'value_2',
  59. 'key_3' => 'value_3',
  60. },
  61. 'relation' => '',
  62. 'nulloption' => true,
  63. 'multiple' => false,
  64. 'null' => true,
  65. 'translate' => true,
  66. 'maxlength' => 255
  67. }
  68. end
  69. end
  70. factory :object_manager_attribute_tree_select, parent: :object_manager_attribute do
  71. data_type 'tree_select'
  72. data_option do
  73. {
  74. 'options' => [
  75. {
  76. 'name' => 'Incident',
  77. 'value' => 'Incident',
  78. 'children' => [
  79. {
  80. 'name' => 'Hardware',
  81. 'value' => 'Incident::Hardware',
  82. 'children' => [
  83. {
  84. 'name' => 'Monitor',
  85. 'value' => 'Incident::Hardware::Monitor'
  86. },
  87. {
  88. 'name' => 'Mouse',
  89. 'value' => 'Incident::Hardware::Mouse'
  90. },
  91. {
  92. 'name' => 'Keyboard',
  93. 'value' => 'Incident::Hardware::Keyboard'
  94. }
  95. ]
  96. },
  97. {
  98. 'name' => 'Softwareproblem',
  99. 'value' => 'Incident::Softwareproblem',
  100. 'children' => [
  101. {
  102. 'name' => 'CRM',
  103. 'value' => 'Incident::Softwareproblem::CRM'
  104. },
  105. {
  106. 'name' => 'EDI',
  107. 'value' => 'Incident::Softwareproblem::EDI'
  108. },
  109. {
  110. 'name' => 'SAP',
  111. 'value' => 'Incident::Softwareproblem::SAP',
  112. 'children' => [
  113. {
  114. 'name' => 'Authentication',
  115. 'value' => 'Incident::Softwareproblem::SAP::Authentication'
  116. },
  117. {
  118. 'name' => 'Not reachable',
  119. 'value' => 'Incident::Softwareproblem::SAP::Not reachable'
  120. }
  121. ]
  122. },
  123. {
  124. 'name' => 'MS Office',
  125. 'value' => 'Incident::Softwareproblem::MS Office',
  126. 'children' => [
  127. {
  128. 'name' => 'Excel',
  129. 'value' => 'Incident::Softwareproblem::MS Office::Excel'
  130. },
  131. {
  132. 'name' => 'PowerPoint',
  133. 'value' => 'Incident::Softwareproblem::MS Office::PowerPoint'
  134. },
  135. {
  136. 'name' => 'Word',
  137. 'value' => 'Incident::Softwareproblem::MS Office::Word'
  138. },
  139. {
  140. 'name' => 'Outlook',
  141. 'value' => 'Incident::Softwareproblem::MS Office::Outlook'
  142. }
  143. ]
  144. }
  145. ]
  146. }
  147. ]
  148. },
  149. {
  150. 'name' => 'Service request',
  151. 'value' => 'Service request',
  152. 'children' => [
  153. {
  154. 'name' => 'New software requirement',
  155. 'value' => 'Service request::New software requirement'
  156. },
  157. {
  158. 'name' => 'New hardware',
  159. 'value' => 'Service request::New hardware'
  160. },
  161. {
  162. 'name' => 'Consulting',
  163. 'value' => 'Service request::Consulting'
  164. }
  165. ]
  166. },
  167. {
  168. 'name' => 'Change request',
  169. 'value' => 'Change request'
  170. }
  171. ],
  172. 'default' => '',
  173. 'null' => true,
  174. 'relation' => '',
  175. 'maxlength' => 255,
  176. 'nulloption' => true,
  177. }
  178. end
  179. end
  180. end