blob: a7287fa9098762a5e0f63468f3a6ad09f156a4bb [file] [log] [blame]
// Copyright 2015 The Cobalt Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include "cobalt/cssom/css_font_face_declaration_data.h"
#include "cobalt/cssom/keyword_value.h"
#include "cobalt/cssom/property_definitions.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace cobalt {
namespace cssom {
TEST(CSSFontFaceDeclarationDataTest, FamilySettersAndGettersAreConsistent) {
scoped_refptr<CSSFontFaceDeclarationData> font_face =
new CSSFontFaceDeclarationData();
EXPECT_FALSE(font_face->family());
EXPECT_FALSE(font_face->GetPropertyValue(kFontFamilyProperty));
font_face->set_family(KeywordValue::GetInitial());
EXPECT_EQ(KeywordValue::GetInitial(), font_face->family());
EXPECT_EQ(KeywordValue::GetInitial(),
font_face->GetPropertyValue(kFontFamilyProperty));
font_face->SetPropertyValue(kFontFamilyProperty, KeywordValue::GetInherit());
EXPECT_EQ(KeywordValue::GetInherit(), font_face->family());
EXPECT_EQ(KeywordValue::GetInherit(),
font_face->GetPropertyValue(kFontFamilyProperty));
}
TEST(CSSFontFaceDeclarationDataTest, SrcSettersAndGettersAreConsistent) {
scoped_refptr<CSSFontFaceDeclarationData> font_face =
new CSSFontFaceDeclarationData();
EXPECT_FALSE(font_face->src());
EXPECT_FALSE(font_face->GetPropertyValue(kSrcProperty));
font_face->set_src(KeywordValue::GetInitial());
EXPECT_EQ(KeywordValue::GetInitial(), font_face->src());
EXPECT_EQ(KeywordValue::GetInitial(),
font_face->GetPropertyValue(kSrcProperty));
font_face->SetPropertyValue(kSrcProperty, KeywordValue::GetInherit());
EXPECT_EQ(KeywordValue::GetInherit(), font_face->src());
EXPECT_EQ(KeywordValue::GetInherit(),
font_face->GetPropertyValue(kSrcProperty));
}
TEST(CSSFontFaceDeclarationDataTest, StyleSettersAndGettersAreConsistent) {
scoped_refptr<CSSFontFaceDeclarationData> font_face =
new CSSFontFaceDeclarationData();
EXPECT_TRUE(font_face->style());
EXPECT_TRUE(font_face->GetPropertyValue(kFontStyleProperty));
font_face->set_style(KeywordValue::GetInitial());
EXPECT_EQ(KeywordValue::GetInitial(), font_face->style());
EXPECT_EQ(KeywordValue::GetInitial(),
font_face->GetPropertyValue(kFontStyleProperty));
font_face->SetPropertyValue(kFontStyleProperty, KeywordValue::GetInherit());
EXPECT_EQ(KeywordValue::GetInherit(), font_face->style());
EXPECT_EQ(KeywordValue::GetInherit(),
font_face->GetPropertyValue(kFontStyleProperty));
}
TEST(CSSFontFaceDeclarationDataTest, WeightSettersAndGettersAreConsistent) {
scoped_refptr<CSSFontFaceDeclarationData> font_face =
new CSSFontFaceDeclarationData();
EXPECT_TRUE(font_face->weight());
EXPECT_TRUE(font_face->GetPropertyValue(kFontWeightProperty));
font_face->set_weight(KeywordValue::GetInitial());
EXPECT_EQ(KeywordValue::GetInitial(), font_face->weight());
EXPECT_EQ(KeywordValue::GetInitial(),
font_face->GetPropertyValue(kFontWeightProperty));
font_face->SetPropertyValue(kFontWeightProperty, KeywordValue::GetInherit());
EXPECT_EQ(KeywordValue::GetInherit(), font_face->weight());
EXPECT_EQ(KeywordValue::GetInherit(),
font_face->GetPropertyValue(kFontWeightProperty));
}
TEST(CSSFontFaceDeclarationDataTest,
UnicodeRangeSettersAndGettersAreConsistent) {
scoped_refptr<CSSFontFaceDeclarationData> font_face =
new CSSFontFaceDeclarationData();
EXPECT_FALSE(font_face->unicode_range());
EXPECT_FALSE(font_face->GetPropertyValue(kUnicodeRangeProperty));
font_face->set_unicode_range(KeywordValue::GetInitial());
EXPECT_EQ(KeywordValue::GetInitial(), font_face->unicode_range());
EXPECT_EQ(KeywordValue::GetInitial(),
font_face->GetPropertyValue(kUnicodeRangeProperty));
font_face->SetPropertyValue(kUnicodeRangeProperty,
KeywordValue::GetInherit());
EXPECT_EQ(KeywordValue::GetInherit(), font_face->unicode_range());
EXPECT_EQ(KeywordValue::GetInherit(),
font_face->GetPropertyValue(kUnicodeRangeProperty));
}
} // namespace cssom
} // namespace cobalt