| // Copyright 2020 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "gn/version.h" |
| |
| #include "util/test/test.h" |
| |
| TEST(VersionTest, FromString) { |
| Version v0_0_1{0, 0, 1}; |
| ASSERT_EQ(Version::FromString("0.0.1"), v0_0_1); |
| Version v0_1_0{0, 1, 0}; |
| ASSERT_EQ(Version::FromString("0.1.0"), v0_1_0); |
| Version v1_0_0{1, 0, 0}; |
| ASSERT_EQ(Version::FromString("1.0.0"), v1_0_0); |
| } |
| |
| TEST(VersionTest, Comparison) { |
| Version v0_0_1{0, 0, 1}; |
| Version v0_1_0{0, 1, 0}; |
| ASSERT_TRUE(v0_0_1 == v0_0_1); |
| ASSERT_TRUE(v0_0_1 != v0_1_0); |
| ASSERT_TRUE(v0_0_1 <= v0_0_1); |
| ASSERT_TRUE(v0_0_1 <= v0_1_0); |
| ASSERT_TRUE(v0_0_1 < v0_1_0); |
| ASSERT_TRUE(v0_0_1 >= v0_0_1); |
| ASSERT_TRUE(v0_1_0 > v0_0_1); |
| ASSERT_TRUE(v0_1_0 >= v0_0_1); |
| } |
| |
| TEST(VersionTest, Describe) { |
| ASSERT_EQ(Version::FromString("0.0.1")->Describe(), "0.0.1"); |
| } |