axiom-optimizer 0.1.0 → 0.1.1

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 (279) hide show
  1. data/.rspec +1 -0
  2. data/.ruby-gemset +1 -0
  3. data/.travis.yml +4 -6
  4. data/Gemfile +6 -3
  5. data/Gemfile.devtools +26 -24
  6. data/Guardfile +18 -9
  7. data/README.md +2 -25
  8. data/axiom-optimizer.gemspec +1 -3
  9. data/config/devtools.yml +2 -0
  10. data/config/flay.yml +1 -1
  11. data/config/flog.yml +1 -1
  12. data/config/rubocop.yml +53 -0
  13. data/lib/axiom/optimizer.rb +1 -1
  14. data/lib/axiom/optimizer/algebra/difference.rb +1 -1
  15. data/lib/axiom/optimizer/algebra/join.rb +3 -1
  16. data/lib/axiom/optimizer/algebra/projection.rb +1 -1
  17. data/lib/axiom/optimizer/algebra/rename.rb +1 -1
  18. data/lib/axiom/optimizer/algebra/restriction.rb +1 -1
  19. data/lib/axiom/optimizer/algebra/summarization.rb +1 -1
  20. data/lib/axiom/optimizer/function/connective/binary.rb +1 -1
  21. data/lib/axiom/optimizer/optimizable.rb +5 -3
  22. data/lib/axiom/optimizer/relation/materialized.rb +1 -1
  23. data/lib/axiom/optimizer/relation/operation/combination.rb +1 -1
  24. data/lib/axiom/optimizer/relation/operation/limit.rb +2 -2
  25. data/lib/axiom/optimizer/support/predicate_partition.rb +1 -4
  26. data/lib/axiom/optimizer/version.rb +1 -1
  27. data/spec/integration/axiom/algebra/difference/optimize_spec.rb +15 -15
  28. data/spec/integration/axiom/algebra/intersection/optimize_spec.rb +15 -15
  29. data/spec/integration/axiom/algebra/join/optimize_spec.rb +11 -11
  30. data/spec/integration/axiom/algebra/product/optimize_spec.rb +13 -13
  31. data/spec/integration/axiom/algebra/projection/optimize_spec.rb +44 -44
  32. data/spec/integration/axiom/algebra/rename/optimize_spec.rb +70 -70
  33. data/spec/integration/axiom/algebra/restriction/optimize_spec.rb +23 -24
  34. data/spec/integration/axiom/algebra/summarization/optimize_spec.rb +8 -8
  35. data/spec/integration/axiom/algebra/union/optimize_spec.rb +21 -21
  36. data/spec/integration/axiom/function/connective/conjunction/optimize_spec.rb +26 -26
  37. data/spec/integration/axiom/function/connective/disjunction/optimize_spec.rb +27 -28
  38. data/spec/integration/axiom/function/connective/negation/optimize_spec.rb +2 -2
  39. data/spec/integration/axiom/function/optimize_spec.rb +1 -1
  40. data/spec/integration/axiom/function/predicate/equality/optimize_spec.rb +8 -8
  41. data/spec/integration/axiom/function/predicate/exclusion/optimize_spec.rb +19 -19
  42. data/spec/integration/axiom/function/predicate/greater_than/optimize_spec.rb +17 -17
  43. data/spec/integration/axiom/function/predicate/greater_than_or_equal_to/optimize_spec.rb +17 -17
  44. data/spec/integration/axiom/function/predicate/inclusion/optimize_spec.rb +19 -19
  45. data/spec/integration/axiom/function/predicate/inequality/optimize_spec.rb +8 -8
  46. data/spec/integration/axiom/function/predicate/less_than/optimize_spec.rb +17 -17
  47. data/spec/integration/axiom/function/predicate/less_than_or_equal_to/optimize_spec.rb +17 -17
  48. data/spec/integration/axiom/relation/empty/optimize_spec.rb +2 -2
  49. data/spec/integration/axiom/relation/materialized/optimize_spec.rb +3 -3
  50. data/spec/integration/axiom/relation/operation/limit/optimize_spec.rb +16 -16
  51. data/spec/integration/axiom/relation/operation/offset/optimize_spec.rb +14 -14
  52. data/spec/integration/axiom/relation/operation/order/optimize_spec.rb +11 -11
  53. data/spec/integration/axiom/relation/operation/reverse/optimize_spec.rb +9 -9
  54. data/spec/integration/axiom/relation/optimize_spec.rb +4 -4
  55. data/spec/shared/function_connective_binary_optimize_behavior.rb +18 -18
  56. data/spec/shared/optimize_method_behavior.rb +2 -2
  57. data/spec/spec_helper.rb +7 -8
  58. data/spec/support/add_method_missing.rb +3 -4
  59. data/spec/unit/axiom/optimizer/algebra/difference/empty_left/optimize_spec.rb +7 -7
  60. data/spec/unit/axiom/optimizer/algebra/difference/empty_right/optimize_spec.rb +7 -7
  61. data/spec/unit/axiom/optimizer/algebra/difference/equal_operands/optimize_spec.rb +7 -9
  62. data/spec/unit/axiom/optimizer/algebra/extension/extensions_spec.rb +3 -3
  63. data/spec/unit/axiom/optimizer/algebra/extension/order_operand/optimizable_predicate_spec.rb +3 -3
  64. data/spec/unit/axiom/optimizer/algebra/extension/order_operand/optimize_spec.rb +6 -6
  65. data/spec/unit/axiom/optimizer/algebra/extension/unoptimized_operand/optimizable_predicate_spec.rb +10 -10
  66. data/spec/unit/axiom/optimizer/algebra/extension/unoptimized_operand/optimize_spec.rb +10 -10
  67. data/spec/unit/axiom/optimizer/algebra/intersection/empty_left/optimize_spec.rb +7 -7
  68. data/spec/unit/axiom/optimizer/algebra/intersection/empty_right/optimize_spec.rb +7 -7
  69. data/spec/unit/axiom/optimizer/algebra/intersection/equal_operands/optimize_spec.rb +7 -7
  70. data/spec/unit/axiom/optimizer/algebra/join/disjoint_headers/optimizable_predicate_spec.rb +6 -6
  71. data/spec/unit/axiom/optimizer/algebra/join/disjoint_headers/optimize_spec.rb +7 -7
  72. data/spec/unit/axiom/optimizer/algebra/join/equal_headers/optimizable_predicate_spec.rb +6 -6
  73. data/spec/unit/axiom/optimizer/algebra/join/equal_headers/optimize_spec.rb +8 -8
  74. data/spec/unit/axiom/optimizer/algebra/join/materialized_left/optimizable_predicate_spec.rb +9 -9
  75. data/spec/unit/axiom/optimizer/algebra/join/materialized_left/optimize_spec.rb +12 -12
  76. data/spec/unit/axiom/optimizer/algebra/join/materialized_right/optimizable_predicate_spec.rb +9 -9
  77. data/spec/unit/axiom/optimizer/algebra/join/materialized_right/optimize_spec.rb +12 -12
  78. data/spec/unit/axiom/optimizer/algebra/product/table_dee_left/optimizable_predicate_spec.rb +4 -4
  79. data/spec/unit/axiom/optimizer/algebra/product/table_dee_left/optimize_spec.rb +6 -6
  80. data/spec/unit/axiom/optimizer/algebra/product/table_dee_right/optimizable_predicate_spec.rb +4 -4
  81. data/spec/unit/axiom/optimizer/algebra/product/table_dee_right/optimize_spec.rb +6 -6
  82. data/spec/unit/axiom/optimizer/algebra/projection/empty_operand/optimizable_predicate_spec.rb +5 -5
  83. data/spec/unit/axiom/optimizer/algebra/projection/empty_operand/optimize_spec.rb +6 -8
  84. data/spec/unit/axiom/optimizer/algebra/projection/extension_operand/optimizable_predicate_spec.rb +6 -6
  85. data/spec/unit/axiom/optimizer/algebra/projection/extension_operand/optimize_spec.rb +12 -6
  86. data/spec/unit/axiom/optimizer/algebra/projection/projection_operand/optimizable_predicate_spec.rb +6 -6
  87. data/spec/unit/axiom/optimizer/algebra/projection/projection_operand/optimize_spec.rb +7 -7
  88. data/spec/unit/axiom/optimizer/algebra/projection/union_operand/optimizable_predicate_spec.rb +6 -6
  89. data/spec/unit/axiom/optimizer/algebra/projection/union_operand/optimize_spec.rb +10 -10
  90. data/spec/unit/axiom/optimizer/algebra/projection/unoptimized_operand/optimizable_predicate_spec.rb +5 -5
  91. data/spec/unit/axiom/optimizer/algebra/projection/unoptimized_operand/optimize_spec.rb +7 -7
  92. data/spec/unit/axiom/optimizer/algebra/rename/aliases_spec.rb +7 -7
  93. data/spec/unit/axiom/optimizer/algebra/rename/empty_operand/optimizable_predicate_spec.rb +5 -5
  94. data/spec/unit/axiom/optimizer/algebra/rename/empty_operand/optimize_spec.rb +5 -7
  95. data/spec/unit/axiom/optimizer/algebra/rename/limit_operand/optimizable_predicate_spec.rb +5 -5
  96. data/spec/unit/axiom/optimizer/algebra/rename/limit_operand/optimize_spec.rb +7 -7
  97. data/spec/unit/axiom/optimizer/algebra/rename/offset_operand/optimizable_predicate_spec.rb +5 -5
  98. data/spec/unit/axiom/optimizer/algebra/rename/offset_operand/optimize_spec.rb +7 -7
  99. data/spec/unit/axiom/optimizer/algebra/rename/order_operand/optimizable_predicate_spec.rb +5 -5
  100. data/spec/unit/axiom/optimizer/algebra/rename/order_operand/optimize_spec.rb +7 -7
  101. data/spec/unit/axiom/optimizer/algebra/rename/projection_operand/optimizable_predicate_spec.rb +12 -12
  102. data/spec/unit/axiom/optimizer/algebra/rename/projection_operand/optimize_spec.rb +7 -7
  103. data/spec/unit/axiom/optimizer/algebra/rename/rename_operand/optimizable_predicate_spec.rb +9 -9
  104. data/spec/unit/axiom/optimizer/algebra/rename/rename_operand/optimize_spec.rb +7 -7
  105. data/spec/unit/axiom/optimizer/algebra/rename/rename_operand_and_empty_aliases/optimizable_predicate_spec.rb +11 -11
  106. data/spec/unit/axiom/optimizer/algebra/rename/rename_operand_and_empty_aliases/optimize_spec.rb +6 -6
  107. data/spec/unit/axiom/optimizer/algebra/rename/restriction_operand/optimizable_predicate_spec.rb +6 -6
  108. data/spec/unit/axiom/optimizer/algebra/rename/restriction_operand/optimize_spec.rb +7 -7
  109. data/spec/unit/axiom/optimizer/algebra/rename/reverse_operand/optimizable_predicate_spec.rb +4 -4
  110. data/spec/unit/axiom/optimizer/algebra/rename/reverse_operand/optimize_spec.rb +8 -8
  111. data/spec/unit/axiom/optimizer/algebra/rename/set_operand/optimizable_predicate_spec.rb +6 -6
  112. data/spec/unit/axiom/optimizer/algebra/rename/set_operand/optimize_spec.rb +8 -8
  113. data/spec/unit/axiom/optimizer/algebra/rename/unoptimized_operand/optimizable_predicate_spec.rb +6 -6
  114. data/spec/unit/axiom/optimizer/algebra/rename/unoptimized_operand/optimize_spec.rb +7 -7
  115. data/spec/unit/axiom/optimizer/algebra/restriction/combination_operand/optimizable_predicate_spec.rb +6 -6
  116. data/spec/unit/axiom/optimizer/algebra/restriction/combination_operand/optimize_spec.rb +6 -6
  117. data/spec/unit/axiom/optimizer/algebra/restriction/contradiction/optimizable_predicate_spec.rb +5 -5
  118. data/spec/unit/axiom/optimizer/algebra/restriction/contradiction/optimize_spec.rb +7 -9
  119. data/spec/unit/axiom/optimizer/algebra/restriction/join_operand/optimizable_predicate_spec.rb +5 -5
  120. data/spec/unit/axiom/optimizer/algebra/restriction/join_operand/optimize_spec.rb +17 -17
  121. data/spec/unit/axiom/optimizer/algebra/restriction/order_operand/optimizable_predicate_spec.rb +5 -5
  122. data/spec/unit/axiom/optimizer/algebra/restriction/order_operand/optimize_spec.rb +7 -7
  123. data/spec/unit/axiom/optimizer/algebra/restriction/predicate_spec.rb +6 -6
  124. data/spec/unit/axiom/optimizer/algebra/restriction/product_operand/optimizable_predicate_spec.rb +5 -5
  125. data/spec/unit/axiom/optimizer/algebra/restriction/product_operand/optimize_spec.rb +17 -17
  126. data/spec/unit/axiom/optimizer/algebra/restriction/restriction_operand/optimizable_predicate_spec.rb +7 -7
  127. data/spec/unit/axiom/optimizer/algebra/restriction/restriction_operand/optimize_spec.rb +6 -6
  128. data/spec/unit/axiom/optimizer/algebra/restriction/set_operand/optimizable_predicate_spec.rb +7 -7
  129. data/spec/unit/axiom/optimizer/algebra/restriction/set_operand/optimize_spec.rb +7 -7
  130. data/spec/unit/axiom/optimizer/algebra/restriction/tautology/optimizable_predicate_spec.rb +4 -4
  131. data/spec/unit/axiom/optimizer/algebra/restriction/tautology/optimize_spec.rb +7 -7
  132. data/spec/unit/axiom/optimizer/algebra/restriction/unoptimized_operand/optimizable_predicate_spec.rb +5 -5
  133. data/spec/unit/axiom/optimizer/algebra/restriction/unoptimized_operand/optimize_spec.rb +7 -7
  134. data/spec/unit/axiom/optimizer/algebra/summarization/empty_operand/class_methods/extension_default_spec.rb +1 -1
  135. data/spec/unit/axiom/optimizer/algebra/summarization/empty_operand/optimizable_predicate_spec.rb +6 -6
  136. data/spec/unit/axiom/optimizer/algebra/summarization/empty_operand/optimize_spec.rb +13 -13
  137. data/spec/unit/axiom/optimizer/algebra/summarization/empty_summarize_per/optimizable_predicate_spec.rb +8 -8
  138. data/spec/unit/axiom/optimizer/algebra/summarization/empty_summarize_per/optimize_spec.rb +5 -7
  139. data/spec/unit/axiom/optimizer/algebra/summarization/order_operand/optimizable_predicate_spec.rb +3 -3
  140. data/spec/unit/axiom/optimizer/algebra/summarization/order_operand/optimize_spec.rb +6 -6
  141. data/spec/unit/axiom/optimizer/algebra/summarization/summarize_per_spec.rb +7 -7
  142. data/spec/unit/axiom/optimizer/algebra/summarization/summarizers_spec.rb +3 -3
  143. data/spec/unit/axiom/optimizer/algebra/summarization/unoptimized_operand/optimizable_predicate_spec.rb +3 -3
  144. data/spec/unit/axiom/optimizer/algebra/summarization/unoptimized_operand/optimize_spec.rb +6 -6
  145. data/spec/unit/axiom/optimizer/algebra/union/empty_left/optimize_spec.rb +7 -7
  146. data/spec/unit/axiom/optimizer/algebra/union/empty_right/optimize_spec.rb +7 -7
  147. data/spec/unit/axiom/optimizer/algebra/union/equal_operands/optimize_spec.rb +7 -7
  148. data/spec/unit/axiom/optimizer/class_methods/chain_spec.rb +8 -8
  149. data/spec/unit/axiom/optimizer/function/binary/constant_operands/optimize_spec.rb +1 -1
  150. data/spec/unit/axiom/optimizer/function/binary/left_spec.rb +2 -2
  151. data/spec/unit/axiom/optimizer/function/binary/right_spec.rb +2 -2
  152. data/spec/unit/axiom/optimizer/function/binary/unoptimized_operands/optimizable_predicate_spec.rb +4 -4
  153. data/spec/unit/axiom/optimizer/function/binary/unoptimized_operands/optimize_spec.rb +3 -3
  154. data/spec/unit/axiom/optimizer/function/class_methods/optimize_functions_spec.rb +4 -4
  155. data/spec/unit/axiom/optimizer/function/class_methods/optimize_operand_spec.rb +5 -5
  156. data/spec/unit/axiom/optimizer/function/connective/binary/constant_operands/optimize_spec.rb +2 -2
  157. data/spec/unit/axiom/optimizer/function/connective/binary/equal_operands/optimizable_predicate_spec.rb +1 -1
  158. data/spec/unit/axiom/optimizer/function/connective/binary/equal_operands/optimize_spec.rb +2 -2
  159. data/spec/unit/axiom/optimizer/function/connective/binary/left_spec.rb +7 -7
  160. data/spec/unit/axiom/optimizer/function/connective/binary/redundant_left/optimizable_predicate_spec.rb +3 -3
  161. data/spec/unit/axiom/optimizer/function/connective/binary/redundant_left/optimize_spec.rb +3 -3
  162. data/spec/unit/axiom/optimizer/function/connective/binary/redundant_right/optimizable_predicate_spec.rb +3 -3
  163. data/spec/unit/axiom/optimizer/function/connective/binary/redundant_right/optimize_spec.rb +3 -3
  164. data/spec/unit/axiom/optimizer/function/connective/binary/right_spec.rb +7 -7
  165. data/spec/unit/axiom/optimizer/function/connective/conjunction/contradiction/optimizable_predicate_spec.rb +1 -1
  166. data/spec/unit/axiom/optimizer/function/connective/conjunction/contradiction/optimize_spec.rb +2 -2
  167. data/spec/unit/axiom/optimizer/function/connective/conjunction/optimizable_to_exclusion/optimizable_predicate_spec.rb +9 -9
  168. data/spec/unit/axiom/optimizer/function/connective/conjunction/optimizable_to_exclusion/optimize_spec.rb +17 -17
  169. data/spec/unit/axiom/optimizer/function/connective/conjunction/tautology_left/optimizable_predicate_spec.rb +1 -1
  170. data/spec/unit/axiom/optimizer/function/connective/conjunction/tautology_left/optimize_spec.rb +2 -2
  171. data/spec/unit/axiom/optimizer/function/connective/conjunction/tautology_right/optimizable_predicate_spec.rb +1 -1
  172. data/spec/unit/axiom/optimizer/function/connective/conjunction/tautology_right/optimize_spec.rb +2 -2
  173. data/spec/unit/axiom/optimizer/function/connective/disjunction/contradiction_left/optimizable_predicate_spec.rb +1 -1
  174. data/spec/unit/axiom/optimizer/function/connective/disjunction/contradiction_left/optimize_spec.rb +2 -2
  175. data/spec/unit/axiom/optimizer/function/connective/disjunction/contradiction_right/optimizable_predicate_spec.rb +1 -1
  176. data/spec/unit/axiom/optimizer/function/connective/disjunction/contradiction_right/optimize_spec.rb +2 -2
  177. data/spec/unit/axiom/optimizer/function/connective/disjunction/optimizable_to_inclusion/optimizable_predicate_spec.rb +9 -9
  178. data/spec/unit/axiom/optimizer/function/connective/disjunction/optimizable_to_inclusion/optimize_spec.rb +17 -17
  179. data/spec/unit/axiom/optimizer/function/connective/disjunction/tautology/optimizable_predicate_spec.rb +1 -1
  180. data/spec/unit/axiom/optimizer/function/connective/disjunction/tautology/optimize_spec.rb +2 -2
  181. data/spec/unit/axiom/optimizer/function/connective/negation/constant_operand/optimize_spec.rb +2 -2
  182. data/spec/unit/axiom/optimizer/function/connective/negation/invertible_operand/optimizable_predicate_spec.rb +1 -1
  183. data/spec/unit/axiom/optimizer/function/connective/negation/invertible_operand/optimize_spec.rb +2 -2
  184. data/spec/unit/axiom/optimizer/function/connective/negation/operand_spec.rb +5 -5
  185. data/spec/unit/axiom/optimizer/function/predicate/comparable/never_comparable/optimizable_predicate_spec.rb +1 -1
  186. data/spec/unit/axiom/optimizer/function/predicate/comparable/never_equivalent/optimizable_predicate_spec.rb +4 -4
  187. data/spec/unit/axiom/optimizer/function/predicate/comparable/normalizable_operands/optimizable_predicate_spec.rb +1 -1
  188. data/spec/unit/axiom/optimizer/function/predicate/comparable/normalizable_operands/optimize_spec.rb +2 -2
  189. data/spec/unit/axiom/optimizer/function/predicate/constant_operands/optimize_spec.rb +2 -2
  190. data/spec/unit/axiom/optimizer/function/predicate/contradiction/optimize_spec.rb +1 -1
  191. data/spec/unit/axiom/optimizer/function/predicate/enumerable/class_methods/sort_by_value_spec.rb +1 -1
  192. data/spec/unit/axiom/optimizer/function/predicate/enumerable/empty_right/optimizable_predicate_spec.rb +8 -8
  193. data/spec/unit/axiom/optimizer/function/predicate/enumerable/one_right/optimizable_predicate_spec.rb +7 -7
  194. data/spec/unit/axiom/optimizer/function/predicate/enumerable/unoptimized_operands/optimizable_predicate_spec.rb +5 -5
  195. data/spec/unit/axiom/optimizer/function/predicate/enumerable/unoptimized_operands/optimize_spec.rb +14 -14
  196. data/spec/unit/axiom/optimizer/function/predicate/equality/tautology/optimizable_predicate_spec.rb +1 -1
  197. data/spec/unit/axiom/optimizer/function/predicate/exclusion/empty_right/optimize_spec.rb +7 -7
  198. data/spec/unit/axiom/optimizer/function/predicate/exclusion/one_right/optimize_spec.rb +9 -9
  199. data/spec/unit/axiom/optimizer/function/predicate/greater_than/contradiction/optimizable_predicate_spec.rb +3 -3
  200. data/spec/unit/axiom/optimizer/function/predicate/greater_than/tautology/optimizable_predicate_spec.rb +3 -3
  201. data/spec/unit/axiom/optimizer/function/predicate/greater_than_or_equal_to/contradiction/optimizable_predicate_spec.rb +3 -3
  202. data/spec/unit/axiom/optimizer/function/predicate/greater_than_or_equal_to/tautology/optimizable_predicate_spec.rb +3 -3
  203. data/spec/unit/axiom/optimizer/function/predicate/inclusion/empty_right/optimize_spec.rb +7 -7
  204. data/spec/unit/axiom/optimizer/function/predicate/inclusion/one_right/optimize_spec.rb +9 -9
  205. data/spec/unit/axiom/optimizer/function/predicate/inequality/contradiction/optimizable_predicate_spec.rb +1 -1
  206. data/spec/unit/axiom/optimizer/function/predicate/less_than/contradiction/optimizable_predicate_spec.rb +3 -3
  207. data/spec/unit/axiom/optimizer/function/predicate/less_than/tautology/optimizable_predicate_spec.rb +3 -3
  208. data/spec/unit/axiom/optimizer/function/predicate/less_than_or_equal_to/contradiction/optimizable_predicate_spec.rb +3 -3
  209. data/spec/unit/axiom/optimizer/function/predicate/less_than_or_equal_to/tautology/optimizable_predicate_spec.rb +3 -3
  210. data/spec/unit/axiom/optimizer/function/predicate/tautology/optimize_spec.rb +1 -1
  211. data/spec/unit/axiom/optimizer/function/unary/constant_operand/optimize_spec.rb +1 -1
  212. data/spec/unit/axiom/optimizer/function/unary/operand_spec.rb +2 -2
  213. data/spec/unit/axiom/optimizer/function/unary/unoptimized_operand/optimize_spec.rb +1 -1
  214. data/spec/unit/axiom/optimizer/function/util/class_methods/max_spec.rb +2 -2
  215. data/spec/unit/axiom/optimizer/function/util/class_methods/min_spec.rb +2 -2
  216. data/spec/unit/axiom/optimizer/operation_spec.rb +2 -2
  217. data/spec/unit/axiom/optimizer/optimizable/class_methods/optimizer_spec.rb +3 -3
  218. data/spec/unit/axiom/optimizer/optimizable/optimize_spec.rb +7 -7
  219. data/spec/unit/axiom/optimizer/optimizable_predicate_spec.rb +2 -2
  220. data/spec/unit/axiom/optimizer/optimize_spec.rb +2 -2
  221. data/spec/unit/axiom/optimizer/predicate_partition/left_spec.rb +18 -18
  222. data/spec/unit/axiom/optimizer/predicate_partition/remainder_spec.rb +19 -19
  223. data/spec/unit/axiom/optimizer/predicate_partition/right_spec.rb +18 -18
  224. data/spec/unit/axiom/optimizer/relation/materialized/empty_operand/optimizable_predicate_spec.rb +3 -3
  225. data/spec/unit/axiom/optimizer/relation/materialized/empty_operand/optimize_spec.rb +5 -7
  226. data/spec/unit/axiom/optimizer/relation/operation/binary/empty_left/optimizable_predicate_spec.rb +4 -4
  227. data/spec/unit/axiom/optimizer/relation/operation/binary/empty_right/optimizable_predicate_spec.rb +4 -4
  228. data/spec/unit/axiom/optimizer/relation/operation/binary/equal_operands/optimizable_predicate_spec.rb +3 -3
  229. data/spec/unit/axiom/optimizer/relation/operation/binary/left_spec.rb +6 -6
  230. data/spec/unit/axiom/optimizer/relation/operation/binary/materialized_operands/optimizable_predicate_spec.rb +6 -6
  231. data/spec/unit/axiom/optimizer/relation/operation/binary/materialized_operands/optimize_spec.rb +7 -7
  232. data/spec/unit/axiom/optimizer/relation/operation/binary/order_left/optimizable_predicate_spec.rb +5 -5
  233. data/spec/unit/axiom/optimizer/relation/operation/binary/order_left/optimize_spec.rb +8 -8
  234. data/spec/unit/axiom/optimizer/relation/operation/binary/order_right/optimizable_predicate_spec.rb +5 -5
  235. data/spec/unit/axiom/optimizer/relation/operation/binary/order_right/optimize_spec.rb +8 -8
  236. data/spec/unit/axiom/optimizer/relation/operation/binary/right_spec.rb +6 -6
  237. data/spec/unit/axiom/optimizer/relation/operation/binary/unoptimized_operands/optimizable_predicate_spec.rb +4 -4
  238. data/spec/unit/axiom/optimizer/relation/operation/binary/unoptimized_operands/optimize_spec.rb +8 -8
  239. data/spec/unit/axiom/optimizer/relation/operation/combination/optimize_spec.rb +5 -7
  240. data/spec/unit/axiom/optimizer/relation/operation/limit/equal_limit_operand/optimizable_predicate_spec.rb +4 -4
  241. data/spec/unit/axiom/optimizer/relation/operation/limit/equal_limit_operand/optimize_spec.rb +6 -6
  242. data/spec/unit/axiom/optimizer/relation/operation/limit/limit_operand/optimizable_predicate_spec.rb +4 -4
  243. data/spec/unit/axiom/optimizer/relation/operation/limit/limit_operand/optimize_spec.rb +6 -6
  244. data/spec/unit/axiom/optimizer/relation/operation/limit/unoptimized_operand/optimizable_predicate_spec.rb +5 -5
  245. data/spec/unit/axiom/optimizer/relation/operation/limit/unoptimized_operand/optimize_spec.rb +6 -6
  246. data/spec/unit/axiom/optimizer/relation/operation/limit/zero_limit/optimizable_predicate_spec.rb +4 -4
  247. data/spec/unit/axiom/optimizer/relation/operation/limit/zero_limit/optimize_spec.rb +6 -8
  248. data/spec/unit/axiom/optimizer/relation/operation/offset/offset_operand/optimizable_predicate_spec.rb +4 -4
  249. data/spec/unit/axiom/optimizer/relation/operation/offset/offset_operand/optimize_spec.rb +5 -5
  250. data/spec/unit/axiom/optimizer/relation/operation/offset/unoptimized_operand/optimizable_predicate_spec.rb +5 -5
  251. data/spec/unit/axiom/optimizer/relation/operation/offset/unoptimized_operand/optimize_spec.rb +6 -6
  252. data/spec/unit/axiom/optimizer/relation/operation/offset/zero_offset/optimizable_predicate_spec.rb +4 -4
  253. data/spec/unit/axiom/optimizer/relation/operation/offset/zero_offset/optimize_spec.rb +5 -5
  254. data/spec/unit/axiom/optimizer/relation/operation/order/one_limit_operand/optimizable_predicate_spec.rb +4 -4
  255. data/spec/unit/axiom/optimizer/relation/operation/order/one_limit_operand/optimize_spec.rb +6 -6
  256. data/spec/unit/axiom/optimizer/relation/operation/order/order_operand/optimizable_predicate_spec.rb +4 -4
  257. data/spec/unit/axiom/optimizer/relation/operation/order/order_operand/optimize_spec.rb +6 -6
  258. data/spec/unit/axiom/optimizer/relation/operation/order/unoptimized_operand/optimizable_predicate_spec.rb +5 -5
  259. data/spec/unit/axiom/optimizer/relation/operation/order/unoptimized_operand/optimize_spec.rb +7 -7
  260. data/spec/unit/axiom/optimizer/relation/operation/reverse/order_operand/optimizable_predicate_spec.rb +4 -4
  261. data/spec/unit/axiom/optimizer/relation/operation/reverse/order_operand/optimize_spec.rb +7 -7
  262. data/spec/unit/axiom/optimizer/relation/operation/reverse/reverse_operand/optimizable_predicate_spec.rb +4 -4
  263. data/spec/unit/axiom/optimizer/relation/operation/reverse/reverse_operand/optimize_spec.rb +7 -7
  264. data/spec/unit/axiom/optimizer/relation/operation/reverse/unoptimized_operand/optimizable_predicate_spec.rb +4 -4
  265. data/spec/unit/axiom/optimizer/relation/operation/reverse/unoptimized_operand/optimize_spec.rb +7 -7
  266. data/spec/unit/axiom/optimizer/relation/operation/unary/empty_operand/optimizable_predicate_spec.rb +5 -5
  267. data/spec/unit/axiom/optimizer/relation/operation/unary/empty_operand/optimize_spec.rb +5 -5
  268. data/spec/unit/axiom/optimizer/relation/operation/unary/header_spec.rb +6 -6
  269. data/spec/unit/axiom/optimizer/relation/operation/unary/materialized_operand/optimizable_predicate_spec.rb +5 -5
  270. data/spec/unit/axiom/optimizer/relation/operation/unary/materialized_operand/optimize_spec.rb +5 -5
  271. data/spec/unit/axiom/optimizer/relation/operation/unary/operand_spec.rb +7 -7
  272. data/spec/unit/axiom/optimizer/relation/operation/unary/order_operand/optimizable_predicate_spec.rb +4 -4
  273. data/spec/unit/axiom/optimizer/relation/operation/unary/order_operand/optimize_spec.rb +6 -6
  274. data/spec/unit/axiom/optimizer/relation/operation/unary/unchanged_header/optimizable_predicate_spec.rb +5 -5
  275. data/spec/unit/axiom/optimizer/relation/operation/unary/unchanged_header/optimize_spec.rb +5 -5
  276. metadata +24 -289
  277. checksums.yaml +0 -7
  278. data/.gemtest +0 -0
  279. data/.rvmrc +0 -1
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Conjunction::TautologyRight, '#optimiz
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Conjunction)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Conjunction)
14
14
  end
