#include "fiko/cekirdek/surum.hpp" #include "fiko_test.hpp" using namespace fiko; FIKO_TEST(surum_karsilastir) { FIKO_KONTROL(surumKarsilastir(Surum{0, 6, 0}, Surum{0, 5, 0}) > 0); FIKO_KONTROL(surumKarsilastir(Surum{0, 5, 0}, Surum{0, 5, 0}) == 0); FIKO_KONTROL(surumKarsilastir(Surum{0, 5, 0}, Surum{0, 5, 1}) < 0); FIKO_KONTROL(surumKarsilastir(Surum{1, 0, 0}, Surum{0, 9, 9}) > 0); // major baskın FIKO_KONTROL(surumKarsilastir(Surum{0, 5, 2}, Surum{0, 6, 0}) < 0); // minor baskın } FIKO_TEST(surum_ayristir) { Surum s = surumAyristir("1.2.3"); FIKO_KONTROL(s.buyuk == 1 && s.kucuk == 2 && s.yama == 3); // Sürüm-sonu ek (ör. "-beta") tolere edilir. Surum b = surumAyristir("0.6.0-beta"); FIKO_KONTROL(b.buyuk == 0 && b.kucuk == 6 && b.yama == 0); // Eksik alanlar 0. Surum e = surumAyristir("2"); FIKO_KONTROL(e.buyuk == 2 && e.kucuk == 0 && e.yama == 0); } FIKO_TEST(surum_yerel_metin_tutarli) { // SURUM_METIN ile yerelSurum() aynı üçlüyü vermeli (tek kaynak tutarlılığı). FIKO_KONTROL(surumKarsilastir(surumAyristir(SURUM_METIN), yerelSurum()) == 0); }