/** * @file spitRepoTest.cpp * @author Gustice * @brief */ #include "doctest/doctest.h" #include #include #include "spit_object.hpp" using namespace spit; using namespace std; class SpitObjectFix { protected: }; TEST_CASE_FIXTURE(SpitObjectFix, "Typical use case") { { SObject sut("#Id#123"); CHECK(sut.getID() == "#Id#123"); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.Name.set("G123") == true); CHECK(sut.Name.get() == "G123"); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.Name.set("G123") == false); CHECK(sut.getConfirmed() == true); CHECK(sut.Name.set("G321") == true); CHECK(sut.Name.get() == "G321"); CHECK(sut.getConfirmed() == false); } { SObject sut("#Id#123"); CHECK(sut.getID() == "#Id#123"); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.Fixed.set(true) == true); CHECK(sut.Fixed.get() == true); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.Fixed.set(true) == false); CHECK(sut.getConfirmed() == true); CHECK(sut.Fixed.set(false) == true); CHECK(sut.Fixed.get() == false); CHECK(sut.getConfirmed() == false); } { SObject sut("#Id#123"); CHECK(sut.getID() == "#Id#123"); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.FrameLength.set(123) == true); CHECK(sut.FrameLength.get() == 123); CHECK(sut.getConfirmed() == false); sut.setConfirmed(true); CHECK(sut.getConfirmed() == true); CHECK(sut.FrameLength.set(123) == false); CHECK(sut.getConfirmed() == true); CHECK(sut.FrameLength.set(321) == true); CHECK(sut.FrameLength.get() == 321); CHECK(sut.getConfirmed() == false); } // ... // { // SObject sut("#Id#123", "grp123", "name123", true, false, 1234, 4321); // CHECK(sut.getID() == "#Id#123"); // CHECK(sut.GroupName.get() == "grp123"); // CHECK(sut.Name.get() == "name123"); // CHECK(sut.Fixed.get() == true); // CHECK(sut.ProjectIndepended.get() == false); // CHECK(sut.DefaultDelay.get() == 1234); // CHECK(sut.DefaultDuration.get() == 4321); // } }