#include "../conversionmathformula.h" #include "gtest/gtest.h" TEST(SMConvectorTest,IndexUpperLower) { std::wstring wsString = L"2^{ 1} _{ 3}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"231"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,LsupLsub) { std::wstring wsString = L"{ 1} LSUP { 2} LSUB { 3}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"321"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,UnderOver) { std::wstring wsString = L"UNDEROVER { 5} _{ 6} ^{ 7}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"576"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,VecUnder) { std::wstring wsString = L"vec { 1} under { 2}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"12"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,BarHat) { std::wstring wsString = L"bar { 5} hat { 6}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"56"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,SqrtRoot) { std::wstring wsString = L"sqrt {2} root {5} of {10}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"2510"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Over) { std::wstring wsString = L"{ 5} over {10 }"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"510"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,SumProdCoprod) { std::wstring wsString = L"sum _{ 1} ^{ 2} 3 PROD _{ 4} ^{5 } 6 COPROD _{ 7} ^{ 8} 9"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"123456789"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,BigPlusBigUplus) { std::wstring wsString = L"BIGOPLUS _{ 1} ^{2 } 3 BIGUPLUS _{ 5} ^{10 } 15"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"21310515"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Tint) { std::wstring wsString = L"tint _{{2} over {3}} ^{4} {root {5} of {10}}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"234510"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Otint) { std::wstring wsString = L"otint _{ 1} ^{ 2} { 3}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"123"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,RelAndBuildrelArrow) { std::wstring wsString = L"REL LRARROW { 1} { 2} REL EXARROW { 3} { 4} BUILDREL rarrow { 5} { 6}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"123456"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,LimLimlow) { std::wstring wsString = L"Lim _{ ->inf} { 2} lim _{ ->0} { 5}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"Lim2lim05"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,LfloorSquare) { std::wstring wsString = L"LEFT [ { 1} over { 2} RIGHT ] LFLOOR sum _{ 1} ^{ 2} RFLOOR"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"1212"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Cases) { std::wstring wsString = L"cases{ 1& 2# 3& 4}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"1234"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Lline) { std::wstring wsString = L"LEFT | 1 RIGHT | 2 + 3"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"12+3"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Arrow) { std::wstring wsString = L"larrow UPARROW NWARROW MAPSTO DLINE"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L""; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Overbrace) { std::wstring wsString = L"OVERBRACE { 1} { 2}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"12"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Underbrace) { std::wstring wsString = L"UNDERBRACE { 5} {10 }"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"105"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Pile) { std::wstring wsString = L"pile{ 1 over 2 # 2}"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"122"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Pmatrix) { std::wstring wsString = L"pmatrix { 1& 2#3 &4 }"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"1234"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,Bmatrix) { std::wstring wsString = L"bmatrix { 1&2 &3 # 4& 6&5 # 7& 8&9 }"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"123465789"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,GreekSymbols) { std::wstring wsString = L"ALPHA ETA NU TAU PSI"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"ΑΗΝΤΨ"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,GreekSymbolsSmall) { std::wstring wsString = L"epsilon iota nu rho phi"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"εινρφ"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } TEST(SMConvectorTest,MathOperatorSymbols) { std::wstring wsString = L"+- DEG BECAUSE REIMAGE ASYMP FORALL LNOT DAGGER"; StarMath::CStarMathConverter oConverterStarMath; std::wstring wsXmlString = L"±°¬"; EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); } // TEST(SMConvectorTest,AttributeMatrix) // { // std::wstring wsString = L""; // StarMath::CStarMathConverter oConverterStarMath; // // // std::wstring wsXmlString = L""; // EXPECT_EQ(oConverterStarMath.ConvertEQNToOOXml(wsString),wsXmlString); // }