Skip to content

Commit 3e2a1eb

Browse files
authored
Fix properties not marked as nullable (#83)
* Fix properties not marked as nullable * Remove new ticker from quarterly
1 parent e4dce8c commit 3e2a1eb

File tree

4 files changed

+65
-12
lines changed

4 files changed

+65
-12
lines changed

FinancialModelingPrepApi/Model/CompanyValuation/CompanyProfileResponse.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public class CompanyProfileResponse
88
public string Symbol { get; set; }
99

1010
[JsonPropertyName("price")]
11-
public double Price { get; set; }
11+
public double? Price { get; set; }
1212

1313
[JsonPropertyName("beta")]
1414
public double Beta { get; set; }
@@ -26,7 +26,7 @@ public class CompanyProfileResponse
2626
public string Range { get; set; }
2727

2828
[JsonPropertyName("changes")]
29-
public double Changes { get; set; }
29+
public double? Changes { get; set; }
3030

3131
[JsonPropertyName("companyName")]
3232
public string CompanyName { get; set; }

FinancialModelingPrepApi/Model/StockTimeSeries/HistoricalPriceResponse.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public class HistoricalPriceItem
3636
public double Volume { get; set; }
3737

3838
[JsonPropertyName("unadjustedVolume")]
39-
public double UnadjustedVolume { get; set; }
39+
public double? UnadjustedVolume { get; set; }
4040

4141
[JsonPropertyName("change")]
4242
public double Change { get; set; }

Tests/CompanyValuation/CompanyValuationTests.cs

Lines changed: 46 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
using MatthiWare.FinancialModelingPrep;
2-
using MatthiWare.FinancialModelingPrep.Abstractions.CompanyValuation;
1+
using MatthiWare.FinancialModelingPrep.Abstractions.CompanyValuation;
32
using MatthiWare.FinancialModelingPrep.Model;
43
using Microsoft.Extensions.DependencyInjection;
54
using System;
6-
using System.Collections;
75
using System.Collections.Generic;
86
using System.Linq;
97
using System.Threading.Tasks;
@@ -35,6 +33,13 @@ public async Task GetSymbolChangesAsyncTests()
3533
[InlineData("AAPL")]
3634
[InlineData("SPY")]
3735
[InlineData("GSM")]
36+
[InlineData("AGS.BR")]
37+
[InlineData("PPL.TO")]
38+
[InlineData("TSLA")]
39+
[InlineData("AAP")]
40+
[InlineData("MTG")]
41+
[InlineData("BZZUY")]
42+
[InlineData("SWIR")]
3843
public async Task GetCompanyProfileTests(string symbol)
3944
{
4045
var result = await api.GetCompanyProfileAsync(symbol);
@@ -46,7 +51,7 @@ public async Task GetCompanyProfileTests(string symbol)
4651
[Theory]
4752
[InlineData("AAPL", false)]
4853
// [InlineData("BST", true, Skip = "IsFund returns incorrect result")]
49-
public async Task GetCompanyProfile_IsFund_Tests(string symbol, bool isFund)
54+
public async Task GetCompanyProfile_IsFund_Tests(string symbol, bool isFund)
5055
{
5156
var result = await api.GetCompanyProfileAsync(symbol);
5257

@@ -122,10 +127,17 @@ public async Task GetSymbolsWithFinancialStatementsAsync()
122127
}
123128

124129
[Theory]
125-
[InlineData("AAPL")]
126-
[InlineData("AGS.BR")]
127130
[InlineData("NNN")]
128131
[InlineData("UGI")]
132+
[InlineData("AAPL")]
133+
[InlineData("GSM")]
134+
[InlineData("AGS.BR")]
135+
[InlineData("PPL.TO")]
136+
[InlineData("TSLA")]
137+
[InlineData("AAP")]
138+
[InlineData("MTG")]
139+
[InlineData("BZZUY")]
140+
[InlineData("SWIR")]
129141
public async Task GetEnterpriseValue(string symbol)
130142
{
131143
var result = await api.GetEnterpriseValueAsync(symbol, Period.Annual, 5);
@@ -144,6 +156,9 @@ public async Task GetEnterpriseValue(string symbol)
144156
[InlineData("TSLA")]
145157
[InlineData("AAP")]
146158
[InlineData("MTG")]
159+
[InlineData("GSM")]
160+
[InlineData("BZZUY")]
161+
[InlineData("SWIR")]
147162
public async Task GetIncomeStatement(string symbol)
148163
{
149164
var result = await api.GetIncomeStatementAsync(symbol, Period.Annual, 10000);
@@ -161,6 +176,9 @@ public async Task GetIncomeStatement(string symbol)
161176
[InlineData("TSLA")]
162177
[InlineData("AAP")]
163178
[InlineData("MTG")]
179+
[InlineData("GSM")]
180+
181+
[InlineData("SWIR")]
164182
public async Task GetIncomeStatementPerQuarter(string symbol)
165183
{
166184
var result = await api.GetIncomeStatementAsync(symbol, Period.Quarter, limit: 10000);
@@ -178,6 +196,9 @@ public async Task GetIncomeStatementPerQuarter(string symbol)
178196
[InlineData("TSLA")]
179197
[InlineData("AAP")]
180198
[InlineData("MTG")]
199+
[InlineData("GSM")]
200+
[InlineData("BZZUY")]
201+
[InlineData("SWIR")]
181202
public async Task GetCashFlowStatement(string symbol)
182203
{
183204
var result = await api.GetCashFlowStatementAsync(symbol, Period.Annual, 10000);
@@ -195,6 +216,8 @@ public async Task GetCashFlowStatement(string symbol)
195216
[InlineData("TSLA")]
196217
[InlineData("AAP")]
197218
[InlineData("MTG")]
219+
[InlineData("GSM")]
220+
[InlineData("SWIR")]
198221
public async Task GetCashFlowStatementPerQuarter(string symbol)
199222
{
200223
var result = await api.GetCashFlowStatementAsync(symbol, Period.Quarter, limit: 10000);
@@ -212,6 +235,9 @@ public async Task GetCashFlowStatementPerQuarter(string symbol)
212235
[InlineData("TSLA")]
213236
[InlineData("AAP")]
214237
[InlineData("MTG")]
238+
[InlineData("GSM")]
239+
[InlineData("BZZUY")]
240+
[InlineData("SWIR")]
215241
public async Task GetBalanceSheetStatement(string symbol)
216242
{
217243
var result = await api.GetBalanceSheetStatementAsync(symbol, Period.Annual, 10000);
@@ -229,6 +255,8 @@ public async Task GetBalanceSheetStatement(string symbol)
229255
[InlineData("TSLA")]
230256
[InlineData("AAP")]
231257
[InlineData("MTG")]
258+
[InlineData("GSM")]
259+
[InlineData("SWIR")]
232260
public async Task GetBalanceSheetStatementPerQuarter(string symbol)
233261
{
234262
var result = await api.GetBalanceSheetStatementAsync(symbol, Period.Quarter, limit: 10000);
@@ -336,6 +364,15 @@ public async Task GetRatiosTTMAsync(string symbol)
336364
[InlineData("PPL.TO")]
337365
[InlineData("WDP.BR")]
338366
[InlineData("ENX.PA")]
367+
[InlineData("NNN")]
368+
[InlineData("UGI")]
369+
[InlineData("SPY")]
370+
[InlineData("GSM")]
371+
[InlineData("TSLA")]
372+
[InlineData("AAP")]
373+
[InlineData("MTG")]
374+
[InlineData("BZZUY")]
375+
[InlineData("SWIR")]
339376
public async Task GetCompanyKeyMetricsTTMAsync(string symbol)
340377
{
341378
var result = await api.GetCompanyKeyMetricsTTMAsync(symbol);
@@ -348,9 +385,9 @@ public async Task GetCompanyKeyMetricsTTMAsync(string symbol)
348385
[InlineData("AGS.BR", Period.Quarter)]
349386
[InlineData("CMCSA", Period.Quarter)]
350387
[InlineData("PINE", Period.Quarter)]
351-
[InlineData("LGEN.L", Period.Quarter)]
388+
[InlineData("LGEN.L", Period.Quarter)]
352389
[InlineData("WDP.BR", Period.Quarter)]
353-
[InlineData("ADM.L", Period.Quarter)]
390+
[InlineData("ADM.L", Period.Quarter)]
354391
[InlineData("PPL.TO", Period.Quarter)]
355392
[InlineData("AAPL", Period.Annual)]
356393
[InlineData("PPL.TO", Period.Annual)]
@@ -480,7 +517,7 @@ public async Task GetPressReleasesAsync()
480517

481518
public static IEnumerable<object[]> AvailableExchanges
482519
{
483-
get
520+
get
484521
{
485522
foreach (var enumValue in Enum.GetValues<Exchange>())
486523
{

Tests/StockTimeSeries/StockTimeSeriesTests.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,22 @@ public async Task GetHistoricalDailyPricesAsync()
6161
Assert.Equal(123.85, split.Low, 2);
6262
}
6363

64+
[Theory]
65+
[InlineData("AMD")]
66+
[InlineData("O")]
67+
[InlineData("BZZUY")]
68+
[InlineData("SWIR")]
69+
[InlineData("PPL.TO")]
70+
[InlineData("LGEN.L")]
71+
[InlineData("AGS.BR")]
72+
public async Task GetHistoricalDailyPricesAsync_2(string ticker)
73+
{
74+
var result = await api.GetHistoricalDailyPricesAsync(ticker);
75+
76+
result.AssertNoErrors();
77+
Assert.NotEmpty(result.Data.Historical);
78+
}
79+
6480
[Fact]
6581
public async Task GetHistoricalDailyPricesUsingFromToAsync()
6682
{

0 commit comments

Comments
 (0)