       expect(new_exp).toBeAnEqualExpressionTo @exp_builder([])
 
     it "correctly handles nested open subexpressions", ->
-      exp = @exp_builder(open_expression: {open_expression: []})
+      exp = @exp_builder(open_expression: {open_expression: null})
       new_exp = @manip.close_sub_expression.build().invoke(exp)
-
       expected = @exp_builder(open_expression: [[]])
-
       expect(new_exp).toBeAnEqualExpressionTo expected
-
 
   describe "appending multiplication", ->
     it_plays_manipulation_role (test)->

        expected = @exp_builder(open_expression: {open_expression: [8]})
        expect(exp).toBeAnEqualExpressionTo expected

    describe "when the manipulation to be manipulated has an exponentiation as its last element", ->
      describe "with no power", ->
        beforeEach ->
          @exp = @exp_builder('^': [10, null])

        it "inserts the number into the exponentiation", ->
          new_exp = @manip.append_number.build(value: 11).invoke(@exp)

          expected = @exp_builder('^': [10, {open_expression: 11}])
          expect(new_exp).toBeAnEqualExpressionTo expected



    describe "on an expression that has a trailing exponent", ->
      it "manipulates expression correctly", ->
        exp = @exp_builder('^': [10, {open_expression: null}])
        new_exp = @manip.exponentiate_last.build().invoke(exp)
        expected = @exp_builder('^': [10, {open_expression: null}])
        expect(new_exp).toBeAnEqualExpressionTo expected

  describe "append number", ->
