Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <ept/test.h>
00020 #include <ept/apt/version.h>
00021
00022 using namespace std;
00023 using namespace ept::apt;
00024
00025 struct TestAptVersion {
00026
00027
00028 Test invalid()
00029 {
00030 Version test;
00031
00032 assert_eq(test.name(), "");
00033 assert_eq(test.version(), "");
00034 assert_eq(test.isValid(), false);
00035
00036 string p = test.name();
00037
00038 assert_eq(p, string());
00039 }
00040
00041
00042 Test basic()
00043 {
00044 Version test("test", "1.0");
00045
00046 assert_eq(test.name(), "test");
00047 assert_eq(test.version(), "1.0");
00048 assert_eq(test.isValid(), true);
00049
00050 string p = test.name();
00051
00052 assert_eq(p, "test");
00053
00054 Version v(p, "1.1");
00055 assert_eq(v.name(), "test");
00056 assert_eq(v.version(), "1.1");
00057 assert_eq(v.isValid(), true);
00058 }
00059
00060
00061 Test comparison()
00062 {
00063 Version test("test", "1.0");
00064 Version test1("test", "1.0");
00065
00066 assert(test == test1);
00067 assert(! (test != test1));
00068 assert(! (test < test1));
00069 assert(! (test > test1));
00070 assert(test <= test1);
00071 assert(test >= test1);
00072
00073
00074 Version test2("test2", "1.0");
00075
00076 assert(test != test2);
00077 assert(test != test2);
00078 assert(test < test2);
00079 assert(! (test > test2));
00080 assert(test <= test2);
00081 assert(! (test >= test2));
00082
00083
00084 Version test3("test", "2.0");
00085
00086 assert(test != test3);
00087 assert(test != test3);
00088 assert(test < test3);
00089 assert(! (test > test3));
00090 assert(test <= test3);
00091 assert(! (test >= test3));
00092 }
00093
00094
00095 Test valueCopy()
00096 {
00097 Version test("test", "1.0");
00098 Version test1 = test;
00099
00100 assert(test == test1);
00101
00102 Version test2;
00103 test2 = test;
00104 assert(test == test2);
00105 assert(test1 == test2);
00106
00107 Version test3("test", "1.0");
00108 assert(test == test3);
00109 assert(test1 == test3);
00110 assert(test2 == test3);
00111 }
00112
00113
00114 Test upstreamVersion()
00115 {
00116 assert_eq(Version("a", "10.0").upstreamVersion(), "10.0");
00117 assert_eq(Version("a", "10.0-1").upstreamVersion(), "10.0");
00118 assert_eq(Version("a", "10.0~foo.1-1.0").upstreamVersion(), "10.0~foo.1");
00119 assert_eq(Version("a", "1.0:10.0~foo.1-1.0").upstreamVersion(), "10.0~foo.1");
00120 }
00121
00122
00123 Test policyComparison()
00124 {
00125 assert(Version("a", "10.0") > Version("a", "2.1"));
00126 assert(Version("a", "1:10.0") < Version("a", "2:2.1"));
00127 assert(Version("a", "10.0-1") < Version("a", "10.0-2"));
00128 assert(Version("a", "10.0-2") > Version("a", "10.0-1"));
00129 assert(Version("a", "1:10.0-1") <= Version("a", "1:10.0-1"));
00130 assert(Version("a", "1:10.0-1") >= Version("a", "1:10.0-1"));
00131
00132 }
00133
00134 };
00135
00136