1 // Copyright 2020 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "gn/version.h"
6
7 #include "util/test/test.h"
8
TEST(VersionTest,FromString)9 TEST(VersionTest, FromString) {
10 Version v0_0_1{0, 0, 1};
11 ASSERT_EQ(Version::FromString("0.0.1"), v0_0_1);
12 Version v0_1_0{0, 1, 0};
13 ASSERT_EQ(Version::FromString("0.1.0"), v0_1_0);
14 Version v1_0_0{1, 0, 0};
15 ASSERT_EQ(Version::FromString("1.0.0"), v1_0_0);
16 }
17
TEST(VersionTest,Comparison)18 TEST(VersionTest, Comparison) {
19 Version v0_0_1{0, 0, 1};
20 Version v0_1_0{0, 1, 0};
21 ASSERT_TRUE(v0_0_1 == v0_0_1);
22 ASSERT_TRUE(v0_0_1 != v0_1_0);
23 ASSERT_TRUE(v0_0_1 <= v0_0_1);
24 ASSERT_TRUE(v0_0_1 <= v0_1_0);
25 ASSERT_TRUE(v0_0_1 < v0_1_0);
26 ASSERT_TRUE(v0_0_1 >= v0_0_1);
27 ASSERT_TRUE(v0_1_0 > v0_0_1);
28 ASSERT_TRUE(v0_1_0 >= v0_0_1);
29 }
30
TEST(VersionTest,Describe)31 TEST(VersionTest, Describe) {
32 ASSERT_EQ(Version::FromString("0.0.1")->Describe(), "0.0.1");
33 }
34