15
15
 
16
16
  context 'when right is a tautology' do
@@ -12,8 +12,8 @@ describe Optimizer::Function::Connective::Conjunction::TautologyRight, '#optimiz
12
12
  let(:object) { described_class.new(connective) }
13
13
 
14
14
  before do
15
- object.should be_optimizable
15
+ expect(object).to be_optimizable
16
16
  end
17
17
 
18
- it { should equal(left) }
18
+ it { should be(left) }
19
19
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Disjunction::ContradictionLeft, '#opti
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Disjunction)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Disjunction)
14
14
  end
15
15
 
16
16
  context 'when right is a tautology' do
@@ -12,8 +12,8 @@ describe Optimizer::Function::Connective::Disjunction::ContradictionLeft, '#opti
12
12
  let(:object) { described_class.new(connective) }
13
13
 
14
14
  before do
15
- object.should be_optimizable
15
+ expect(object).to be_optimizable
16
16
  end
17
17
 
18
- it { should equal(right) }
18
+ it { should be(right) }
19
19
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Disjunction::ContradictionRight, '#opt
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Disjunction)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Disjunction)
14
14
  end
15
15
 
16
16
  context 'when right is a contradiction' do
@@ -12,8 +12,8 @@ describe Optimizer::Function::Connective::Disjunction::ContradictionRight, '#opt
12
12
  let(:object) { described_class.new(connective) }
