Test Field
This commit is contained in:
parent
132be3fd8b
commit
537c326510
|
@ -24,8 +24,10 @@ set(TEST_HEADER_FILES
|
|||
)
|
||||
set(TEST_SRC_FILES
|
||||
tests/cppunit.cpp
|
||||
tests/utils.h
|
||||
tests/passwordfiletests.cpp
|
||||
tests/entrytests.cpp
|
||||
tests/fieldtests.cpp
|
||||
tests/opensslrandomdevice.cpp
|
||||
)
|
||||
|
||||
|
|
|
@ -1,22 +1,9 @@
|
|||
#include "../io/cryptoexception.h"
|
||||
#include "../io/entry.h"
|
||||
#include "../io/passwordfile.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
#include <c++utilities/misc/traits.h>
|
||||
|
||||
namespace TestUtilities {
|
||||
|
||||
inline std::ostream &operator<<(std::ostream &out, const Io::Entry *entry)
|
||||
{
|
||||
return out << ConversionUtilities::joinStrings(entry->path(), "/");
|
||||
}
|
||||
|
||||
} // namespace TestUtilities
|
||||
|
||||
using namespace TestUtilities;
|
||||
#include "./utils.h"
|
||||
|
||||
#include <c++utilities/tests/testutils.h>
|
||||
using namespace TestUtilities;
|
||||
|
||||
#include <cppunit/TestFixture.h>
|
||||
#include <cppunit/extensions/HelperMacros.h>
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
#include "../io/entry.h"
|
||||
#include "../io/field.h"
|
||||
|
||||
#include "./utils.h"
|
||||
|
||||
#include <c++utilities/tests/testutils.h>
|
||||
using namespace TestUtilities;
|
||||
|
||||
#include <cppunit/TestFixture.h>
|
||||
#include <cppunit/extensions/HelperMacros.h>
|
||||
|
||||
using namespace std;
|
||||
using namespace Io;
|
||||
using namespace TestUtilities::Literals;
|
||||
|
||||
using namespace CPPUNIT_NS;
|
||||
|
||||
/*!
|
||||
* \brief The FieldTests class tests the Io::Field class.
|
||||
*/
|
||||
class FieldTests : public TestFixture {
|
||||
CPPUNIT_TEST_SUITE(FieldTests);
|
||||
CPPUNIT_TEST(testNewFieldCorrectlyInitialized);
|
||||
CPPUNIT_TEST(testMutation);
|
||||
CPPUNIT_TEST_SUITE_END();
|
||||
|
||||
public:
|
||||
void setUp();
|
||||
void tearDown();
|
||||
|
||||
void testNewFieldCorrectlyInitialized();
|
||||
void testMutation();
|
||||
};
|
||||
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION(FieldTests);
|
||||
|
||||
void FieldTests::setUp()
|
||||
{
|
||||
}
|
||||
|
||||
void FieldTests::tearDown()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Tests whether a new field is correctly initialized (default values set).
|
||||
*/
|
||||
void FieldTests::testNewFieldCorrectlyInitialized()
|
||||
{
|
||||
AccountEntry account("account");
|
||||
const Field emptyField(&account);
|
||||
CPPUNIT_ASSERT(emptyField.isEmpty());
|
||||
|
||||
const Field field(&account, "foo", "bar");
|
||||
CPPUNIT_ASSERT(!field.isEmpty());
|
||||
CPPUNIT_ASSERT_EQUAL(&account, field.tiedAccount());
|
||||
CPPUNIT_ASSERT_EQUAL("foo"s, field.name());
|
||||
CPPUNIT_ASSERT_EQUAL("bar"s, field.value());
|
||||
CPPUNIT_ASSERT_EQUAL(FieldType::Normal, field.type());
|
||||
}
|
||||
|
||||
void FieldTests::testMutation()
|
||||
{
|
||||
AccountEntry account("account");
|
||||
Field field(&account, "foo", "bar");
|
||||
field.setName("bar");
|
||||
field.setValue("foo");
|
||||
field.setType(FieldType::Password);
|
||||
CPPUNIT_ASSERT_EQUAL("bar"s, field.name());
|
||||
CPPUNIT_ASSERT_EQUAL("foo"s, field.value());
|
||||
CPPUNIT_ASSERT_EQUAL(FieldType::Password, field.type());
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
#ifndef PASSWORDFILE_TESTS_UTILS_H
|
||||
#define PASSWORDFILE_TESTS_UTILS_H
|
||||
|
||||
#include "../io/entry.h"
|
||||
#include "../io/field.h"
|
||||
|
||||
#include <c++utilities/conversion/stringconversion.h>
|
||||
#include <c++utilities/misc/traits.h>
|
||||
|
||||
#include <ostream>
|
||||
|
||||
namespace TestUtilities {
|
||||
|
||||
inline std::ostream &operator<<(std::ostream &out, const Io::Entry *entry)
|
||||
{
|
||||
return out << ConversionUtilities::joinStrings(entry->path(), "/");
|
||||
}
|
||||
|
||||
inline std::ostream &operator<<(std::ostream &out, const Io::Field *field)
|
||||
{
|
||||
return out << field->name() << '=' << field->value();
|
||||
}
|
||||
|
||||
} // namespace TestUtilities
|
||||
|
||||
#endif // PASSWORDFILE_TESTS_UTILS_H
|
Loading…
Reference in New Issue