| using System; | 
 | using System.Text; | 
 | using System.Collections.Generic; | 
 | using System.Linq; | 
 | using Microsoft.VisualStudio.TestTools.UnitTesting; | 
 | using OfficeOpenXml.FormulaParsing; | 
 | using Rhino.Mocks; | 
 |  | 
 | namespace EPPlusTest.FormulaParsing.IntegrationTests | 
 | { | 
 |     [TestClass] | 
 |     public class PrecedenceTests : FormulaParserTestBase | 
 |     { | 
 |  | 
 |         [TestInitialize] | 
 |         public void Setup() | 
 |         { | 
 |             var excelDataProvider = MockRepository.GenerateStub<ExcelDataProvider>(); | 
 |             _parser = new FormulaParser(excelDataProvider); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void ShouldCaluclateUsingPrecedenceMultiplyBeforeAdd() | 
 |         { | 
 |             var result = _parser.Parse("4 + 6 * 2"); | 
 |             Assert.AreEqual(16d, result); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void ShouldCaluclateUsingPrecedenceDivideBeforeAdd() | 
 |         { | 
 |             var result = _parser.Parse("4 + 6 / 2"); | 
 |             Assert.AreEqual(7d, result); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void ShouldCalculateTwoGroupsUsingDivideAndMultiplyBeforeSubtract() | 
 |         { | 
 |             var result = _parser.Parse("4/2 + 3 * 3"); | 
 |             Assert.AreEqual(11d, result); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void ShouldCalculateExpressionWithinParenthesisBeforeMultiply() | 
 |         { | 
 |             var result = _parser.Parse("(2+4) * 2"); | 
 |             Assert.AreEqual(12d, result); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void ShouldConcatAfterAdd() | 
 |         { | 
 |             var result = _parser.Parse("2 + 4 & \"abc\""); | 
 |             Assert.AreEqual("6abc", result); | 
 |         } | 
 |  | 
 |         [TestMethod] | 
 |         public void Bugfixtest() | 
 |         { | 
 |             var result = _parser.Parse("(1+2)+3^2"); | 
 |         } | 
 |     } | 
 | } |