022-version.cpp 963 B

1234567891011121314151617181920212223242526272829303132
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. // SPDX-FileCopyrightText: 2024 Ivan Baidakou
  3. #include "test-utils.h"
  4. #include "model/version.h"
  5. using namespace syncspirit;
  6. using namespace syncspirit::model;
  7. TEST_CASE("version ", "[model]") {
  8. auto my_id = device_id_t::from_string("KHQNO2S-5QSILRK-YX4JZZ4-7L77APM-QNVGZJT-EKU7IFI-PNEPBMY-4MXFMQD").value();
  9. auto my_device = device_t::create(my_id, "my-device").value();
  10. auto proto_v = proto::Vector();
  11. auto c0 = proto_v.mutable_counters()->Add();
  12. c0->set_id(1);
  13. c0->set_value(2);
  14. auto c1 = proto_v.mutable_counters()->Add();
  15. c1->set_id(my_device->device_id().get_uint());
  16. c1->set_value(10);
  17. auto v1 = version_ptr_t(new version_t(proto_v));
  18. auto v1_copy = version_ptr_t(new version_t(proto_v));
  19. v1->update(*my_device);
  20. CHECK(v1->contains(*v1_copy));
  21. CHECK(v1->contains(*v1));
  22. CHECK(!v1_copy->contains(*v1));
  23. CHECK(v1_copy->contains(*v1_copy));
  24. }