13
13
 
14
14
  before do
15
- object.should be_optimizable
15
+ expect(object).to be_optimizable
16
16
  end
17
17
 
18
- it { should equal(left) }
18
+ it { should be(left) }
19
19
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Disjunction)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Disjunction)
14
14
  end
15
15
 
16
16
  context 'when the operands are optimizable' do
@@ -22,22 +22,22 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
22
22
  end
23
23
 
24
24
  context 'when the left is an equality predicate and the right is an inclusion predicate' do
25
- let(:left) { attribute.eq(2) }
26
- let(:right) { attribute.include([ 1, 3 ]) }
25
+ let(:left) { attribute.eq(2) }
26
+ let(:right) { attribute.include([1, 3]) }
27
27
 
28
28
  it { should be(true) }
29
29
  end
30
30
 
31
31
  context 'when the left is an inclusion predicate and the right is an equality predicate' do
32
- let(:left) { attribute.include([ 2, 3 ]) }
33
- let(:right) { attribute.eq(1) }
32
+ let(:left) { attribute.include([2, 3]) }
33
+ let(:right) { attribute.eq(1) }
34
34
 
35
35
  it { should be(true) }
36
36
  end
37
37
 
38
38
  context 'when the left and right are inclusion predicatess' do
39
- let(:left) { attribute.include([ 2, 3 ]) }
40
- let(:right) { attribute.include([ 1, 3 ]) }
39
+ let(:left) { attribute.include([2, 3]) }
40
+ let(:right) { attribute.include([1, 3]) }
41
41
 
