OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/time/time.h" | 5 #include "base/time/time.h" |
6 | 6 |
7 #include <time.h> | 7 #include <time.h> |
8 | 8 |
9 #include <limits> | 9 #include <limits> |
10 #include <string> | 10 #include <string> |
(...skipping 850 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
861 | 861 |
862 const int64 max_int64_minus_one = std::numeric_limits<int64>::max() - 1; | 862 const int64 max_int64_minus_one = std::numeric_limits<int64>::max() - 1; |
863 const int64 min_int64_plus_two = std::numeric_limits<int64>::min() + 2; | 863 const int64 min_int64_plus_two = std::numeric_limits<int64>::min() + 2; |
864 EXPECT_EQ(TimeDelta::FromMicroseconds(max_int64_minus_one), | 864 EXPECT_EQ(TimeDelta::FromMicroseconds(max_int64_minus_one), |
865 TimeDelta::FromMicroseconds(max_int64_minus_one).magnitude()); | 865 TimeDelta::FromMicroseconds(max_int64_minus_one).magnitude()); |
866 EXPECT_EQ(TimeDelta::FromMicroseconds(max_int64_minus_one), | 866 EXPECT_EQ(TimeDelta::FromMicroseconds(max_int64_minus_one), |
867 TimeDelta::FromMicroseconds(min_int64_plus_two).magnitude()); | 867 TimeDelta::FromMicroseconds(min_int64_plus_two).magnitude()); |
868 } | 868 } |
869 | 869 |
870 | 870 |
871 TEST(TimeDelta, multiply_by) { | 871 TEST(TimeDelta, NumericOperators) { |
872 double d = 0.5; | 872 double d = 0.5; |
873 EXPECT_EQ(TimeDelta::FromMilliseconds(500), | 873 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
874 TimeDelta::FromMilliseconds(1000).multiply_by(d)); | 874 TimeDelta::FromMilliseconds(1000) * d); |
875 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), | 875 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
876 TimeDelta::FromMilliseconds(1000).divide_by(d)); | 876 TimeDelta::FromMilliseconds(1000) / d); |
| 877 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 878 TimeDelta::FromMilliseconds(1000) *= d); |
| 879 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 880 TimeDelta::FromMilliseconds(1000) /= d); |
| 881 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 882 d * TimeDelta::FromMilliseconds(1000)); |
| 883 |
| 884 float f = 0.5; |
| 885 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 886 TimeDelta::FromMilliseconds(1000) * f); |
| 887 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 888 TimeDelta::FromMilliseconds(1000) / f); |
| 889 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 890 TimeDelta::FromMilliseconds(1000) *= f); |
| 891 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 892 TimeDelta::FromMilliseconds(1000) /= f); |
| 893 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 894 f * TimeDelta::FromMilliseconds(1000)); |
| 895 |
| 896 |
| 897 int i = 2; |
| 898 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 899 TimeDelta::FromMilliseconds(1000) * i); |
| 900 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 901 TimeDelta::FromMilliseconds(1000) / i); |
| 902 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 903 TimeDelta::FromMilliseconds(1000) *= i); |
| 904 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 905 TimeDelta::FromMilliseconds(1000) /= i); |
| 906 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 907 i * TimeDelta::FromMilliseconds(1000)); |
| 908 |
| 909 int64_t i64 = 2; |
| 910 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 911 TimeDelta::FromMilliseconds(1000) * i64); |
| 912 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 913 TimeDelta::FromMilliseconds(1000) / i64); |
| 914 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 915 TimeDelta::FromMilliseconds(1000) *= i64); |
| 916 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 917 TimeDelta::FromMilliseconds(1000) /= i64); |
| 918 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 919 i64 * TimeDelta::FromMilliseconds(1000)); |
| 920 |
| 921 |
| 922 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 923 TimeDelta::FromMilliseconds(1000) * 0.5); |
| 924 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 925 TimeDelta::FromMilliseconds(1000) / 0.5); |
| 926 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 927 TimeDelta::FromMilliseconds(1000) *= 0.5); |
| 928 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 929 TimeDelta::FromMilliseconds(1000) /= 0.5); |
| 930 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 931 0.5 * TimeDelta::FromMilliseconds(1000)); |
| 932 |
| 933 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 934 TimeDelta::FromMilliseconds(1000) * 2); |
| 935 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 936 TimeDelta::FromMilliseconds(1000) / 2); |
| 937 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 938 TimeDelta::FromMilliseconds(1000) *= 2); |
| 939 EXPECT_EQ(TimeDelta::FromMilliseconds(500), |
| 940 TimeDelta::FromMilliseconds(1000) /= 2); |
| 941 EXPECT_EQ(TimeDelta::FromMilliseconds(2000), |
| 942 2 * TimeDelta::FromMilliseconds(1000)); |
877 } | 943 } |
878 | 944 |
879 TEST(TimeDeltaLogging, DCheckEqCompiles) { | 945 TEST(TimeDeltaLogging, DCheckEqCompiles) { |
880 DCHECK_EQ(TimeDelta(), TimeDelta()); | 946 DCHECK_EQ(TimeDelta(), TimeDelta()); |
881 } | 947 } |
882 | 948 |
883 TEST(TimeDeltaLogging, EmptyIsZero) { | 949 TEST(TimeDeltaLogging, EmptyIsZero) { |
884 TimeDelta zero; | 950 TimeDelta zero; |
885 EXPECT_EQ("0s", AnyToString(zero)); | 951 EXPECT_EQ("0s", AnyToString(zero)); |
886 } | 952 } |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
956 | 1022 |
957 TEST(TimeTicksLogging, DoesNotMakeStreamBad) { | 1023 TEST(TimeTicksLogging, DoesNotMakeStreamBad) { |
958 std::ostringstream oss; | 1024 std::ostringstream oss; |
959 oss << TimeTicks(); | 1025 oss << TimeTicks(); |
960 EXPECT_TRUE(oss.good()); | 1026 EXPECT_TRUE(oss.good()); |
961 } | 1027 } |
962 | 1028 |
963 } // namespace | 1029 } // namespace |
964 | 1030 |
965 } // namespace base | 1031 } // namespace base |
OLD | NEW |