// Copyright 2018 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 "third_party/blink/renderer/core/css/css_property_name.h" #include "testing/gtest/include/gtest/gtest.h" #include "third_party/blink/renderer/core/css/properties/css_property.h" namespace blink { TEST(CSSPropertyNameTest, IdStandardProperty) { CSSPropertyName name(CSSPropertyFontSize); EXPECT_EQ(CSSPropertyFontSize, name.Id()); } TEST(CSSPropertyNameTest, IdCustomProperty) { CSSPropertyName name(AtomicString("--x")); EXPECT_EQ(CSSPropertyVariable, name.Id()); EXPECT_TRUE(name.IsCustomProperty()); } TEST(CSSPropertyNameTest, GetNameStandardProperty) { CSSPropertyName name(CSSPropertyFontSize); EXPECT_EQ(AtomicString("font-size"), name.ToAtomicString()); } TEST(CSSPropertyNameTest, GetNameCustomProperty) { CSSPropertyName name(AtomicString("--x")); EXPECT_EQ(AtomicString("--x"), name.ToAtomicString()); } TEST(CSSPropertyNameTest, OperatorEquals) { EXPECT_EQ(CSSPropertyName("--x"), CSSPropertyName("--x")); EXPECT_EQ(CSSPropertyName(CSSPropertyColor), CSSPropertyName(CSSPropertyColor)); EXPECT_NE(CSSPropertyName("--x"), CSSPropertyName("--y")); EXPECT_NE(CSSPropertyName(CSSPropertyColor), CSSPropertyName(CSSPropertyBackgroundColor)); } TEST(CSSPropertyNameTest, From) { EXPECT_TRUE(CSSPropertyName::From("color")); EXPECT_TRUE(CSSPropertyName::From("--x")); EXPECT_FALSE(CSSPropertyName::From("notaproperty")); EXPECT_FALSE(CSSPropertyName::From("-not-a-property")); EXPECT_EQ(*CSSPropertyName::From("color"), CSSPropertyName(CSSPropertyColor)); EXPECT_EQ(*CSSPropertyName::From("--x"), CSSPropertyName("--x")); } TEST(CSSPropertyNameTest, FromNativeCSSProperty) { CSSPropertyName name = GetCSSPropertyFontSize().GetCSSPropertyName(); EXPECT_EQ(CSSPropertyName(CSSPropertyFontSize), name); } } // namespace blink