gooddata 0.6.49 → 0.6.50

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 (390) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -4
  3. data/CLI.md +0 -4
  4. data/DEPENDENCIES.md +0 -8
  5. data/Dockerfile.jruby +19 -0
  6. data/Dockerfile.ruby +19 -0
  7. data/LICENSE +2 -2
  8. data/LICENSE.rb +1 -1
  9. data/Rakefile +1 -1
  10. data/gooddata.gemspec +29 -28
  11. data/lib/gooddata.rb +2 -1
  12. data/lib/gooddata/app/app.rb +1 -1
  13. data/lib/gooddata/bricks/base_downloader.rb +1 -1
  14. data/lib/gooddata/bricks/brick.rb +3 -4
  15. data/lib/gooddata/bricks/bricks.rb +3 -1
  16. data/lib/gooddata/bricks/middleware/aws_middleware.rb +6 -8
  17. data/lib/gooddata/bricks/middleware/base_middleware.rb +2 -1
  18. data/lib/gooddata/bricks/middleware/bench_middleware.rb +2 -1
  19. data/lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb +3 -3
  20. data/lib/gooddata/bricks/middleware/decode_params_middleware.rb +3 -2
  21. data/lib/gooddata/bricks/middleware/dwh_middleware.rb +28 -0
  22. data/lib/gooddata/bricks/middleware/fs_download_middleware.rb +2 -2
  23. data/lib/gooddata/bricks/middleware/fs_upload_middleware.rb +2 -2
  24. data/lib/gooddata/bricks/middleware/gooddata_middleware.rb +84 -21
  25. data/lib/gooddata/bricks/middleware/logger_middleware.rb +1 -1
  26. data/lib/gooddata/bricks/middleware/middleware.rb +1 -1
  27. data/lib/gooddata/bricks/middleware/params_inspect_middleware.rb +21 -0
  28. data/lib/gooddata/bricks/middleware/restforce_middleware.rb +26 -26
  29. data/lib/gooddata/bricks/middleware/stdout_middleware.rb +1 -1
  30. data/lib/gooddata/bricks/middleware/twitter_middleware.rb +1 -1
  31. data/lib/gooddata/bricks/middleware/undot_params_middleware.rb +1 -1
  32. data/lib/gooddata/bricks/pipeline.rb +6 -13
  33. data/lib/gooddata/bricks/utils.rb +3 -3
  34. data/lib/gooddata/cli/cli.rb +1 -1
  35. data/lib/gooddata/cli/commands/auth_cmd.rb +1 -1
  36. data/lib/gooddata/cli/commands/domain_cmd.rb +1 -1
  37. data/lib/gooddata/cli/commands/project_cmd.rb +1 -18
  38. data/lib/gooddata/cli/hooks.rb +1 -2
  39. data/lib/gooddata/cli/shared.rb +1 -1
  40. data/lib/gooddata/cli/terminal.rb +1 -1
  41. data/lib/gooddata/client.rb +1 -1
  42. data/lib/gooddata/commands/api.rb +1 -1
  43. data/lib/gooddata/commands/auth.rb +1 -1
  44. data/lib/gooddata/commands/base.rb +1 -1
  45. data/lib/gooddata/commands/commands.rb +1 -1
  46. data/lib/gooddata/commands/datasets.rb +1 -1
  47. data/lib/gooddata/commands/datawarehouse.rb +1 -1
  48. data/lib/gooddata/commands/domain.rb +1 -1
  49. data/lib/gooddata/commands/process.rb +1 -1
  50. data/lib/gooddata/commands/project.rb +2 -31
  51. data/lib/gooddata/commands/projects.rb +1 -1
  52. data/lib/gooddata/commands/role.rb +1 -1
  53. data/lib/gooddata/commands/runners.rb +1 -1
  54. data/lib/gooddata/commands/scaffold.rb +1 -1
  55. data/lib/gooddata/commands/user.rb +1 -1
  56. data/lib/gooddata/connection.rb +1 -1
  57. data/lib/gooddata/core/core.rb +1 -1
  58. data/lib/gooddata/core/logging.rb +1 -1
  59. data/lib/gooddata/core/nil_logger.rb +1 -1
  60. data/lib/gooddata/core/project.rb +1 -1
  61. data/lib/gooddata/core/rest.rb +1 -1
  62. data/lib/gooddata/core/user.rb +1 -1
  63. data/lib/gooddata/data/data.rb +1 -1
  64. data/lib/gooddata/data/guesser.rb +1 -1
  65. data/lib/gooddata/exceptions/attr_element_not_found.rb +1 -1
  66. data/lib/gooddata/exceptions/command_failed.rb +1 -1
  67. data/lib/gooddata/exceptions/exceptions.rb +1 -1
  68. data/lib/gooddata/exceptions/execution_limit_exceeded.rb +1 -1
  69. data/lib/gooddata/exceptions/export_clone.rb +4 -0
  70. data/lib/gooddata/exceptions/filter_maqlization.rb +1 -1
  71. data/lib/gooddata/exceptions/import_clone.rb +4 -0
  72. data/lib/gooddata/exceptions/malformed_user.rb +1 -1
  73. data/lib/gooddata/exceptions/maql_execution.rb +1 -1
  74. data/lib/gooddata/exceptions/no_project_error.rb +1 -1
  75. data/lib/gooddata/exceptions/object_migration.rb +1 -1
  76. data/lib/gooddata/exceptions/project_not_found.rb +1 -1
  77. data/lib/gooddata/exceptions/segment_not_empty.rb +1 -1
  78. data/lib/gooddata/exceptions/uncomputable_report.rb +1 -1
  79. data/lib/gooddata/exceptions/user_in_different_domain.rb +1 -1
  80. data/lib/gooddata/exceptions/validation_error.rb +1 -1
  81. data/lib/gooddata/extensions/big_decimal.rb +1 -1
  82. data/lib/gooddata/extensions/class.rb +11 -0
  83. data/lib/gooddata/extensions/enumerable.rb +1 -1
  84. data/lib/gooddata/extensions/extensions.rb +1 -1
  85. data/lib/gooddata/extensions/false.rb +9 -1
  86. data/lib/gooddata/extensions/hash.rb +12 -1
  87. data/lib/gooddata/extensions/integer.rb +5 -0
  88. data/lib/gooddata/extensions/nil.rb +5 -1
  89. data/lib/gooddata/extensions/numeric.rb +1 -1
  90. data/lib/gooddata/extensions/object.rb +5 -1
  91. data/lib/gooddata/extensions/symbol.rb +1 -1
  92. data/lib/gooddata/extensions/true.rb +9 -1
  93. data/lib/gooddata/extract.rb +1 -1
  94. data/lib/gooddata/goodzilla/goodzilla.rb +1 -1
  95. data/lib/gooddata/helpers/auth_helpers.rb +1 -1
  96. data/lib/gooddata/helpers/csv_helper.rb +1 -1
  97. data/lib/gooddata/helpers/data_helper.rb +19 -10
  98. data/lib/gooddata/helpers/erb_helper.rb +23 -0
  99. data/lib/gooddata/helpers/global_helpers.rb +5 -73
  100. data/lib/gooddata/helpers/global_helpers_params.rb +73 -7
  101. data/lib/gooddata/helpers/helpers.rb +1 -1
  102. data/lib/gooddata/lcm/actions/actions.rb +12 -0
  103. data/lib/gooddata/lcm/actions/associate_clients.rb +46 -0
  104. data/lib/gooddata/lcm/actions/base_action.rb +23 -0
  105. data/lib/gooddata/lcm/actions/collect_clients.rb +89 -0
  106. data/lib/gooddata/lcm/actions/collect_segment_clients.rb +103 -0
  107. data/lib/gooddata/lcm/actions/collect_segments.rb +59 -0
  108. data/lib/gooddata/lcm/actions/create_segment_masters.rb +167 -0
  109. data/lib/gooddata/lcm/actions/ensure_release_table.rb +56 -0
  110. data/lib/gooddata/lcm/actions/ensure_segments.rb +35 -0
  111. data/lib/gooddata/lcm/actions/ensure_technical_users_domain.rb +66 -0
  112. data/lib/gooddata/lcm/actions/ensure_technical_users_project.rb +68 -0
  113. data/lib/gooddata/lcm/actions/ensure_titles.rb +54 -0
  114. data/lib/gooddata/lcm/actions/hello_world.rb +44 -0
  115. data/lib/gooddata/lcm/actions/print_actions.rb +61 -0
  116. data/lib/gooddata/lcm/actions/print_modes.rb +72 -0
  117. data/lib/gooddata/lcm/actions/print_types.rb +55 -0
  118. data/lib/gooddata/lcm/actions/provision_clients.rb +80 -0
  119. data/lib/gooddata/lcm/actions/purge_clients.rb +78 -0
  120. data/lib/gooddata/lcm/actions/segments_filter.rb +50 -0
  121. data/lib/gooddata/lcm/actions/synchronize_attribute_drillpaths.rb +60 -0
  122. data/lib/gooddata/lcm/actions/synchronize_clients.rb +87 -0
  123. data/lib/gooddata/lcm/actions/synchronize_color_palette.rb +59 -0
  124. data/lib/gooddata/lcm/actions/synchronize_label_types.rb +61 -0
  125. data/lib/gooddata/lcm/actions/synchronize_ldm.rb +64 -0
  126. data/lib/gooddata/lcm/actions/synchronize_meta.rb +55 -0
  127. data/lib/gooddata/lcm/actions/synchronize_new_segments.rb +55 -0
  128. data/lib/gooddata/lcm/actions/synchronize_processes.rb +66 -0
  129. data/lib/gooddata/lcm/actions/synchronize_schedules.rb +81 -0
  130. data/lib/gooddata/lcm/actions/update_release_table.rb +80 -0
  131. data/lib/gooddata/lcm/data/create_lcm_release.sql.erb +5 -0
  132. data/lib/gooddata/lcm/data/insert_into_lcm_release.sql.erb +11 -0
  133. data/lib/gooddata/lcm/data/select_from_lcm_release.sql.erb +8 -0
  134. data/lib/gooddata/lcm/data/update_lcm_release.sql.erb +7 -0
  135. data/lib/gooddata/lcm/dsl/dsl.rb +50 -0
  136. data/lib/gooddata/lcm/dsl/params_dsl.rb +61 -0
  137. data/lib/gooddata/lcm/dsl/type_dsl.rb +61 -0
  138. data/lib/gooddata/lcm/helpers/check_helper.rb +37 -0
  139. data/lib/gooddata/lcm/helpers/helpers.rb +12 -0
  140. data/lib/gooddata/lcm/lcm.rb +161 -20
  141. data/lib/gooddata/lcm/lcm2.rb +260 -0
  142. data/lib/gooddata/lcm/types/base_type.rb +29 -0
  143. data/lib/gooddata/lcm/types/class/ads_client.rb +35 -0
  144. data/lib/gooddata/lcm/types/class/class.rb +21 -0
  145. data/lib/gooddata/lcm/types/class/gd_client.rb +35 -0
  146. data/lib/gooddata/lcm/types/class/types.rb +12 -0
  147. data/lib/gooddata/lcm/types/complex/complex.rb +33 -0
  148. data/lib/gooddata/lcm/types/complex/release_query.rb +35 -0
  149. data/lib/gooddata/lcm/types/complex/segment.rb +37 -0
  150. data/lib/gooddata/lcm/types/complex/synchronization_info.rb +32 -0
  151. data/lib/gooddata/lcm/types/complex/tokens.rb +31 -0
  152. data/lib/gooddata/lcm/types/complex/types.rb +12 -0
  153. data/lib/gooddata/lcm/types/complex/update_preference.rb +32 -0
  154. data/lib/gooddata/lcm/types/param.rb +16 -0
  155. data/lib/gooddata/lcm/types/scalar/bool.rb +22 -0
  156. data/lib/gooddata/lcm/types/scalar/hash.rb +22 -0
  157. data/lib/gooddata/lcm/types/scalar/integer.rb +22 -0
  158. data/lib/gooddata/lcm/types/scalar/object.rb +22 -0
  159. data/lib/gooddata/lcm/types/scalar/string.rb +22 -0
  160. data/lib/gooddata/lcm/types/scalar/types.rb +12 -0
  161. data/lib/gooddata/lcm/types/special/array.rb +35 -0
  162. data/lib/gooddata/lcm/types/special/enum.rb +17 -0
  163. data/lib/gooddata/lcm/types/special/types.rb +12 -0
  164. data/lib/gooddata/lcm/types/types.rb +12 -0
  165. data/lib/gooddata/mixins/author.rb +1 -1
  166. data/lib/gooddata/mixins/content_getter.rb +1 -1
  167. data/lib/gooddata/mixins/content_property_reader.rb +1 -1
  168. data/lib/gooddata/mixins/content_property_writer.rb +1 -1
  169. data/lib/gooddata/mixins/contributor.rb +1 -1
  170. data/lib/gooddata/mixins/data_getter.rb +1 -1
  171. data/lib/gooddata/mixins/data_property_reader.rb +1 -1
  172. data/lib/gooddata/mixins/data_property_writer.rb +1 -1
  173. data/lib/gooddata/mixins/inspector.rb +1 -1
  174. data/lib/gooddata/mixins/is_attribute.rb +1 -1
  175. data/lib/gooddata/mixins/is_dimension.rb +1 -1
  176. data/lib/gooddata/mixins/is_fact.rb +1 -1
  177. data/lib/gooddata/mixins/is_label.rb +1 -1
  178. data/lib/gooddata/mixins/links.rb +1 -1
  179. data/lib/gooddata/mixins/md_finders.rb +1 -1
  180. data/lib/gooddata/mixins/md_grantees.rb +1 -1
  181. data/lib/gooddata/mixins/md_id_to_uri.rb +9 -3
  182. data/lib/gooddata/mixins/md_json.rb +1 -1
  183. data/lib/gooddata/mixins/md_lock.rb +1 -1
  184. data/lib/gooddata/mixins/md_object_id.rb +1 -1
  185. data/lib/gooddata/mixins/md_object_indexer.rb +1 -1
  186. data/lib/gooddata/mixins/md_object_query.rb +1 -1
  187. data/lib/gooddata/mixins/md_relations.rb +1 -1
  188. data/lib/gooddata/mixins/meta_getter.rb +1 -1
  189. data/lib/gooddata/mixins/meta_property_reader.rb +1 -1
  190. data/lib/gooddata/mixins/meta_property_writer.rb +1 -1
  191. data/lib/gooddata/mixins/mixins.rb +1 -1
  192. data/lib/gooddata/mixins/not_attribute.rb +1 -1
  193. data/lib/gooddata/mixins/not_exportable.rb +1 -1
  194. data/lib/gooddata/mixins/not_fact.rb +1 -1
  195. data/lib/gooddata/mixins/not_group.rb +1 -1
  196. data/lib/gooddata/mixins/not_label.rb +1 -1
  197. data/lib/gooddata/mixins/not_metric.rb +1 -1
  198. data/lib/gooddata/mixins/obj_id.rb +1 -1
  199. data/lib/gooddata/mixins/rest_getters.rb +1 -1
  200. data/lib/gooddata/mixins/rest_resource.rb +1 -1
  201. data/lib/gooddata/mixins/root_key_getter.rb +1 -1
  202. data/lib/gooddata/mixins/root_key_setter.rb +1 -1
  203. data/lib/gooddata/mixins/timestamps.rb +1 -1
  204. data/lib/gooddata/models/ads_output_stage.rb +85 -0
  205. data/lib/gooddata/models/automated_data_distribution.rb +36 -0
  206. data/lib/gooddata/models/blueprint/anchor_field.rb +4 -3
  207. data/lib/gooddata/models/blueprint/attribute_field.rb +18 -2
  208. data/lib/gooddata/models/blueprint/blueprint.rb +1 -1
  209. data/lib/gooddata/models/blueprint/blueprint_field.rb +1 -1
  210. data/lib/gooddata/models/blueprint/dashboard_builder.rb +1 -1
  211. data/lib/gooddata/models/blueprint/dataset_blueprint.rb +6 -1
  212. data/lib/gooddata/models/blueprint/date_dimension.rb +1 -1
  213. data/lib/gooddata/models/blueprint/fact_field.rb +1 -1
  214. data/lib/gooddata/models/blueprint/label_field.rb +5 -1
  215. data/lib/gooddata/models/blueprint/project_blueprint.rb +1 -1
  216. data/lib/gooddata/models/blueprint/project_builder.rb +1 -1
  217. data/lib/gooddata/models/blueprint/reference_field.rb +1 -1
  218. data/lib/gooddata/models/blueprint/schema_blueprint.rb +1 -1
  219. data/lib/gooddata/models/blueprint/schema_builder.rb +1 -1
  220. data/lib/gooddata/models/blueprint/to_manifest.rb +7 -3
  221. data/lib/gooddata/models/blueprint/to_wire.rb +12 -1
  222. data/lib/gooddata/models/channel_configuration.rb +112 -0
  223. data/lib/gooddata/models/client.rb +42 -6
  224. data/lib/gooddata/models/client_synchronization_result.rb +1 -1
  225. data/lib/gooddata/models/client_synchronization_result_details.rb +1 -1
  226. data/lib/gooddata/models/datawarehouse.rb +25 -3
  227. data/lib/gooddata/models/domain.rb +29 -4
  228. data/lib/gooddata/models/execution.rb +1 -1
  229. data/lib/gooddata/models/execution_detail.rb +1 -1
  230. data/lib/gooddata/models/from_wire.rb +8 -1
  231. data/lib/gooddata/models/invitation.rb +1 -1
  232. data/lib/gooddata/models/links.rb +1 -1
  233. data/lib/gooddata/models/membership.rb +1 -1
  234. data/lib/gooddata/models/metadata.rb +3 -2
  235. data/lib/gooddata/models/metadata/attribute.rb +7 -1
  236. data/lib/gooddata/models/metadata/dashboard.rb +3 -3
  237. data/lib/gooddata/models/metadata/dashboard/dashboard_item.rb +1 -1
  238. data/lib/gooddata/models/metadata/dashboard/filter_apply_item.rb +2 -2
  239. data/lib/gooddata/models/metadata/dashboard/filter_item.rb +2 -2
  240. data/lib/gooddata/models/metadata/dashboard/geo_chart_item.rb +2 -2
  241. data/lib/gooddata/models/metadata/dashboard/headline_item.rb +2 -2
  242. data/lib/gooddata/models/metadata/dashboard/iframe_item.rb +2 -2
  243. data/lib/gooddata/models/metadata/dashboard/report_item.rb +2 -2
  244. data/lib/gooddata/models/metadata/dashboard/text_item.rb +2 -2
  245. data/lib/gooddata/models/metadata/dashboard_tab.rb +2 -2
  246. data/lib/gooddata/models/metadata/dataset.rb +1 -1
  247. data/lib/gooddata/models/metadata/dimension.rb +1 -1
  248. data/lib/gooddata/models/metadata/fact.rb +1 -1
  249. data/lib/gooddata/models/metadata/folder.rb +1 -1
  250. data/lib/gooddata/models/metadata/label.rb +1 -1
  251. data/lib/gooddata/models/metadata/metadata.rb +1 -1
  252. data/lib/gooddata/models/metadata/metric.rb +1 -1
  253. data/lib/gooddata/models/metadata/report.rb +1 -1
  254. data/lib/gooddata/models/metadata/report_definition.rb +1 -1
  255. data/lib/gooddata/models/metadata/scheduled_mail.rb +2 -2
  256. data/lib/gooddata/models/metadata/scheduled_mail/dashboard_attachment.rb +1 -1
  257. data/lib/gooddata/models/metadata/scheduled_mail/report_attachment.rb +1 -1
  258. data/lib/gooddata/models/metadata/variable.rb +1 -1
  259. data/lib/gooddata/models/model.rb +1 -1
  260. data/lib/gooddata/models/models.rb +1 -1
  261. data/lib/gooddata/models/module_constants.rb +1 -1
  262. data/lib/gooddata/models/notification_rule.rb +113 -0
  263. data/lib/gooddata/models/process.rb +10 -3
  264. data/lib/gooddata/models/profile.rb +9 -1
  265. data/lib/gooddata/models/project.rb +248 -50
  266. data/lib/gooddata/models/project_creator.rb +2 -2
  267. data/lib/gooddata/models/project_metadata.rb +1 -1
  268. data/lib/gooddata/models/project_role.rb +1 -1
  269. data/lib/gooddata/models/report_data_result.rb +1 -1
  270. data/lib/gooddata/models/schedule.rb +49 -13
  271. data/lib/gooddata/models/segment.rb +3 -3
  272. data/lib/gooddata/models/style_setting.rb +71 -0
  273. data/lib/gooddata/models/subscription.rb +181 -0
  274. data/lib/gooddata/models/tab_builder.rb +1 -1
  275. data/lib/gooddata/models/user_filters/mandatory_user_filter.rb +1 -1
  276. data/lib/gooddata/models/user_filters/user_filter.rb +1 -1
  277. data/lib/gooddata/models/user_filters/user_filter_builder.rb +11 -5
  278. data/lib/gooddata/models/user_filters/user_filters.rb +1 -1
  279. data/lib/gooddata/models/user_filters/variable_user_filter.rb +1 -1
  280. data/lib/gooddata/models/user_group.rb +19 -12
  281. data/lib/gooddata/rest/client.rb +9 -1
  282. data/lib/gooddata/rest/connection.rb +18 -9
  283. data/lib/gooddata/rest/object.rb +1 -1
  284. data/lib/gooddata/rest/object_factory.rb +1 -1
  285. data/lib/gooddata/rest/resource.rb +1 -1
  286. data/lib/gooddata/rest/rest.rb +1 -1
  287. data/lib/gooddata/version.rb +2 -2
  288. data/spec/.rubocop.yml +16 -0
  289. data/spec/bricks/bricks_spec.rb +13 -15
  290. data/spec/data/blueprints/attribute_sort_order_blueprint.json +72 -0
  291. data/spec/data/gooddata_version_process/gooddata_version.rb +1 -1
  292. data/spec/data/hello_world_process/hello_world.rb +2 -2
  293. data/spec/data/ruby_params_process/ruby_params.rb +1 -1
  294. data/spec/data/ruby_process/process.rb +2 -2
  295. data/spec/data/wire_models/attribute_sort_by_model.json +73 -0
  296. data/spec/environment/default.rb +14 -13
  297. data/spec/environment/develop.rb +26 -11
  298. data/spec/environment/environment.rb +2 -1
  299. data/spec/environment/hotfix.rb +15 -7
  300. data/spec/environment/production.rb +6 -14
  301. data/spec/environment/staging.rb +9 -10
  302. data/spec/helpers/blueprint_helper.rb +11 -10
  303. data/spec/helpers/cli_helper.rb +26 -24
  304. data/spec/helpers/connection_helper.rb +28 -26
  305. data/spec/helpers/crypto_helper.rb +8 -6
  306. data/spec/helpers/csv_helper.rb +7 -5
  307. data/spec/helpers/process_helper.rb +13 -11
  308. data/spec/helpers/project_helper.rb +36 -34
  309. data/spec/helpers/schedule_helper.rb +13 -11
  310. data/spec/helpers/spec_helper.rb +8 -6
  311. data/spec/integration/ads_output_stage_spec.rb +55 -0
  312. data/spec/integration/blueprint_updates_spec.rb +22 -16
  313. data/spec/integration/blueprint_with_grain_spec.rb +5 -3
  314. data/spec/integration/channel_configuration_spec.rb +67 -0
  315. data/spec/integration/clients_spec.rb +31 -22
  316. data/spec/integration/command_datawarehouse_spec.rb +4 -4
  317. data/spec/integration/command_projects_spec.rb +6 -6
  318. data/spec/integration/create_from_template_spec.rb +4 -3
  319. data/spec/integration/create_project_spec.rb +7 -4
  320. data/spec/integration/date_dim_switch_spec.rb +25 -28
  321. data/spec/integration/deprecated_load_spec.rb +11 -9
  322. data/spec/integration/full_process_schedule_spec.rb +82 -13
  323. data/spec/integration/full_project_spec.rb +67 -45
  324. data/spec/integration/lcm_spec.rb +41 -0
  325. data/spec/integration/over_to_user_filters_spec.rb +14 -10
  326. data/spec/integration/partial_md_export_import_spec.rb +3 -4
  327. data/spec/integration/project_spec.rb +101 -42
  328. data/spec/integration/rest_spec.rb +5 -4
  329. data/spec/integration/schedule_spec.rb +28 -39
  330. data/spec/integration/segments_spec.rb +42 -31
  331. data/spec/integration/subscription_spec.rb +63 -0
  332. data/spec/integration/user_filters_spec.rb +49 -39
  333. data/spec/integration/user_group_spec.rb +25 -5
  334. data/spec/integration/variables_spec.rb +34 -32
  335. data/spec/logging_in_logging_out_spec.rb +6 -8
  336. data/spec/spec_helper.rb +3 -3
  337. data/spec/unit/bricks/bricks_spec.rb +3 -4
  338. data/spec/unit/bricks/middleware/aws_middelware_spec.rb +8 -15
  339. data/spec/unit/bricks/middleware/bench_middleware_spec.rb +2 -2
  340. data/spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb +2 -2
  341. data/spec/unit/bricks/middleware/gooddata_middleware_spec.rb +2 -2
  342. data/spec/unit/bricks/middleware/logger_middleware_spec.rb +2 -2
  343. data/spec/unit/bricks/middleware/restforce_middleware_spec.rb +3 -3
  344. data/spec/unit/bricks/middleware/stdout_middleware_spec.rb +3 -3
  345. data/spec/unit/bricks/middleware/twitter_middleware_spec.rb +3 -3
  346. data/spec/unit/cli/cli_spec.rb +3 -3
  347. data/spec/unit/cli/commands/cmd_auth_spec.rb +2 -2
  348. data/spec/unit/commands/command_projects_spec.rb +3 -3
  349. data/spec/unit/core/connection_spec.rb +3 -4
  350. data/spec/unit/core/logging_spec.rb +2 -5
  351. data/spec/unit/core/nil_logger_spec.rb +2 -2
  352. data/spec/unit/core/project_spec.rb +4 -4
  353. data/spec/unit/extensions/hash_spec.rb +3 -4
  354. data/spec/unit/godzilla/goodzilla_spec.rb +22 -26
  355. data/spec/unit/helpers/csv_helper_spec.rb +3 -3
  356. data/spec/unit/helpers/data_helper_spec.rb +6 -18
  357. data/spec/unit/helpers/global_helpers_spec.rb +112 -28
  358. data/spec/unit/helpers_spec.rb +139 -2
  359. data/spec/unit/models/blueprint/attribute_sort_by_spec.rb +20 -0
  360. data/spec/unit/models/blueprint/attributes_spec.rb +1 -2
  361. data/spec/unit/models/blueprint/dataset_spec.rb +2 -3
  362. data/spec/unit/models/blueprint/labels_spec.rb +1 -2
  363. data/spec/unit/models/blueprint/project_blueprint_spec.rb +34 -35
  364. data/spec/unit/models/blueprint/reference_spec.rb +1 -2
  365. data/spec/unit/models/blueprint/schema_builder_spec.rb +5 -7
  366. data/spec/unit/models/blueprint/to_wire_spec.rb +76 -55
  367. data/spec/unit/models/domain_spec.rb +4 -5
  368. data/spec/unit/models/execution_spec.rb +16 -15
  369. data/spec/unit/models/from_wire_spec.rb +24 -19
  370. data/spec/unit/models/invitation_spec.rb +1 -1
  371. data/spec/unit/models/membership_spec.rb +36 -41
  372. data/spec/unit/models/metadata_spec.rb +20 -18
  373. data/spec/unit/models/metric_spec.rb +67 -55
  374. data/spec/unit/models/model_spec.rb +32 -37
  375. data/spec/unit/models/params_spec.rb +1 -1
  376. data/spec/unit/models/profile_spec.rb +40 -45
  377. data/spec/unit/models/project_creator_spec.rb +27 -29
  378. data/spec/unit/models/project_role_spec.rb +1 -1
  379. data/spec/unit/models/project_spec.rb +65 -2
  380. data/spec/unit/models/report_result_data_spec.rb +7 -12
  381. data/spec/unit/models/schedule_spec.rb +71 -35
  382. data/spec/unit/models/to_manifest_spec.rb +69 -4
  383. data/spec/unit/models/unit_project_spec.rb +12 -12
  384. data/spec/unit/models/user_filters_spec.rb +40 -40
  385. data/spec/unit/models/variable_spec.rb +108 -93
  386. data/spec/unit/rest/polling_spec.rb +7 -7
  387. data/spec/unit/rest/resource_spec.rb +2 -2
  388. metadata +145 -228
  389. data/spec/environment/release.rb +0 -21
  390. data/spec/environment/staging_3.rb +0 -36
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -11,11 +11,11 @@ describe GoodData::UserGroup do
11
11
  @user_group_name = 'My Test Group'
