Guest User

Untitled

a guest
Jul 21st, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1.  
  2. ## spec that fails
  3.  
  4. describe "#destroy_if_empty!" do
  5. before(:each) do
  6. @clause = AndClause.build_clause
  7. end
  8.  
  9. it "should call #destroy if there are sub_expressions.empty?" do
  10. @or_clause = OrClause.new(:parent => Condition.new)
  11. @clause.parent = @or_clause
  12. @clause.save
  13. @clause.condition_predicates = []
  14. @clause.or_clauses = []
  15. @clause.should_receive(:destroy)
  16. require "rubygems"; require "ruby-debug"; debugger
  17. @clause.destroy_if_empty!
  18.  
  19. @clause.should be_destroyed
  20. @or_clause.should be_destroyed
  21. end
  22. end
  23.  
  24. ## class method for AndClause
  25.  
  26. class AndClause < ConditionClause
  27. ...
  28. def sub_expressions
  29. condition_predicates + or_clauses
  30. end
  31.  
  32. def destroy_if_empty!
  33. if sub_expressions.empty?
  34. self.destroy
  35. end
  36. end
  37. ...
  38. end
Add Comment
Please, Sign In to add comment