42
42
  it { should be(true) }
43
43
  end
@@ -52,8 +52,8 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
52
52
  end
53
53
 
54
54
  context 'when the left is an exclusion predicate and the right is an equality predicate' do
55
- let(:left) { attribute.exclude([ 1, 3 ]) }
56
- let(:right) { attribute.eq(2) }
55
+ let(:left) { attribute.exclude([1, 3]) }
56
+ let(:right) { attribute.eq(2) }
57
57
 
58
58
  it { should be(false) }
59
59
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.should be_optimizable
13
+ expect(object).to be_optimizable
14
14
  end
15
15
 
16
16
  context 'when the right operands are optimizable' do
@@ -20,46 +20,46 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
20
20
 
21
21
  it { should be_kind_of(Function::Predicate::Inclusion) }
22
22
 
23
- its(:left) { should equal(attribute) }
23
+ its(:left) { should be(attribute) }
24
24
 
25
25
  # enumerable order is normalized
26
- its(:right) { should == [ 1, 2 ] }
26
+ its(:right) { should == [1, 2] }
27
27
  end
28
28
 
29
29
  context 'when the left is an equality predicate and the right is an inclusion predicate' do
30
- let(:left) { attribute.eq(2) }
31
- let(:right) { attribute.include([ 1 ]) }
30
+ let(:left) { attribute.eq(2) }
31
+ let(:right) { attribute.include([1]) }
32
32
 