12
12
  @user_group_description = 'My Test Description'
13
13
 
14
- @client = ConnectionHelper::create_default_connection
14
+ @client = ConnectionHelper.create_default_connection
15
15
  @project = @client.create_project(title: 'UserGroup Testing Project', token: ConnectionHelper::GD_PROJECT_TOKEN, environment: ProjectHelper::ENVIRONMENT)
16
16
  @domain = @client.domain(ConnectionHelper::DEFAULT_DOMAIN)
17
17
 
18
- users = (1..5).to_a.map do |x|
18
+ users = (1..5).to_a.map do
19
19
  {
20
20
  user: ProjectHelper.create_random_user(@client),
21
21
  role: 'Admin'
@@ -29,7 +29,7 @@ describe GoodData::UserGroup do
29
29
  end
30
30
 
31
31
  after(:all) do
32
- @group && @group.delete
32
+ # @group && @group.delete
33
33
  @project && @project.delete
34
34
  @client.disconnect
35
35
  end
@@ -49,7 +49,7 @@ describe GoodData::UserGroup do
49
49
  @group.add_member(users)
50
50
 
51
51
  new_count = @group.members.to_a.length
52
- expect(new_count).to eq (old_count + 1)
52
+ expect(new_count).to eq(old_count + 1)
53
53
 
54
54
  group_members = @group.members.to_a
55
55
 
@@ -124,4 +124,24 @@ describe GoodData::UserGroup do
124
124
  expect(@group.description).to eq new_description
125
125
  end
126
126
  end
127
+
128
+ describe '#save' do
129
+ it 'updates existing group' do
130
+ new_description = 'This is new description'
131
+ @group.description = new_description
132
+ @group.save
133
+ @group = @project.user_groups(@group.obj_id)
134
+ expect(@group.description).to eq new_description
135
+ end
136
+ end
137
+
138
+ describe '.create' do
139
+ it 'sets client attribute' do
140
+ expect(@group.client).not_to be_nil
141
+ end
142
+
143
+ it 'sets project attribute' do
144
+ expect(@group.project).not_to be_nil
145
+ end
146
+ end
127
147
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -9,7 +9,7 @@ require 'gooddata'
9
9
  describe "Variables implementation", :constraint => 'slow' do
10
10
  before(:all) do
11
11
  @spec = JSON.parse(File.read("./spec/data/blueprints/test_project_model_spec.json"), :symbolize_names => true)
12
- @client = ConnectionHelper::create_default_connection
12
+ @client = ConnectionHelper.create_default_connection
13
13
  blueprint = GoodData::Model::ProjectBlueprint.new(@spec)
14
14
  @project = @client.create_project_from_blueprint(blueprint, :token => ConnectionHelper::GD_PROJECT_TOKEN, environment: ProjectHelper::ENVIRONMENT)
15
15
  @domain = @client.domain(ConnectionHelper::DEFAULT_DOMAIN)
@@ -17,21 +17,22 @@ describe "Variables implementation", :constraint => 'slow' do
17
17
  @label = GoodData::Attribute.find_first_by_title('Dev', client: @client, project: @project).label_by_name('email')
18
18
 
19
19
  commits_data = [
20
- ["lines_changed","committed_on","dev_id","repo_id"],
21
- [1,"01/01/2014",1,1],
22
- [3,"01/02/2014",2,2],
23
- [5,"05/02/2014",3,1]]
20
+ %w(lines_changed committed_on dev_id repo_id),
21
+ [1, "01/01/2014", 1, 1],
22
+ [3, "01/02/2014", 2, 2],
23
+ [5, "05/02/2014", 3, 1]
24
+ ]
24
25
  @project.upload(commits_data, blueprint, 'dataset.commits')
25
-
26
+
26
27
  devs_data = [
27
- ["dev_id", "email"],
28
+ %w(dev_id email),
28
29
  [1, "tomas@gooddata.com"],
29
30
  [2, "petr@gooddata.com"],
30
- [3, "jirka@gooddata.com"]]
31
+ [3, "jirka@gooddata.com"]
32
+ ]
31
33
  @project.upload(devs_data, blueprint, 'dataset.devs')
32
-
33
- @variable = @project.create_variable(title: 'uaaa', attribute: @label.attribute).save
34
34
 
35
+ @variable = @project.create_variable(title: 'uaaa', attribute: @label.attribute).save
35
36
  end
36
37
 
37
38
  after(:all) do
@@ -39,7 +40,7 @@ describe "Variables implementation", :constraint => 'slow' do
39
40
  end
40
41
 
41
42
  after(:each) do
42
- @variable.user_values.select {|x| x.level == :user}.pmap &:delete
43
+ @variable.user_values.select { |x| x.level == :user }.pmap(&:delete)
43
44
  end
44
45
 
45
46
  it "should create a variable filter" do
@@ -51,14 +52,14 @@ describe "Variables implementation", :constraint => 'slow' do
51
52
  # [5.0 | 3.0 | 1.0 ]
52
53
  @project.add_variable_permissions(filters, @variable)
53
54
  r = @project.compute_report(left: [metric], top: [@label.attribute], filters: [@variable])
54
- r.include_column?(['tomas@gooddata.com', 1]).should == true
55
- r.include_column?(['jirka@gooddata.com', 5]).should == true
56
- r.include_column?(['petr@gooddata.com', 3]).should == false
55
+ expect(r.include_column?(['tomas@gooddata.com', 1])).to be_truthy
56
+ expect(r.include_column?(['jirka@gooddata.com', 5])).to be_truthy
57
+ expect(r.include_column?(['petr@gooddata.com', 3])).to be_falsy
57
58
 
58
59
  r = @project.compute_report(left: [metric], top: [@label.attribute])
59
- r.include_column?(['tomas@gooddata.com', 1]).should == true
60
- r.include_column?(['jirka@gooddata.com', 5]).should == true
61
- r.include_column?(['petr@gooddata.com', 3]).should == true
60
+ expect(r.include_column?(['tomas@gooddata.com', 1])).to be_truthy
61
+ expect(r.include_column?(['jirka@gooddata.com', 5])).to be_truthy
62
+ expect(r.include_column?(['petr@gooddata.com', 3])).to be_truthy
62
63
  end
63
64
 
64
65
  it "should fail when asked to set a user not in project. No filters should be set up." do
@@ -79,7 +80,7 @@ describe "Variables implementation", :constraint => 'slow' do
79
80
  @project.add_variable_permissions(filters, @variable)
80
81
  expect(@variable.user_values.count).to eq 1
81
82
  end
82
-
83
+
83
84
  it "should pass and set only users that are in the projects if asked" do
84
85
  filters = [
85
86
  ['nonexistent_user@gooddata.com', @label.uri, 'tomas@gooddata.com'],
@@ -88,22 +89,23 @@ describe "Variables implementation", :constraint => 'slow' do
88
89
  @project.add_variable_permissions(filters, @variable, users_must_exist: false)
89
90
  expect(@variable.user_values.count).to eq 1
90
91
  end
91
-
92
+
92
93
  it "should fail when asked to set a value not in the proejct" do
93
94
  filters = [
94
95
  [ConnectionHelper::DEFAULT_USERNAME, @label.uri, '%^&*( nonexistent value', 'tomas@gooddata.com'],
95
- [ConnectionHelper::DEFAULT_USERNAME, @label.uri, 'tomas@gooddata.com']]
96
+ [ConnectionHelper::DEFAULT_USERNAME, @label.uri, 'tomas@gooddata.com']
97
+ ]
96
98
  expect do
97
99
  @project.add_variable_permissions(filters, @variable)
