-
Notifications
You must be signed in to change notification settings - Fork 546
/
Copy pathcht-series.feature
144 lines (105 loc) · 4.54 KB
/
cht-series.feature
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
Feature: Chart series
In order to customize the formatting of a series on a chart
As a developer using python-pptx
I need access to series objects and their properties
Scenario Outline: SeriesCollection.__len__()
Given a SeriesCollection object for a <container> having <count> series
Then len(series_collection) is <count>
Examples: series container types
| container | count |
| single-plot chart | 3 |
| multi-plot chart | 5 |
| plot | 3 |
Scenario Outline: SeriesCollection.__getitem__()
Given a SeriesCollection object for a <container> having <count> series
Then series_collection[2] is a Series object
Examples: series container types
| container | count |
| single-plot chart | 3 |
| multi-plot chart | 5 |
| plot | 3 |
Scenario Outline: SeriesCollection.__iter__()
Given a SeriesCollection object for a <container> having <count> series
Then iterating series_collection produces <count> Series objects
Examples: series container types
| container | count |
| single-plot chart | 3 |
| multi-plot chart | 5 |
| plot | 3 |
Scenario Outline: series.data_labels
Given a <series-type>Series object as series
Then series.data_labels is a DataLabels object
Examples: Series types
| series-type |
| Area |
| Bar |
| Doughnut |
| Line |
| Pie |
| Radar |
Scenario Outline: BarSeries.invert_if_negative value
Given a BarSeries object having invert_if_negative of <setting> as series
Then series.invert_if_negative is <expected-value>
Examples: invert_if_negative settings
| setting | expected-value |
| no explicit setting | True |
| True | True |
| False | False |
Scenario Outline: BarSeries.invert_if_negative setter
Given a BarSeries object having invert_if_negative of <setting> as series
When I assign <new-value> to series.invert_if_negative
Then series.invert_if_negative is <expected-value>
Examples: invert_if_negative settings
| setting | new-value | expected-value |
| no explicit setting | True | True |
| no explicit setting | False | False |
| True | True | True |
| False | False | False |
Scenario: series.format
Given a series
Then series.format is a ChartFormat object
Scenario Outline: series.format.fill.type
Given a BarSeries object having <fill> fill as series
Then series.format.fill.type is <expected-fill-type>
Examples: Fill types
| fill | expected-fill-type |
| Automatic | None |
| No Fill | MSO_FILL_TYPE.BACKGROUND |
| Accent 1 | MSO_FILL_TYPE.SOLID |
| Orange | MSO_FILL_TYPE.SOLID |
Scenario: series.format.fill.fore_color.rgb
Given a BarSeries object having Orange fill as series
Then series.format.fill.fore_color.rgb is FF6600
Scenario: series.format.fill.fore_color.theme_color
Given a BarSeries object having Accent 1 fill as series
Then series.format.fill.fore_color.theme_color is Accent 1
Scenario Outline: series.format.line.width
Given a BarSeries object having <width> line as series
Then series.format.line.width is <expected-width>
Examples: line widths
| width | expected-width |
| no | 0 |
| 1 point | 12700 |
Scenario Outline: series.marker
Given a <series-type>Series object as series
Then series.marker is a Marker object
Examples: Series types having .marker property
| series-type |
| Line |
| Xy |
| Radar |
Scenario Outline: series.points
Given a <series-type>Series object as series
Then series.points is a <type-name> object
Examples: series points classes
| series-type | type-name |
| Xy | XyPoints |
| Bubble | BubblePoints |
| Category | CategoryPoints |
Scenario Outline: series.values
Given a BarSeries object having values <values> as series
Then series.values is <expected-value>
Examples: series values
| values | expected-value |
| 1.2, 2.3, 3.4 | (1.2, 2.3, 3.4) |
| 4.5, None, 6.7 | (4.5, None, 6.7) |