query/test/core/utils/FieldAttributeTest.cpp

32 lines
849 B
C++

#include <catch2/catch_test_macros.hpp>
#include "matador/utils/field_attributes.hpp"
using namespace matador::utils;
TEST_CASE("Test field attribute", "[field-attribute]") {
field_attributes attr;
REQUIRE(attr.size() == 0);
REQUIRE(attr.options() == constraints::NONE);
attr = 255;
REQUIRE(attr.size() == 255);
REQUIRE(attr.options() == constraints::NONE);
attr = constraints::INDEX;
REQUIRE(attr.size() == 0);
REQUIRE(attr.options() == constraints::INDEX);
attr = { 255, constraints::DEFAULT };
REQUIRE(attr.size() == 255);
REQUIRE(attr.options() == constraints::DEFAULT);
field_attributes attr2{255};
REQUIRE(attr2.size() == 255);
REQUIRE(attr2.options() == constraints::NONE);
field_attributes attr3{constraints::UNIQUE};
REQUIRE(attr3.size() == 0);
REQUIRE(attr3.options() == constraints::UNIQUE);
}