• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

rwjdk / TrelloDotNet / 16099027285

06 Jul 2025 12:29PM UTC coverage: 79.551% (-0.4%) from 79.911%
16099027285

push

github

rwjdk
Version 2.1.0

2539 of 3464 branches covered (73.3%)

Branch coverage included in aggregate %.

0 of 22 new or added lines in 3 files covered. (0.0%)

11 existing lines in 3 files now uncovered.

4479 of 5358 relevant lines covered (83.59%)

113.35 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

84.38
/src/TrelloDotNet/Model/CardUpdate.cs
1
using System;
2
using System.Collections.Generic;
3
using System.Diagnostics;
4
using System.Linq;
5
using System.Text.Json;
6
using TrelloDotNet.Control;
7
using TrelloDotNet.Model.Options;
8

9
// ReSharper disable UnusedMember.Global
10
// ReSharper disable UnusedMember.Local
11

12
namespace TrelloDotNet.Model
13
{
14
    /// <summary>
15
    /// URI Parameter to build the URL
16
    /// </summary>
17
    [DebuggerDisplay("{_name} (Type: {_type})")]
18
    public class CardUpdate
19
    {
20
        private readonly object _valueAsObject;
21

22
        /// <summary>
23
        /// Name of the Parameter (found on Trello API reference page: https://developer.atlassian.com/cloud/trello/rest)
24
        /// </summary>
25
        private readonly string _name;
26

27
        /// <summary>
28
        /// Type of the parameter
29
        /// </summary>
30
        private readonly QueryParameterType _type;
31

32
        /// <summary>
33
        /// Create a Cover Parameter
34
        /// </summary>
35
        /// <param name="value">New Cover or null to remove</param>
36
        /// <returns>CardUpdate Object</returns>
37
        public static CardUpdate Cover(CardCover value) => new CardUpdate(CardFieldsType.Cover, JsonSerializer.Serialize(value));
5✔
38

39
        /// <summary>
40
        /// Create a Due Date Parameter
41
        /// </summary>
42
        /// <param name="value">Due Date or null to remove</param>
43
        /// <returns>CardUpdate Object</returns>
44
        public static CardUpdate DueDate(DateTimeOffset? value) => new CardUpdate(CardFieldsType.Due, value);
10✔
45

46
        /// <summary>
47
        /// Create a Card Completed Parameter
48
        /// </summary>
49
        /// <param name="value">Due Completed</param>
50
        /// <returns>CardUpdate Object</returns>
51
        public static CardUpdate DueComplete(bool value) => new CardUpdate(CardFieldsType.DueComplete, value);
6✔
52

53
        /// <summary>
54
        /// Create a IsTemplate Parameter
55
        /// </summary>
56
        /// <param name="value">Is Template Card</param>
57
        /// <returns>CardUpdate Object</returns>
58
        public static CardUpdate IsTemplate(bool value) => new CardUpdate(CardFieldsType.IsTemplate, value);
2✔
59

60
        /// <summary>
61
        /// Create a Closed Parameter
62
        /// </summary>
63
        /// <param name="value">Closed</param>
64
        /// <returns>CardUpdate Object</returns>
65
        public static CardUpdate Closed(bool value) => new CardUpdate(CardFieldsType.Closed, value);
2✔
66

67
        /// <summary>
68
        /// Create a Position Parameter
69
        /// </summary>
70
        /// <param name="value">Position</param>
71
        /// <returns>CardUpdate Object</returns>
72
        public static CardUpdate Position(decimal value) => new CardUpdate(CardFieldsType.Position, value);
1✔
73

74
        /// <summary>
75
        /// Create a Position Parameter
76
        /// </summary>
77
        /// <param name="value">Position</param>
78
        /// <returns>CardUpdate Object</returns>
79
        public static CardUpdate Position(NamedPosition value) => new CardUpdate(CardFieldsType.Position, value.GetJsonPropertyName());
9✔
80

81
        /// <summary>
82
        /// Create a Start Parameter
83
        /// </summary>
84
        /// <param name="value">Start or null to remove</param>
85
        /// <returns>CardUpdate Object</returns>
86
        public static CardUpdate StartDate(DateTimeOffset? value) => new CardUpdate(CardFieldsType.Start, value);
10✔
87

88
        /// <summary>
89
        /// Create a Name Parameter
90
        /// </summary>
91
        /// <param name="value">Name</param>
92
        /// <returns>CardUpdate Object</returns>
93
        public static CardUpdate Name(string value) => new CardUpdate(CardFieldsType.Name, value ?? "");
6!
94

95
        /// <summary>
96
        /// Create a Board Parameter
97
        /// </summary>
98
        /// <param name="value">Board</param>
99
        /// <returns>CardUpdate Object</returns>
100
        public static CardUpdate Board(string value) => new CardUpdate(CardFieldsType.BoardId, value);
6✔
101

102
        /// <summary>
103
        /// Create a Board Parameter
104
        /// </summary>
105
        /// <param name="value">Board</param>
106
        /// <returns>CardUpdate Object</returns>
107
        public static CardUpdate Board(Board value) => new CardUpdate(CardFieldsType.BoardId, value.Id);
1✔
108

109
        /// <summary>
110
        /// Create a List Parameter
111
        /// </summary>
112
        /// <param name="value">List</param>
113
        /// <returns>CardUpdate Object</returns>
114
        public static CardUpdate List(string value) => new CardUpdate(CardFieldsType.ListId, value);
8✔
115

116
        /// <summary>
117
        /// Create a List Parameter
118
        /// </summary>
119
        /// <param name="value">List</param>
120
        /// <returns>CardUpdate Object</returns>
121
        public static CardUpdate List(List value) => new CardUpdate(CardFieldsType.ListId, value.Id);
1✔
122

123
        /// <summary>
124
        /// Create a Description Parameter
125
        /// </summary>
126
        /// <param name="value">Description</param>
127
        /// <returns>CardUpdate Object</returns>
128
        public static CardUpdate Description(string value) => new CardUpdate(CardFieldsType.Description, value ?? "");
5!
129

130
        /// <summary>
131
        /// Create a Members Parameter
132
        /// </summary>
133
        /// <param name="memberIds">Members</param>
134
        /// <returns>CardUpdate Object</returns>
135
        public static CardUpdate Members(List<string> memberIds) => new CardUpdate(CardFieldsType.MemberIds, memberIds.Distinct().ToList());
26✔
136

137
        /// <summary>
138
        /// Create a Members Parameter
139
        /// </summary>
140
        /// <param name="members">Members</param>
141
        /// <returns>CardUpdate Object</returns>
142
        public static CardUpdate Members(List<Member> members) => new CardUpdate(CardFieldsType.MemberIds, members.Select(x => x.Id).Distinct().ToList());
1✔
143

144
        /// <summary>
145
        /// Create a Labels Parameter
146
        /// </summary>
147
        /// <param name="labelIds">Labels</param>
148
        /// <returns>CardUpdate Object</returns>
149
        public static CardUpdate Labels(List<string> labelIds) => new CardUpdate(CardFieldsType.LabelIds, labelIds.Distinct().ToList());
31✔
150

151
        /// <summary>
152
        /// Create a Labels Parameter
153
        /// </summary>
154
        /// <param name="labels">Labels</param>
155
        /// <returns>CardUpdate Object</returns>
156
        public static CardUpdate Labels(List<Label> labels) => new CardUpdate(CardFieldsType.LabelIds, labels?.Select(x => x.Id).Distinct().ToList());
1!
157

158
        /// <summary>
159
        /// Create a CardRole Parameter
160
        /// </summary>
161
        /// <param name="value">CardRole to change to</param>
162
        /// <returns>CardUpdate Object</returns>
NEW
163
        public static CardUpdate CardRole(string value) => new CardUpdate(CardFieldsType.CardRole, value);
×
164

165
        /// <summary>
166
        /// Create an Additional Parameter (aka one that is not a named CardFieldsType)
167
        /// </summary>
168
        /// <param name="additionalParameter">The Additional Parameter</param>
169
        /// <returns>CardUpdate Object</returns>
170
        public static CardUpdate AdditionalParameter(QueryParameter additionalParameter) => new CardUpdate(additionalParameter);
9✔
171

172
        /// <summary>
173
        /// Constructor
174
        /// </summary>
175
        /// <param name="parameter">The raw Parameter</param>
176
        private CardUpdate(QueryParameter parameter)
9✔
177
        {
178
            _name = parameter.Name;
9✔
179
            _type = parameter.Type;
9✔
180
            _valueAsObject = parameter.GetRawValue();
9✔
181
        }
9✔
182

183
        /// <summary>
184
        /// Constructor
185
        /// </summary>
186
        /// <param name="name">Name of the Parameter</param>
187
        /// <param name="value">Value of the Parameter</param>
188
        private CardUpdate(CardFieldsType name, string value)
41✔
189
        {
190
            _name = name.GetJsonPropertyName();
41✔
191
            _type = QueryParameterType.String;
41✔
192
            _valueAsObject = value;
41✔
193
        }
41✔
194

195
        /// <summary>
196
        /// Constructor
197
        /// </summary>
198
        /// <param name="name">Name of the Parameter</param>
199
        /// <param name="value">Value of the Parameter</param>
200
        private CardUpdate(CardFieldsType name, List<string> value)
59✔
201
        {
202
            _name = name.GetJsonPropertyName();
59✔
203
            _type = QueryParameterType.String;
59✔
204
            _valueAsObject = value != null ? string.Join(",", value) : null;
59!
205
        }
59✔
206

207
        /// <summary>
208
        /// Constructor
209
        /// </summary>
210
        /// <param name="name">Name of the Parameter</param>
211
        /// <param name="value">Value of the Parameter</param>
212
        private CardUpdate(CardFieldsType name, decimal? value)
1✔
213
        {
214
            _name = name.GetJsonPropertyName();
1✔
215
            _type = QueryParameterType.Decimal;
1✔
216
            _valueAsObject = value;
1✔
217
        }
1✔
218

219
        /// <summary>
220
        /// Constructor
221
        /// </summary>
222
        /// <param name="name">Name of the Parameter</param>
223
        /// <param name="value">Value of the Parameter</param>
224
        private CardUpdate(CardFieldsType name, bool? value)
10✔
225
        {
226
            _name = name.GetJsonPropertyName();
10✔
227
            _type = QueryParameterType.Boolean;
10✔
228
            _valueAsObject = value;
10✔
229
        }
10✔
230

231
        /// <summary>
232
        /// Constructor
233
        /// </summary>
234
        /// <param name="name">Name of the Parameter</param>
235
        /// <param name="value">Value of the Parameter</param>
236
        private CardUpdate(CardFieldsType name, int? value)
×
237
        {
238
            _name = name.GetJsonPropertyName();
×
239
            _type = QueryParameterType.Integer;
×
240
            _valueAsObject = value;
×
241
        }
×
242

243
        /// <summary>
244
        /// Constructor
245
        /// </summary>
246
        /// <param name="name">Name of the Parameter</param>
247
        /// <param name="value">Value of the Parameter</param>
248
        private CardUpdate(CardFieldsType name, DateTimeOffset? value)
20✔
249
        {
250
            _name = name.GetJsonPropertyName();
20✔
251
            _type = QueryParameterType.DateTimeOffset;
20✔
252
            _valueAsObject = value;
20✔
253
        }
20✔
254

255
        internal QueryParameter ToQueryParameter()
256
        {
257
            return new QueryParameter(_name, _type, _valueAsObject);
140✔
258
        }
259
    }
260
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc