mirror of
https://github.com/tfussell/xlnt.git
synced 2024-03-22 13:11:17 +08:00
finish testing fill
This commit is contained in:
parent
f28e09d9a3
commit
7b6b5517d9
|
@ -45,6 +45,7 @@ public:
|
||||||
|
|
||||||
enum class gradient_type
|
enum class gradient_type
|
||||||
{
|
{
|
||||||
|
none,
|
||||||
linear,
|
linear,
|
||||||
path
|
path
|
||||||
};
|
};
|
||||||
|
@ -98,10 +99,14 @@ public:
|
||||||
|
|
||||||
const std::experimental::optional<color> &get_background_color() const;
|
const std::experimental::optional<color> &get_background_color() const;
|
||||||
|
|
||||||
|
void set_start_color(const color &c);
|
||||||
|
|
||||||
std::experimental::optional<color> &get_start_color();
|
std::experimental::optional<color> &get_start_color();
|
||||||
|
|
||||||
const std::experimental::optional<color> &get_start_color() const;
|
const std::experimental::optional<color> &get_start_color() const;
|
||||||
|
|
||||||
|
void set_end_color(const color &c);
|
||||||
|
|
||||||
std::experimental::optional<color> &get_end_color();
|
std::experimental::optional<color> &get_end_color();
|
||||||
|
|
||||||
const std::experimental::optional<color> &get_end_color() const;
|
const std::experimental::optional<color> &get_end_color() const;
|
||||||
|
|
|
@ -29,7 +29,7 @@ namespace xlnt {
|
||||||
fill::fill()
|
fill::fill()
|
||||||
: type_(type::pattern),
|
: type_(type::pattern),
|
||||||
pattern_type_(pattern_type::none),
|
pattern_type_(pattern_type::none),
|
||||||
gradient_type_(gradient_type::linear),
|
gradient_type_(gradient_type::none),
|
||||||
rotation_(0),
|
rotation_(0),
|
||||||
gradient_path_left_(0),
|
gradient_path_left_(0),
|
||||||
gradient_path_right_(0),
|
gradient_path_right_(0),
|
||||||
|
@ -219,4 +219,14 @@ void fill::set_background_color(const color &c)
|
||||||
background_color_ = c;
|
background_color_ = c;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void fill::set_start_color(const color &c)
|
||||||
|
{
|
||||||
|
start_color_ = c;
|
||||||
|
}
|
||||||
|
|
||||||
|
void fill::set_end_color(const color &c)
|
||||||
|
{
|
||||||
|
end_color_ = c;
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace xlnt
|
} // namespace xlnt
|
||||||
|
|
63
source/styles/tests/test_fill.hpp
Normal file
63
source/styles/tests/test_fill.hpp
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
|
#include <cxxtest/TestSuite.h>
|
||||||
|
|
||||||
|
#include <xlnt/xlnt.hpp>
|
||||||
|
|
||||||
|
class test_fill : public CxxTest::TestSuite
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
void test_properties()
|
||||||
|
{
|
||||||
|
xlnt::fill fill;
|
||||||
|
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_type(), xlnt::fill::gradient_type::none);
|
||||||
|
fill.set_gradient_type(xlnt::fill::gradient_type::linear);
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_type(), xlnt::fill::gradient_type::linear);
|
||||||
|
|
||||||
|
TS_ASSERT(!fill.get_foreground_color());
|
||||||
|
fill.set_foreground_color(xlnt::color::black());
|
||||||
|
TS_ASSERT(fill.get_foreground_color());
|
||||||
|
|
||||||
|
TS_ASSERT(!fill.get_background_color());
|
||||||
|
fill.set_background_color(xlnt::color::black());
|
||||||
|
TS_ASSERT(fill.get_background_color());
|
||||||
|
|
||||||
|
TS_ASSERT(!fill.get_start_color());
|
||||||
|
fill.set_start_color(xlnt::color::black());
|
||||||
|
TS_ASSERT(fill.get_start_color());
|
||||||
|
|
||||||
|
TS_ASSERT(!fill.get_end_color());
|
||||||
|
fill.set_end_color(xlnt::color::black());
|
||||||
|
TS_ASSERT(fill.get_end_color());
|
||||||
|
|
||||||
|
TS_ASSERT_EQUALS(fill.get_rotation(), 0);
|
||||||
|
fill.set_rotation(1);
|
||||||
|
TS_ASSERT_EQUALS(fill.get_rotation(), 1);
|
||||||
|
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_bottom(), 0);
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_left(), 0);
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_top(), 0);
|
||||||
|
TS_ASSERT_EQUALS(fill.get_gradient_right(), 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void test_hash()
|
||||||
|
{
|
||||||
|
xlnt::fill none_fill;
|
||||||
|
|
||||||
|
xlnt::fill solid_fill;
|
||||||
|
solid_fill.set_type(xlnt::fill::type::solid);
|
||||||
|
|
||||||
|
xlnt::fill pattern_fill;
|
||||||
|
pattern_fill.set_type(xlnt::fill::type::pattern);
|
||||||
|
|
||||||
|
xlnt::fill gradient_fill;
|
||||||
|
gradient_fill.set_type(xlnt::fill::type::gradient);
|
||||||
|
|
||||||
|
TS_ASSERT_DIFFERS(none_fill.hash(), solid_fill.hash());
|
||||||
|
TS_ASSERT_DIFFERS(solid_fill.hash(), pattern_fill.hash());
|
||||||
|
TS_ASSERT_DIFFERS(pattern_fill.hash(), gradient_fill.hash());
|
||||||
|
TS_ASSERT_DIFFERS(gradient_fill.hash(), none_fill.hash());
|
||||||
|
}
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user