Skip to content
This repository was archived by the owner on Sep 5, 2019. It is now read-only.

Commit ffb036f

Browse files
authored
Implemented DiagnosticSource (#32)
* Added code documentation for exceptions * Updated CHANGELOG * Updated CHANGELOG * Implemented DiagnosticSource #29 * Updated CHANGELOG * Solved warning regarding IResult * Disabled long running tests due too performance
1 parent 7583eb1 commit ffb036f

18 files changed

+370
-75
lines changed

CHANGELOG.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [1.1.0] - 2018-11-05
11+
12+
### Added
13+
14+
- Code Documentation for Exceptions.
15+
- An overload for Set which takes a bare value without a wrapping _Task_. Closes [#30](https://github.com/ChilliCream/greendonut/issues/30).
16+
- Instrumentation API. Closes [#29](https://github.com/ChilliCream/greendonut/issues/29).
17+
1018
### Changed
1119

1220
- Set the _.Net Standard_ version to `1.3` in order to support _.Net 4.6_ framework.
@@ -77,7 +85,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7785

7886
- Updated readme.
7987

80-
[unreleased]: https://github.com/ChilliCream/greendonut/compare/1.0.3...HEAD
88+
[unreleased]: https://github.com/ChilliCream/greendonut/compare/1.1.0...HEAD
89+
[1.1.0]: https://github.com/ChilliCream/greendonut/compare/1.0.3...1.1.0
8190
[1.0.3]: https://github.com/ChilliCream/greendonut/compare/1.0.2...1.0.3
8291
[1.0.2]: https://github.com/ChilliCream/greendonut/compare/1.0.1...1.0.2
8392
[1.0.1]: https://github.com/ChilliCream/greendonut/compare/1.0.0...1.0.1

src/Core.Tests/Core.Tests.csproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,15 @@
1414
</PropertyGroup>
1515

1616
<ItemGroup>
17+
<PackageReference Include="Microsoft.Extensions.DiagnosticAdapter" Version="2.1.0" />
1718
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" />
1819
<PackageReference Include="Microsoft.CodeCoverage" Version="15.8.0" />
1920
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="2.1.1" />
2021
<PackageReference Include="coverlet.msbuild" Version="2.2.1">
2122
<PrivateAssets>all</PrivateAssets>
2223
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
2324
</PackageReference>
25+
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="4.5.1" />
2426
<PackageReference Include="xunit" Version="2.4.0" />
2527
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.0">
2628
<PrivateAssets>all</PrivateAssets>

src/Core.Tests/DataLoaderBaseTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public void ConstructorA()
1414
{
1515
// arrange
1616
FetchDataDelegate<string, string> fetch = async keys =>
17-
await Task.FromResult(new Result<string>[0])
17+
await Task.FromResult(new IResult<string>[0])
1818
.ConfigureAwait(false);
1919

2020
// act

src/Core.Tests/DataLoaderExtensionsTests.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void SetKeyNull()
2828
{
2929
// arrange
3030
FetchDataDelegate<string, string> fetch = async keys =>
31-
await Task.FromResult(new Result<string>[0])
31+
await Task.FromResult(new IResult<string>[0])
3232
.ConfigureAwait(false);
3333
var options = new DataLoaderOptions<string>();
3434
var loader = new DataLoader<string, string>(options, fetch);
@@ -47,7 +47,7 @@ public void SetNoException()
4747
{
4848
// arrange
4949
FetchDataDelegate<string, string> fetch = async keys =>
50-
await Task.FromResult(new Result<string>[0])
50+
await Task.FromResult(new IResult<string>[0])
5151
.ConfigureAwait(false);
5252
var options = new DataLoaderOptions<string>();
5353
var loader = new DataLoader<string, string>(options, fetch);
@@ -66,7 +66,7 @@ public async Task SetNewCacheEntry()
6666
{
6767
// arrange
6868
FetchDataDelegate<string, string> fetch = async keys =>
69-
await Task.FromResult(new Result<string>[0])
69+
await Task.FromResult(new IResult<string>[0])
7070
.ConfigureAwait(false);
7171
var options = new DataLoaderOptions<string>();
7272
var loader = new DataLoader<string, string>(options, fetch);
@@ -88,7 +88,7 @@ public async Task SetTwice()
8888
{
8989
// arrange
9090
FetchDataDelegate<string, string> fetch = async keys =>
91-
await Task.FromResult(new Result<string>[0])
91+
await Task.FromResult(new IResult<string>[0])
9292
.ConfigureAwait(false);
9393
var options = new DataLoaderOptions<string>();
9494
var loader = new DataLoader<string, string>(options, fetch);

src/Core.Tests/DataLoaderTests.cs

Lines changed: 32 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public void ConstructorANoException()
2727
{
2828
// arrange
2929
FetchDataDelegate<string, string> fetch = async keys =>
30-
await Task.FromResult(new Result<string>[0])
30+
await Task.FromResult(new IResult<string>[0])
3131
.ConfigureAwait(false);
3232

3333
// act
@@ -61,7 +61,7 @@ public void ConstructorBOptionsNull()
6161
{
6262
// arrange
6363
FetchDataDelegate<string, string> fetch = async keys =>
64-
await Task.FromResult(new Result<string>[0])
64+
await Task.FromResult(new IResult<string>[0])
6565
.ConfigureAwait(false);
6666
DataLoaderOptions<string> options = null;
6767

@@ -78,7 +78,7 @@ public void ConstructorBNoException()
7878
{
7979
// arrange
8080
FetchDataDelegate<string, string> fetch = async keys =>
81-
await Task.FromResult(new Result<string>[0])
81+
await Task.FromResult(new IResult<string>[0])
8282
.ConfigureAwait(false);
8383
var options = new DataLoaderOptions<string>();
8484

@@ -99,7 +99,7 @@ public void ClearNoException()
9999
{
100100
// arrange
101101
FetchDataDelegate<string, string> fetch = async keys =>
102-
await Task.FromResult(new Result<string>[0])
102+
await Task.FromResult(new IResult<string>[0])
103103
.ConfigureAwait(false);
104104
var options = new DataLoaderOptions<string>();
105105
var loader = new DataLoader<string, string>(options, fetch);
@@ -116,7 +116,7 @@ public async Task ClearAllEntries()
116116
{
117117
// arrange
118118
FetchDataDelegate<string, string> fetch = async keys =>
119-
await Task.FromResult(new Result<string>[0])
119+
await Task.FromResult(new IResult<string>[0])
120120
.ConfigureAwait(false);
121121
var options = new DataLoaderOptions<string>
122122
{
@@ -147,7 +147,7 @@ public async Task DispatchAsyncNoException()
147147
{
148148
// arrange
149149
FetchDataDelegate<string, string> fetch = async keys =>
150-
await Task.FromResult(new Result<string>[0])
150+
await Task.FromResult(new IResult<string>[0])
151151
.ConfigureAwait(false);
152152
var options = new DataLoaderOptions<string>();
153153
var loader = new DataLoader<string, string>(options, fetch);
@@ -164,7 +164,7 @@ await Task.FromResult(new Result<string>[0])
164164
public async Task DispatchAsyncNoBatching()
165165
{
166166
// arrange
167-
var expectedResult = Result<string>.Resolve("Bar");
167+
IResult<string> expectedResult = Result<string>.Resolve("Bar");
168168
FetchDataDelegate<string, string> fetch = async keys =>
169169
await Task.FromResult(new[] { expectedResult })
170170
.ConfigureAwait(false);
@@ -189,7 +189,7 @@ await Task.FromResult(new[] { expectedResult })
189189
public async Task DispatchAsyncManual()
190190
{
191191
// arrange
192-
var expectedResult = Result<string>.Resolve("Bar");
192+
IResult<string> expectedResult = Result<string>.Resolve("Bar");
193193
FetchDataDelegate<string, string> fetch = async keys =>
194194
await Task.FromResult(new[] { expectedResult })
195195
.ConfigureAwait(false);
@@ -213,7 +213,7 @@ await Task.FromResult(new[] { expectedResult })
213213
public async Task DispatchAsyncAuto()
214214
{
215215
// arrange
216-
var expectedResult = Result<string>.Resolve("Bar");
216+
IResult<string> expectedResult = Result<string>.Resolve("Bar");
217217
FetchDataDelegate<string, string> fetch = async keys =>
218218
await Task.FromResult(new[] { expectedResult })
219219
.ConfigureAwait(false);
@@ -240,7 +240,7 @@ public async Task DispatchAsyncKeysValuesNotMatching()
240240
{
241241
// arrange
242242
FetchDataDelegate<string, string> fetch = async keys =>
243-
await Task.FromResult(new Result<string>[0])
243+
await Task.FromResult(new IResult<string>[0])
244244
.ConfigureAwait(false);
245245
var options = new DataLoaderOptions<string>
246246
{
@@ -271,7 +271,7 @@ public void DisposeNoException()
271271
{
272272
// arrange
273273
FetchDataDelegate<string, string> fetch = async keys =>
274-
await Task.FromResult(new Result<string>[0])
274+
await Task.FromResult(new IResult<string>[0])
275275
.ConfigureAwait(false);
276276
var options = new DataLoaderOptions<string>();
277277
var loader = new DataLoader<string, string>(options, fetch);
@@ -288,7 +288,7 @@ public void DisposeNoExceptionNobatchingAndCaching()
288288
{
289289
// arrange
290290
FetchDataDelegate<string, string> fetch = async keys =>
291-
await Task.FromResult(new Result<string>[0])
291+
await Task.FromResult(new IResult<string>[0])
292292
.ConfigureAwait(false);
293293
var options = new DataLoaderOptions<string>
294294
{
@@ -313,7 +313,7 @@ public async Task LoadSingleKeyNull()
313313
{
314314
// arrange
315315
FetchDataDelegate<string, string> fetch = async keys =>
316-
await Task.FromResult(new Result<string>[0])
316+
await Task.FromResult(new IResult<string>[0])
317317
.ConfigureAwait(false);
318318
var options = new DataLoaderOptions<string>();
319319
var loader = new DataLoader<string, string>(options, fetch);
@@ -353,7 +353,7 @@ await Task.FromResult(new[] { Result<string>.Resolve("Bar") })
353353
public async Task LoadSingleResult()
354354
{
355355
// arrange
356-
var expectedResult = Result<string>.Resolve("Bar");
356+
IResult<string> expectedResult = Result<string>.Resolve("Bar");
357357
FetchDataDelegate<string, string> fetch = async keys =>
358358
await Task.FromResult(new[] { expectedResult })
359359
.ConfigureAwait(false);
@@ -375,9 +375,9 @@ await Task.FromResult(new[] { expectedResult })
375375
public async Task LoadSingleErrorResult()
376376
{
377377
// arrange
378-
var expectedResult = Result<string>.Resolve("Bar");
378+
IResult<string> expectedResult = Result<string>.Resolve("Bar");
379379
FetchDataDelegate<string, string> fetch = async keys =>
380-
await Task.FromResult(new Result<string>[0])
380+
await Task.FromResult(new IResult<string>[0])
381381
.ConfigureAwait(false);
382382
var options = new DataLoaderOptions<string>
383383
{
@@ -430,7 +430,8 @@ await Assert.ThrowsAsync<InvalidOperationException>(verify)
430430
[InlineData(10000, 1000000, 10, 0, true, false, 0)]
431431
[InlineData(10000, 1000000, 10, 100, false, true, 0)]
432432
[InlineData(10000, 1000000, 10, 0, false, false, 0)]
433-
[Theory(DisplayName = "LoadAsync: Runs integration tests with different settings")]
433+
[Theory(DisplayName = "LoadAsync: Runs integration tests with different settings",
434+
Skip = "Test execution takes too long on AppVayor")]
434435
public async Task LoadTest(int uniqueKeys, int maxRequests,
435436
int maxDelay, int maxBatchSize, bool caching, bool batching,
436437
int slidingExpirationInMilliseconds)
@@ -439,7 +440,7 @@ public async Task LoadTest(int uniqueKeys, int maxRequests,
439440
var random = new Random();
440441
FetchDataDelegate<Guid, int> fetch = async keys =>
441442
{
442-
var values = new List<Result<int>>(keys.Count);
443+
var values = new List<IResult<int>>(keys.Count);
443444

444445
foreach (Guid key in keys)
445446
{
@@ -508,7 +509,7 @@ public async Task LoadParamsKeysNull()
508509
{
509510
// arrange
510511
FetchDataDelegate<string, string> fetch = async k =>
511-
await Task.FromResult(new Result<string>[0])
512+
await Task.FromResult(new IResult<string>[0])
512513
.ConfigureAwait(false);
513514
var options = new DataLoaderOptions<string>();
514515
var loader = new DataLoader<string, string>(options, fetch);
@@ -528,7 +529,7 @@ public async Task LoadParamsZeroKeys()
528529
{
529530
// arrange
530531
FetchDataDelegate<string, string> fetch = async k =>
531-
await Task.FromResult(new Result<string>[0])
532+
await Task.FromResult(new IResult<string>[0])
532533
.ConfigureAwait(false);
533534
var options = new DataLoaderOptions<string>();
534535
var loader = new DataLoader<string, string>(options, fetch);
@@ -600,7 +601,7 @@ public async Task LoadCollectionKeysNull()
600601
{
601602
// arrange
602603
FetchDataDelegate<string, string> fetch = async k =>
603-
await Task.FromResult(new Result<string>[0])
604+
await Task.FromResult(new IResult<string>[0])
604605
.ConfigureAwait(false);
605606
var options = new DataLoaderOptions<string>();
606607
var loader = new DataLoader<string, string>(options, fetch);
@@ -620,7 +621,7 @@ public async Task LoadCollectionZeroKeys()
620621
{
621622
// arrange
622623
FetchDataDelegate<string, string> fetch = async k =>
623-
await Task.FromResult(new Result<string>[0])
624+
await Task.FromResult(new IResult<string>[0])
624625
.ConfigureAwait(false);
625626
var options = new DataLoaderOptions<string>();
626627
var loader = new DataLoader<string, string>(options, fetch);
@@ -696,7 +697,7 @@ public async Task LoadAutoDispatching()
696697
};
697698
FetchDataDelegate<string, string> fetch = async k =>
698699
{
699-
var values = new List<Result<string>>();
700+
var values = new List<IResult<string>>();
700701

701702
foreach (var key in k)
702703
{
@@ -735,7 +736,7 @@ public void RemoveKeyNull()
735736
{
736737
// arrange
737738
FetchDataDelegate<string, string> fetch = async keys =>
738-
await Task.FromResult(new Result<string>[0])
739+
await Task.FromResult(new IResult<string>[0])
739740
.ConfigureAwait(false);
740741
var options = new DataLoaderOptions<string>();
741742
var loader = new DataLoader<string, string>(options, fetch);
@@ -755,7 +756,7 @@ public void RemoveNoException()
755756
{
756757
// arrange
757758
FetchDataDelegate<string, string> fetch = async keys =>
758-
await Task.FromResult(new Result<string>[0])
759+
await Task.FromResult(new IResult<string>[0])
759760
.ConfigureAwait(false);
760761
var options = new DataLoaderOptions<string>();
761762
var loader = new DataLoader<string, string>(options, fetch);
@@ -773,7 +774,7 @@ public void RemoveEntry()
773774
{
774775
// arrange
775776
FetchDataDelegate<string, string> fetch = async keys =>
776-
await Task.FromResult(new Result<string>[0])
777+
await Task.FromResult(new IResult<string>[0])
777778
.ConfigureAwait(false);
778779
var options = new DataLoaderOptions<string>
779780
{
@@ -808,7 +809,7 @@ public void SetKeyNull()
808809
{
809810
// arrange
810811
FetchDataDelegate<string, string> fetch = async keys =>
811-
await Task.FromResult(new Result<string>[0])
812+
await Task.FromResult(new IResult<string>[0])
812813
.ConfigureAwait(false);
813814
var options = new DataLoaderOptions<string>();
814815
var loader = new DataLoader<string, string>(options, fetch);
@@ -827,7 +828,7 @@ public void SetValueNull()
827828
{
828829
// arrange
829830
FetchDataDelegate<string, string> fetch = async keys =>
830-
await Task.FromResult(new Result<string>[0])
831+
await Task.FromResult(new IResult<string>[0])
831832
.ConfigureAwait(false);
832833
var options = new DataLoaderOptions<string>();
833834
var loader = new DataLoader<string, string>(options, fetch);
@@ -846,7 +847,7 @@ public void SetNoException()
846847
{
847848
// arrange
848849
FetchDataDelegate<string, string> fetch = async keys =>
849-
await Task.FromResult(new Result<string>[0])
850+
await Task.FromResult(new IResult<string>[0])
850851
.ConfigureAwait(false);
851852
var options = new DataLoaderOptions<string>();
852853
var loader = new DataLoader<string, string>(options, fetch);
@@ -865,7 +866,7 @@ public async Task SetNewCacheEntry()
865866
{
866867
// arrange
867868
FetchDataDelegate<string, string> fetch = async keys =>
868-
await Task.FromResult(new Result<string>[0])
869+
await Task.FromResult(new IResult<string>[0])
869870
.ConfigureAwait(false);
870871
var options = new DataLoaderOptions<string>();
871872
var loader = new DataLoader<string, string>(options, fetch);
@@ -887,7 +888,7 @@ public async Task SetTwice()
887888
{
888889
// arrange
889890
FetchDataDelegate<string, string> fetch = async keys =>
890-
await Task.FromResult(new Result<string>[0])
891+
await Task.FromResult(new IResult<string>[0])
891892
.ConfigureAwait(false);
892893
var options = new DataLoaderOptions<string>();
893894
var loader = new DataLoader<string, string>(options, fetch);

0 commit comments

Comments
 (0)