33
33
  it { should be_kind_of(Function::Predicate::Inclusion) }
34
34
 
35
- its(:left) { should equal(attribute) }
35
+ its(:left) { should be(attribute) }
36
36
 
37
37
  # enumerable order is normalized
38
- its(:right) { should == [ 1, 2 ] }
38
+ its(:right) { should == [1, 2] }
39
39
  end
40
40
 
41
41
  context 'when the left is an inclusion predicate and the right is an equality predicate' do
42
- let(:left) { attribute.include([ 2 ]) }
43
- let(:right) { attribute.eq(1) }
42
+ let(:left) { attribute.include([2]) }
43
+ let(:right) { attribute.eq(1) }
44
44
 
45
45
  it { should be_kind_of(Function::Predicate::Inclusion) }
46
46
 
47
- its(:left) { should equal(attribute) }
47
+ its(:left) { should be(attribute) }
48
48
 
49
49
  # enumerable order is normalized
50
- its(:right) { should == [ 1, 2 ] }
50
+ its(:right) { should == [1, 2] }
51
51
  end
52
52
 
53
53
  context 'when the left and right are inclusion predicatess' do
54
- let(:left) { attribute.include([ 2 ]) }
55
- let(:right) { attribute.include([ 1 ]) }
54
+ let(:left) { attribute.include([2]) }
55
+ let(:right) { attribute.include([1]) }
56
56
 
57
57
  it { should be_kind_of(Function::Predicate::Inclusion) }
58
58
 
59
- its(:left) { should equal(attribute) }
59
+ its(:left) { should be(attribute) }
60
60
 
61
61
  # enumerable order is normalized
62
- its(:right) { should == [ 1, 2 ] }
62
+ its(:right) { should == [1, 2] }
63
63
  end
64
64
  end
65
65
 
@@ -69,8 +69,8 @@ describe Optimizer::Function::Connective::Disjunction::OptimizableToInclusion, '
69
69
 
70
70
  it { should be_kind_of(Function::Predicate::Inclusion) }
71
71
 
72
- its(:left) { should equal(attribute) }
72
+ its(:left) { should be(attribute) }
73
73
 
74
- its(:right) { should == [ 1, 2 ] }
74
+ its(:right) { should == [1, 2] }
75
75
  end
76
76
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Disjunction::Tautology, '#optimizable?
10
10
  let(:object) { described_class.new(connective) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Disjunction)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Disjunction)
14
14
  end
15
15
 
16
16
  context 'when left is a tautology' do
@@ -12,8 +12,8 @@ describe Optimizer::Function::Connective::Disjunction::Tautology, '#optimize' do
12
12
  let(:object) { described_class.new(connective) }
13
13
 
