blob: 453334af26c5b30d66c447c9eaabd6dfd8cd94ce [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2017 protos software gmbh (http://www.protos.de).
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* CONTRIBUTORS:
* Henrik Rentz-Reichert (initial contribution)
*
*******************************************************************************/
#include "PairTest.h"
#include "common/containers/Pair.h"
#include "common/containers/String.h"
#include "util/etAssert.h"
using namespace etRuntime;
void PairTest::testConstructors(void) {
Pair<int, int> p1;
EXPECT_EQUAL_INT32(m_caseId, "p1.first", 0, p1.first);
EXPECT_EQUAL_INT32(m_caseId, "p1.second", 0, p1.second);
Pair<int, int> p2(1, 2);
EXPECT_EQUAL_INT32(m_caseId, "p1.first", 1, p2.first);
EXPECT_EQUAL_INT32(m_caseId, "p1.second", 2, p2.second);
Pair<int, String> p3;
EXPECT_EQUAL_INT32(m_caseId, "p1.first", 0, p3.first);
EXPECT_TRUE(m_caseId, "p1.second", p3.second=="");
Pair<int, String> p4(123, "pair");
EXPECT_EQUAL_INT32(m_caseId, "p1.first", 123, p4.first);
EXPECT_TRUE(m_caseId, "p1.second", p4.second=="pair");
}
void PairTest::testOperators(void) {
Pair<int, int> p1(2,2), p2(1, 1);
EXPECT_TRUE(m_caseId, "p1>p2", p1>p2);
EXPECT_TRUE(m_caseId, "!p1<p2", !(p1<p2));
EXPECT_TRUE(m_caseId, "p1!=p2", p1!=p2);
p1.first = 1;
EXPECT_TRUE(m_caseId, "p1>p2", p1>p2);
EXPECT_TRUE(m_caseId, "!p1<p2", !(p1<p2));
EXPECT_TRUE(m_caseId, "p1!=p2", p1!=p2);
p1.second = 1;
EXPECT_TRUE(m_caseId, "!p1>p2", !(p1>p2));
EXPECT_TRUE(m_caseId, "!p1<p2", !(p1<p2));
EXPECT_TRUE(m_caseId, "p1>=p2", p1>=p2);
EXPECT_TRUE(m_caseId, "p1<=p2", p1<=p2);
EXPECT_TRUE(m_caseId, "p1==p2", p1==p2);
}
void PairTest::runAllTestCases() {
ADD_TESTCASE_CPP(testConstructors)
ADD_TESTCASE_CPP(testOperators)
}