 
   describe "appending multiplication", ->
     it_plays_manipulation_role (test)->
-      test.manip.append_multiplication.build()
+      @manip.append_multiplication.build()
 
     it "adds multiplication to the end of the expression", ->
       exp = @exp_builder(1)


    it_inserts_component_into_the_last_nested_open_expression(
      name: 'multiplication'
      manipulator: (test)-> test.manip.append_multiplication.build()
      should_equal_after: (builder)-> builder(open_expression: {open_expression: ['*']}))


  describe "appending addition", ->
    it_plays_manipulation_role (test)->
      test.manip.append_addition.build()

    it "adds addition to the end of the expression", ->
      exp = @exp_builder(1)

it_plays_manipulation_role = (subject, math)->
  describe "acting as an expression manipulation", ->
    beforeEach ->
      @subject = subject.call(@)

    it "has an invoke method", ->
      expect(typeof @subject.invoke).toEqual "function"