98
100
  end.to raise_error
99
101
  expect(@variable.user_values.count).to eq 0
100
102
  end
101
-
103
+
102
104
  it "should add a filter with nonexistent values when asked" do
103
105
  filters = [[ConnectionHelper::DEFAULT_USERNAME, @label.uri, '%^&*( nonexistent value', 'jirka@gooddata.com']]
104
106
  @project.add_variable_permissions(filters, @variable, ignore_missing_values: true)
105
-
106
- expect(@variable.user_values.pmap {|m| m.pretty_expression}).to eq ["[Dev] IN ([jirka@gooddata.com])"]
107
+
108
+ expect(@variable.user_values.pmap(&:pretty_expression)).to eq ["[Dev] IN ([jirka@gooddata.com])"]
107
109
  expect(@variable.user_values.count).to eq 1
108
110
  end
109
111
 
@@ -111,7 +113,7 @@ describe "Variables implementation", :constraint => 'slow' do
111
113
  filters = [[ConnectionHelper::DEFAULT_USERNAME, @label.uri, "tomas@gooddata.com"]]
112
114
  @project.add_variable_permissions(filters, @variable)
113
115
  perms = @variable.user_values
114
- pretty = perms.pmap {|f| [f.related.login, f.pretty_expression]}
116
+ pretty = perms.pmap { |f| [f.related.login, f.pretty_expression] }
115
117
  expect(perms.first.related).to eq @client.user
