First few test cases
This commit is contained in:
parent
9ce7e4ed96
commit
1b7b25e09e
6 changed files with 95 additions and 51 deletions
|
@ -6,8 +6,9 @@ CONFIG -= app_bundle
|
|||
|
||||
TEMPLATE = app
|
||||
|
||||
SOURCES += tst_testcasename.cpp \
|
||||
fraction.cpp
|
||||
SOURCES += \
|
||||
fraction.cpp \
|
||||
tst_fractiontest.cpp
|
||||
|
||||
HEADERS += \
|
||||
fraction.hpp
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 4.12.3, 2021-09-17T11:54:22. -->
|
||||
<!-- Written by QtCreator 4.12.3, 2021-09-17T12:29:53. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
|
@ -54,7 +54,24 @@
|
|||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.PluginSettings</variable>
|
||||
<valuemap type="QVariantMap"/>
|
||||
<valuemap type="QVariantMap">
|
||||
<valuelist type="QVariantList" key="ClangCodeModel.CustomCommandLineKey">
|
||||
<value type="QString">-fno-delayed-template-parsing</value>
|
||||
</valuelist>
|
||||
<value type="bool" key="ClangCodeModel.UseGlobalConfig">true</value>
|
||||
<value type="QString" key="ClangCodeModel.WarningConfigId">Builtin.Questionable</value>
|
||||
<valuemap type="QVariantMap" key="ClangTools">
|
||||
<value type="bool" key="ClangTools.BuildBeforeAnalysis">true</value>
|
||||
<value type="QString" key="ClangTools.DiagnosticConfig">Builtin.DefaultTidyAndClazy</value>
|
||||
<value type="int" key="ClangTools.ParallelJobs">2</value>
|
||||
<valuelist type="QVariantList" key="ClangTools.SelectedDirs">
|
||||
<value type="QString">C:/Users/$5NP000-N4QVBFC8R26B/Documents/FractionTask/FractionTask.pro</value>
|
||||
</valuelist>
|
||||
<valuelist type="QVariantList" key="ClangTools.SelectedFiles"/>
|
||||
<valuelist type="QVariantList" key="ClangTools.SuppressedDiagnostics"/>
|
||||
<value type="bool" key="ClangTools.UseGlobalSettings">true</value>
|
||||
</valuemap>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.Target.0</variable>
|
||||
|
@ -293,19 +310,19 @@
|
|||
</valuelist>
|
||||
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/$5NP000-N4QVBFC8R26B/Documents/FractionTask/FractionTask.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">C:/Users/$5NP000-N4QVBFC8R26B/Documents/FractionTask/FractionTask.pro</value>
|
||||
<value type="QString" key="RunConfiguration.Arguments"></value>
|
||||
<value type="bool" key="RunConfiguration.Arguments.multi">false</value>
|
||||
<value type="QString" key="RunConfiguration.OverrideDebuggerStartup"></value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
|
||||
<value type="QString" key="RunConfiguration.WorkingDirectory"></value>
|
||||
<value type="QString" key="RunConfiguration.WorkingDirectory.default"></value>
|
||||
<value type="QString" key="RunConfiguration.WorkingDirectory.default">C:/Users/$5NP000-N4QVBFC8R26B/Documents/build-FractionTask-Desktop_Qt_5_15_0_MinGW_64_bit-Debug</value>
|
||||
</valuemap>
|
||||
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
|
||||
</valuemap>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#include "fraction.h"
|
||||
#include "fraction.hpp"
|
||||
|
||||
Fraction::Fraction()
|
||||
{
|
||||
|
||||
}
|
||||
|
|
|
@ -1,11 +1,7 @@
|
|||
#ifndef FRACTION_H
|
||||
#define FRACTION_H
|
||||
|
||||
#pragma once
|
||||
|
||||
class Fraction
|
||||
{
|
||||
public:
|
||||
Fraction();
|
||||
Fraction(int, int);
|
||||
};
|
||||
|
||||
#endif // FRACTION_H
|
||||
|
|
66
tst_fractiontest.cpp
Normal file
66
tst_fractiontest.cpp
Normal file
|
@ -0,0 +1,66 @@
|
|||
#include <QtTest>
|
||||
|
||||
#include "fraction.hpp"
|
||||
|
||||
class FractionTest : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
FractionTest();
|
||||
~FractionTest();
|
||||
|
||||
private slots:
|
||||
void test_constructor();
|
||||
void test_equivalence();
|
||||
};
|
||||
|
||||
FractionTest::FractionTest()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
FractionTest::~FractionTest()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void FractionTest::test_constructor()
|
||||
{
|
||||
Fraction f1 = Fraction(1, 2);
|
||||
QVERIFY(f1 == 0.5f);
|
||||
QVERIFY(f1 == 0.5);
|
||||
QVERIFY(f1.numerator() == 1);
|
||||
QVERIFY(f1.denominator() == 2);
|
||||
|
||||
Fraction f2 = Fraction(2,4);
|
||||
QVERIFY(f1 == f2);
|
||||
QVERIFY(f2 == 0.5f);
|
||||
QVERIFY(f2 == 0.5);
|
||||
QVERIFY(f2.numerator() == 1);
|
||||
QVERIFY(f2.denominator() == 2);
|
||||
}
|
||||
|
||||
void FractionTest::test_equivalence()
|
||||
{
|
||||
Fraction f1 = Fraction(1, 1);
|
||||
Fraction f2 = Fraction(1, 1);
|
||||
QVERIFY(f1 == f2);
|
||||
|
||||
QVERIFY(f1 == 1);
|
||||
QVERIFY(f1 == 1.0);
|
||||
QVERIFY(f1 == 1.0f);
|
||||
|
||||
QVERIFY(f2 == 1);
|
||||
QVERIFY(f2 == 1.0);
|
||||
QVERIFY(f2 == 1.0f);
|
||||
|
||||
Fraction f3 = Fraction(2, 3);
|
||||
QVERIFY(f3 != 1);
|
||||
QVERIFY(f3 != 1.0);
|
||||
QVERIFY(f3 != 1.0f);
|
||||
}
|
||||
|
||||
QTEST_APPLESS_MAIN(FractionTest)
|
||||
|
||||
#include "tst_fractiontest.moc"
|
|
@ -1,35 +0,0 @@
|
|||
#include <QtTest>
|
||||
|
||||
// add necessary includes here
|
||||
|
||||
class TestCaseName : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestCaseName();
|
||||
~TestCaseName();
|
||||
|
||||
private slots:
|
||||
void test_case1();
|
||||
|
||||
};
|
||||
|
||||
TestCaseName::TestCaseName()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TestCaseName::~TestCaseName()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void TestCaseName::test_case1()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QTEST_APPLESS_MAIN(TestCaseName)
|
||||
|
||||
#include "tst_testcasename.moc"
|
Reference in a new issue