14
14
  before do
15
- object.should be_optimizable
15
+ expect(object).to be_optimizable
16
16
  end
17
17
 
18
- it { should equal(Function::Proposition::Tautology.instance) }
18
+ it { should be(Function::Proposition::Tautology.instance) }
19
19
  end
@@ -9,8 +9,8 @@ describe Optimizer::Function::Connective::Negation::ConstantOperand, '#optimize'
9
9
  let(:object) { described_class.new(negation) }
10
10
 
11
11
  before do
12
- object.should be_optimizable
12
+ expect(object).to be_optimizable
13
13
  end
14
14
 
15
- it { should equal(Function::Proposition::Tautology.instance) }
15
+ it { should be(Function::Proposition::Tautology.instance) }
16
16
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Connective::Negation::InvertibleOperand, '#optimiz
10
10
  let(:object) { described_class.new(negation) }
11
11
 
12
12
  before do
13
- object.operation.should be_kind_of(Function::Connective::Negation)
13
+ expect(object.operation).to be_kind_of(Function::Connective::Negation)
14
14
  end
15
15
 
16
16
  context 'when operand is invertible' do
@@ -11,12 +11,12 @@ describe Optimizer::Function::Connective::Negation::InvertibleOperand, '#optimiz
11
11
  let(:object) { described_class.new(negation) }
12
12
 
13
13
  before do
14
- object.should be_optimizable
14
+ expect(object).to be_optimizable
15
15
  end
16
16
 
17
17
  it { should be_kind_of(Function::Predicate::Inequality) }
18
18
 
19
- its(:left) { should equal(attribute) }
19
+ its(:left) { should be(attribute) }
20
20
 
21
21
  its(:right) { should == 1 }
22
22
  end
@@ -5,10 +5,10 @@ require 'spec_helper'
5
5
  describe Optimizer::Function::Connective::Negation, '#operand' do
6
6
  subject { object.operand }
7
7
 
8
- let(:optimized_operand) { mock('Optimized Operand') }
9
- let(:operand) { mock('Operand', :optimize => optimized_operand) }
10
- let(:negation) { mock('Negation', :operand => operand) }
11
- let(:object) { described_class.new(negation) }
8
+ let(:optimized_operand) { double('Optimized Operand') }
9
+ let(:operand) { double('Operand', optimize: optimized_operand) }
10
+ let(:negation) { double('Negation', operand: operand) }
11
+ let(:object) { described_class.new(negation) }
12
12
 
13
- it { should equal(optimized_operand) }
13
+ it { should be(optimized_operand) }
14
14
  end
@@ -13,7 +13,7 @@ describe Optimizer::Function::Predicate::Comparable::NeverComparable, '#optimiza
13
13
  before do
14
14
  described_class.class_eval { include Optimizer::Function::Predicate::Comparable::NeverComparable }
15
15
 
16
- predicate.should be_kind_of(Function::Predicate::Comparable)
16
+ expect(predicate).to be_kind_of(Function::Predicate::Comparable)
17
17
  end
18
18
 
19
19
  context 'when left is a constant and is valid' do
@@ -6,14 +6,14 @@ describe Optimizer::Function::Predicate::Comparable::NeverEquivalent, '#optimiza
6
6
  subject { object.optimizable? }
7
7
 
8
8
  let(:described_class) { Class.new(Optimizer::Function::Predicate) }
9
- let(:attribute) { Attribute::Integer.new(:id, :size => 1..10) }
9
+ let(:attribute) { Attribute::Integer.new(:id, size: 1..10) }
10
10
  let(:predicate) { Function::Predicate::Equality.new(left, right) }
11
11
  let(:object) { described_class.new(predicate) }
12
12
 
13
13
  before do
14
14
  described_class.class_eval { include Optimizer::Function::Predicate::Comparable::NeverEquivalent }
15
15
 
16
- predicate.should be_kind_of(Function::Predicate::Comparable)
16
+ expect(predicate).to be_kind_of(Function::Predicate::Comparable)
17
17
  end
18
18
 
19
19
  context 'when left is a constant and is valid' do
@@ -52,8 +52,8 @@ describe Optimizer::Function::Predicate::Comparable::NeverEquivalent, '#optimiza
52
52
  end
53
53
 
54
54
  context 'when left and right are not joinable' do
55
- let(:left) { attribute }
56
- let(:right) { Attribute::Integer.new(:id, :size => -10..0) }
55
+ let(:left) { attribute }
56
+ let(:right) { Attribute::Integer.new(:id, size: -10..0) }
57
57
 
58
58
  it { should be(true) }
59
59
  end
@@ -10,7 +10,7 @@ describe Optimizer::Function::Predicate::Comparable::NormalizableOperands, '#opt
10
10
  let(:object) { described_class.new(predicate) }
11
11
 
12
12
  before do
13
- predicate.should be_kind_of(Function::Predicate::Comparable)
13
+ expect(predicate).to be_kind_of(Function::Predicate::Comparable)
14
14
  end
15
15
 
16
16
  context 'when left and right is a constant' do
@@ -10,12 +10,12 @@ describe Optimizer::Function::Predicate::Comparable::NormalizableOperands, '#opt
10
10
  let(:object) { described_class.new(predicate) }
11
11
 
12
12
  before do
13
- object.should be_optimizable
13
+ expect(object).to be_optimizable
14
14
  end
15
15
 
16
16
  it { should be_kind_of(Function::Predicate::Equality) }
17
17
 
18
- its(:left) { should equal(attribute) }
18
+ its(:left) { should be(attribute) }
19
19
 
20
20
  its(:right) { should == 1 }
21
21
  end
@@ -9,8 +9,8 @@ describe Optimizer::Function::Predicate::ConstantOperands, '#optimize' do
9
9
  let(:object) { described_class.new(predicate) }
10
10
 
11
11
  before do
12
- object.should be_optimizable
12
+ expect(object).to be_optimizable
13
13
  end
14
14
 
15
- it { should equal(Function::Proposition::Tautology.instance) }
15
+ it { should be(Function::Proposition::Tautology.instance) }
16
16
  end
@@ -14,5 +14,5 @@ describe Optimizer::Function::Predicate::Contradiction, '#optimize' do
14
14
  described_class.class_eval { include Optimizer::Function::Predicate::Contradiction }
15
15
  end
16
16
 
17
- it { should equal(Function::Proposition::Contradiction.instance) }
17
+ it { should be(Function::Proposition::Contradiction.instance) }
18
18
  end
@@ -22,6 +22,6 @@ describe Optimizer::Function::Predicate::Enumerable, '.sort_by_value' do
22
22
  context 'when the value is an object' do
23
23
  let(:value) { Object.new }
24
24
 
25
- it { should equal(value) }
25
+ it { should be(value) }
26
26
  end
27
27
  end
@@ -5,15 +5,15 @@ require 'spec_helper'
5
5
  describe Optimizer::Function::Predicate::Enumerable::EmptyRight, '#optimizable?' do
6
6
  subject { object.optimizable? }
7
7
 
8
- let(:described_class) { Class.new(Optimizer::Function::Predicate) }
9
- let(:attribute) { Attribute::Integer.new(:id, :size => 1..9) }
10
- let(:predicate) { attribute.include(operand) }
11
- let(:object) { described_class.new(predicate) }
8
+ let(:described_class) { Class.new(Optimizer::Function::Predicate) }
9
+ let(:attribute) { Attribute::Integer.new(:id, size: 1..9) }
10
+ let(:predicate) { attribute.include(operand) }
11
+ let(:object) { described_class.new(predicate) }
12
12
 
13
13
  before do
14
14
  described_class.class_eval { include Optimizer::Function::Predicate::Enumerable::EmptyRight }
15
15
 
16
- predicate.should be_kind_of(Function::Predicate::Enumerable)
16
+ expect(predicate).to be_kind_of(Function::Predicate::Enumerable)
17
17
  end
18
18
 
19
19
  context 'when the operand contains a nil' do
@@ -41,13 +41,13 @@ describe Optimizer::Function::Predicate::Enumerable::EmptyRight, '#optimizable?'
41
41
  end
42
42
 
43
43
  context 'when the operand is empty after filtering invalid entries' do
44
- let(:operand) { [ 'a' ] }
44
+ let(:operand) { ['a'] }
45
45
 
46
46
  it { should be(true) }
47
47
  end
48
48
 
49
49
  context 'when the operand contains an not empty Enumerable' do
50
- let(:operand) { [ 1 ] }
50
+ let(:operand) { [1] }
51
51
 
52
52
  it { should be(false) }
53
53
  end
@@ -65,7 +65,7 @@ describe Optimizer::Function::Predicate::Enumerable::EmptyRight, '#optimizable?'
65
65
  end
66
66
 
67
67
  context 'when the operand is not empty after filtering invalid entries' do
68
- let(:operand) { [ 'a', 1 ] }
68
+ let(:operand) { ['a', 1] }
69
69
 
70
70
  it { should be(false) }
71
71
  end
@@ -13,11 +13,11 @@ describe Optimizer::Function::Predicate::Enumerable::OneRight, '#optimizable?' d
13
13
  before do
14
14
  described_class.class_eval { include Optimizer::Function::Predicate::Enumerable::OneRight }
15
15
 
16
- predicate.should be_kind_of(Function::Predicate::Enumerable)
16
+ expect(predicate).to be_kind_of(Function::Predicate::Enumerable)
17
17
  end
18
18
 
19
19
  context 'when the operand contains a one entry Enumerable' do
20
- let(:operand) { [ 1 ] }
20
+ let(:operand) { [1] }
21
21
 
22
22
  it { should be(true) }
23
23
  end
@@ -35,19 +35,19 @@ describe Optimizer::Function::Predicate::Enumerable::OneRight, '#optimizable?' d
35
35
  end
36
36
 
37
37
  context 'when the operand contains one entry after filtering invalid entries' do
38
- let(:operand) { [ 'a', 1 ] }
38
+ let(:operand) { ['a', 1] }
39
39
 
40
40
  it { should be(true) }
41
41
  end
42
42
 
43
43
  context 'when the operand contains one entry after filtering duplicate entries' do
44
- let(:operand) { [ 1, 1 ] }
44
+ let(:operand) { [1, 1] }
45
45
 
46
46
  it { should be(true) }
47
47
  end
48
48
 
49
49
  context 'when the operand contains a more than one entry Enumerable' do
50
- let(:operand) { [ 2, 1 ] }
50
+ let(:operand) { [2, 1] }
51
51
 
52
52
  it { should be(false) }
53
53
  end
@@ -65,13 +65,13 @@ describe Optimizer::Function::Predicate::Enumerable::OneRight, '#optimizable?' d
65
65
  end
66
66
 
67
67
  context 'when the operand contains more than one entry after filtering invalid entries' do
68
- let(:operand) { [ 'a', 1, 2 ] }
68
+ let(:operand) { ['a', 1, 2] }
69
69
 
70
70
  it { should be(false) }
71
71
  end
72
72
 
73
73
  context 'when the operand contains more than one entry after filtering duplicate entries' do
74
- let(:operand) { [ 2, 1, 2, 1 ] }
74
+ let(:operand) { [2, 1, 2, 1] }
75
75
 
76
76
  it { should be(false) }
77
77
  end