116
118
  expect(pretty).to eq [[ConnectionHelper::DEFAULT_USERNAME, "[Dev] IN ([tomas@gooddata.com])"]]
117
119
  end
@@ -124,7 +126,7 @@ describe "Variables implementation", :constraint => 'slow' do
124
126
  [user_with_already_set_up_filter.login, @label.uri, "tomas@gooddata.com"]
125
127
  ]
126
128
  @project.add_variable_permissions(filters, @variable)
127
- expect(@variable.user_values.map {|f| [f.related.login, f.pretty_expression] })
129
+ expect(@variable.user_values.map { |f| [f.related.login, f.pretty_expression] })
128
130
  .to eq [[ConnectionHelper::DEFAULT_USERNAME, "[Dev] IN ([tomas@gooddata.com])"]]
129
131
 
130
132
  # Now let's add user filter to a different user. If we do not explicitely state that
@@ -135,16 +137,16 @@ describe "Variables implementation", :constraint => 'slow' do
135
137
  [another_user.login, @label.uri, "tomas@gooddata.com"]
136
138
  ]
137
139
  @project.add_variable_permissions(new_filters, @variable)
138
- expect(@variable.user_values.map {|f| [f.related.login, f.pretty_expression] })
140
+ expect(@variable.user_values.map { |f| [f.related.login, f.pretty_expression] })
139
141
  .to eq [[another_user.login, "[Dev] IN ([tomas@gooddata.com])"]]
140
142
  end
141
143
 
142
144
  it "should set up false if all values are nonexistent" do
143
- metric = GoodData::Fact.find_first_by_title('Lines Changed', client: @client, project: @project).create_metric
145
+ # metric = GoodData::Fact.find_first_by_title('Lines Changed', client: @client, project: @project).create_metric
144
146
  filters = [[ConnectionHelper::DEFAULT_USERNAME, @label.uri, "NONEXISTENT1", "NONEXISTENT2", "NONEXISTENT3"]]
145
147
  @project.add_variable_permissions(filters, @variable, ignore_missing_values: true)
146
148
  # expect(metric.execute).to eq 9
147
- expect(@variable.user_values.map {|f| [f.related.login, f.pretty_expression] })
149
+ expect(@variable.user_values.map { |f| [f.related.login, f.pretty_expression] })
148
150
  .to eq [[ConnectionHelper::DEFAULT_USERNAME, "TRUE"]]
149
151
 
150
152
  @project.add_variable_permissions(filters, @variable, ignore_missing_values: true, restrict_if_missing_all_values: true)
@@ -160,7 +162,7 @@ describe "Variables implementation", :constraint => 'slow' do
160
162
  [user_with_already_set_up_filter.login, @label.uri, "tomas@gooddata.com"]
161
163
  ]
162
164
  @project.add_variable_permissions(filters, @variable)
163
- expect(@variable.user_values.map {|f| [f.related.login, f.pretty_expression] })
165
+ expect(@variable.user_values.map { |f| [f.related.login, f.pretty_expression] })
164
166
  .to eq [[ConnectionHelper::DEFAULT_USERNAME, "[Dev] IN ([tomas@gooddata.com])"]]
165
167
  # Now let's add user filter to a different user. If we do not explicitely state that
166
168
  # user_with_already_set_up_filter should keep his filter it will be removed
@@ -170,12 +172,12 @@ describe "Variables implementation", :constraint => 'slow' do
170
172
  [another_user.login, @label.uri, "tomas@gooddata.com"]
171
173
  ]
172
174
  @project.add_variable_permissions(new_filters, @variable, do_not_touch_filters_that_are_not_mentioned: true)
173
- expect(@variable.user_values.map {|f| [f.related.login, f.pretty_expression] })
175
+ expect(@variable.user_values.map { |f| [f.related.login, f.pretty_expression] })
174
176
  .to include([ConnectionHelper::DEFAULT_USERNAME, "[Dev] IN ([tomas@gooddata.com])"],
175
177
  [another_user.login, "[Dev] IN ([tomas@gooddata.com])"])
176
178
  end
177
179
 
178
- it "should be able to update the filter value in place" do
180
+ it "should be able to update the filter value in place", broken: true do
179
181
  pending 'FIXME: We cannot swap filters yet'
180
182
 
181
183
  filters = [[ConnectionHelper::DEFAULT_USERNAME, @label.uri, "tomas@gooddata.com", "jirka@gooddata.com"]]
@@ -1,16 +1,14 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
7
7
  require 'gooddata'
8
- require 'pry'
9
8
 
10
9
  describe GoodData::Rest::Connection, :constraint => 'slow' do
11
-
12
10
  it "should log in and disconnect" do
13
- client = ConnectionHelper::create_default_connection
11
+ client = ConnectionHelper.create_default_connection
14
12
  expect(client).to be_kind_of(GoodData::Rest::Client)
15
13
 
16
14
  client.get("/gdc/md")
@@ -61,7 +59,7 @@ describe GoodData::Rest::Connection, :constraint => 'slow' do
61
59
  end
62
60
 
63
61
  it "should log in and disconnect with SST" do
64
- regular_client = ConnectionHelper::create_default_connection
62
+ regular_client = ConnectionHelper.create_default_connection
65
63
  sst = regular_client.connection.sst_token
66
64
 
67
65
  sst_client = GoodData.connect(sst_token: sst, verify_ssl: false)
@@ -72,7 +70,7 @@ describe GoodData::Rest::Connection, :constraint => 'slow' do
72
70
  end
73
71
 
74
72
  it "should log in and disconnect with SST with additional params" do
75
- regular_client = ConnectionHelper::create_default_connection
73
+ regular_client = ConnectionHelper.create_default_connection
76
74
  sst = regular_client.connection.sst_token
77
75
 
78
76
  sst_client = GoodData.connect(sst_token: sst, verify_ssl: false, webdav_server: 'https://some_random_server/')
@@ -84,8 +82,8 @@ describe GoodData::Rest::Connection, :constraint => 'slow' do
84
82
  end
85
83
 
86
84
  it "should be able to regenerate TT" do
87
- regular_client = ConnectionHelper::create_default_connection
88
- projects = regular_client.projects
85
+ regular_client = ConnectionHelper.create_default_connection
86
+ regular_client.projects
89
87
  regular_client.connection.headers.delete(:x_gdc_authtt)
90
88
  regular_client.get('/gdc/md')
91
89
  expect(regular_client.connection.headers).to have_key :x_gdc_authtt
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -75,9 +75,9 @@ RSpec.configure do |config|
75
75
  end
76
76
  end
77
77
 
78
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
78
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new(
79
79
  SimpleCov::Formatter::HTMLFormatter
80
- ]
80
+ )
81
81
 
82
82
  SimpleCov.start do
83
83
  add_filter 'spec/'
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -8,7 +8,7 @@ require 'gooddata/bricks/bricks'
8
8
 
9
9
  describe GoodData::Bricks::Brick do
10
10
  it "Has GoodData::Bricks::Brick class" do
11
- GoodData::Bricks::Brick.should_not == nil
11
+ GoodData::Bricks::Brick.should_not be(nil)
12
12
  end
13
13
 
14
14
  describe '#version' do
@@ -22,8 +22,7 @@ describe GoodData::Bricks::Brick do
22
22
 
23
23
  it "should be possible to execute custom brick" do
24
24
  class CustomBrick < GoodData::Bricks::Brick
25
-
26
- def call(params)
25
+ def call(_params)
27
26
  puts 'hello'
28
27
  end
29
28
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -10,32 +10,28 @@ require 'gooddata/bricks/middleware/aws_middleware'
10
10
 
11
11
  describe GoodData::Bricks::AWSMiddleware do
12
12
  it 'should do nothing if the key "aws_client" is not there at all' do
13
- middleware = GoodData::Bricks::AWSMiddleware.new(app: lambda {|params| 'Doing nothing'})
13
+ middleware = GoodData::Bricks::AWSMiddleware.new(app: ->(_params) { 'Doing nothing' })
14
14
  middleware.call({})
15
15
  end
16
16
 
17
17
  it 'should fail gracefully if value aws_client param not present even though the key is' do
18
- middleware = GoodData::Bricks::AWSMiddleware.new(app: lambda {|params| 'Doing nothing'})
18
+ middleware = GoodData::Bricks::AWSMiddleware.new(app: -> { 'Doing nothing' })
19
19
  expect do
20
20
  middleware.call('aws_client' => nil)
21
21
  end.to raise_exception 'Unable to connect to AWS. Parameter "aws_client" seems to be empty'
22
22
  end
23
23
 
24
24
  it 'should fail gracefully if value secret_access_key is missing' do
25
- middleware = GoodData::Bricks::AWSMiddleware.new(app: lambda {|params| 'Doing nothing'})
25
+ middleware = GoodData::Bricks::AWSMiddleware.new(app: -> { 'Doing nothing' })
26
26
  expect do
27
- middleware.call('aws_client' => {
28
- 'access_key_id' => 'something'
29
- })
27
+ middleware.call('aws_client' => { 'access_key_id' => 'something' })
30
28
  end.to raise_exception 'Unable to connect to AWS. Parameter "secret_access_key" is missing'
31
29
  end
32
30
 
33
31
  it 'should fail gracefully if value access_key_id is missing' do
34
- middleware = GoodData::Bricks::AWSMiddleware.new(app: lambda {|params| 'Doing nothing'})
32
+ middleware = GoodData::Bricks::AWSMiddleware.new(app: -> { 'Doing nothing' })
35
33
  expect do
36
- middleware.call('aws_client' => {
37
- 'secret_access_key' => 'something'
38
- })
34
+ middleware.call('aws_client' => { 'secret_access_key' => 'something' })
39
35
  end.to raise_exception 'Unable to connect to AWS. Parameter "access_key_id" is missing'
40
36
  end
41
37
 
@@ -43,9 +39,6 @@ describe GoodData::Bricks::AWSMiddleware do
43
39
  middleware = GoodData::Bricks::AWSMiddleware.new(app: lambda do |params|
44
40
  expect(params['aws_client']['s3_client']).to be_kind_of(AWS::S3)
45
41
  end)
46
- middleware.call('aws_client' => {
47
- 'secret_access_key' => 'something',
48
- 'access_key_id' => 'something'
49
- })
42
+ middleware.call('aws_client' => { 'secret_access_key' => 'something', 'access_key_id' => 'something' })
50
43
  end
51
44
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -10,6 +10,6 @@ require 'gooddata/bricks/middleware/bench_middleware'
10
10
 
11
11
  describe GoodData::Bricks::BenchMiddleware do
12
12
  it "Has GoodData::Bricks::BenchMiddleware class" do
13
- GoodData::Bricks::BenchMiddleware.should_not == nil
13
+ GoodData::Bricks::BenchMiddleware.should_not be(nil)
14
14
  end
15
15
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -10,6 +10,6 @@ require 'gooddata/bricks/middleware/bulk_salesforce_middleware'
10
10
 
11
11
  describe GoodData::Bricks::BulkSalesforceMiddleware do
12
12
  it "Has GoodData::Bricks::BulkSalesforceMiddleware class" do
13
- GoodData::Bricks::BulkSalesforceMiddleware.should_not == nil
13
+ GoodData::Bricks::BulkSalesforceMiddleware.should_not be(nil)
14
14
  end
15
15
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -10,6 +10,6 @@ require 'gooddata/bricks/middleware/gooddata_middleware'
10
10
 
11
11
  describe GoodData::Bricks::GoodDataMiddleware do
12
12
  it "Has GoodData::Bricks::GoodDataMiddleware class" do
13
- GoodData::Bricks::GoodDataMiddleware.should_not == nil
13
+ GoodData::Bricks::GoodDataMiddleware.should_not be(nil)
14
14
  end
15
15
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
  #
3
- # Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
3
+ # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
@@ -10,6 +10,6 @@ require 'gooddata/bricks/middleware/logger_middleware'
10
10
 
11
11
  describe GoodData::Bricks::LoggerMiddleware do
12
12
  it "Has GoodData::Bricks::LoggerMiddleware class" do
13
- GoodData::Bricks::LoggerMiddleware.should_not == nil
13
+ GoodData::Bricks::LoggerMiddleware.should_not be(nil)
14
14
  end
15
15
  end