Skip to content

Commit ad23f89

Browse files
authored
Merge pull request #1 from Heroes-Profile/Rename
fix: rename to Heroesprofile
2 parents 7ca1f6d + 07ae292 commit ad23f89

File tree

73 files changed

+423
-370
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+423
-370
lines changed

.github/workflows/pr_validation.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,4 @@ jobs:
1717
uses: actions/setup-dotnet@v1
1818
with:
1919
dotnet-version: ${{ matrix.dotnet }}
20-
- run: dotnet test Hotsapi.Uploader.Common.Test
20+
- run: dotnet test Heroesprofile.Uploader.Common.Test

Hotsapi.Uploader.Common.Test/Hotsapi.Uploader.Common.Test.csproj renamed to Heroesprofile.Uploader.Common.Test/Heroesprofile.Uploader.Common.Test.csproj

+6-2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
<TargetFramework>netcoreapp3.0</TargetFramework>
55

66
<IsPackable>false</IsPackable>
7+
8+
<AssemblyName>Heroesprofile.Uploader.Common.Test</AssemblyName>
9+
10+
<RootNamespace>Heroesprofile.Uploader.Common.Test</RootNamespace>
711
</PropertyGroup>
812

913
<ItemGroup>
@@ -13,8 +17,8 @@
1317
<PackageReference Include="coverlet.collector" Version="1.0.1" />
1418
</ItemGroup>
1519

16-
<ItemGroup>
17-
<ProjectReference Include="..\Hotsapi.Uploader.Common\Hotsapi.Uploader.Common.csproj" />
20+
<ItemGroup>
21+
<ProjectReference Include="..\Heroesprofile.Uploader.Common\Heroesprofile.Uploader.Common.csproj" />
1822
</ItemGroup>
1923

2024
</Project>

Hotsapi.Uploader.Common.Test/ManagerTests.cs renamed to Heroesprofile.Uploader.Common.Test/ManagerTests.cs

+102-102
Original file line numberDiff line numberDiff line change
@@ -3,107 +3,107 @@
33
using System.Collections.Generic;
44
using System.Threading.Tasks;
55

6-
namespace Hotsapi.Uploader.Common.Test
6+
namespace Heroesprofile.Uploader.Common.Test
77
{
88
[TestClass]
99
public partial class ManagerTests
10-
{
11-
private Task ShortRandomDelay()
12-
{
13-
var r = new Random();
14-
var delay = r.Next(100, 200);
15-
return Task.Delay(delay);
16-
}
17-
private static IEnumerable<ReplayFile> ThreeInOrder
18-
{
19-
get {
20-
var one = new ReplayFile("one") {
21-
Created = new DateTime(2020, 1, 1, 0, 0, 1)
22-
};
23-
var two = new ReplayFile("two") {
24-
Created = new DateTime(2020, 1, 1, 0, 0, 10)
25-
};
26-
var three = new ReplayFile("three") {
27-
Created = new DateTime(2020, 1, 1, 0, 0, 20)
28-
};
29-
var initialFiles = new List<ReplayFile>() { one, two, three };
30-
return initialFiles;
31-
}
10+
{
11+
private Task ShortRandomDelay()
12+
{
13+
var r = new Random();
14+
var delay = r.Next(100, 200);
15+
return Task.Delay(delay);
16+
}
17+
private static IEnumerable<ReplayFile> ThreeInOrder
18+
{
19+
get {
20+
var one = new ReplayFile("one") {
21+
Created = new DateTime(2020, 1, 1, 0, 0, 1)
22+
};
23+
var two = new ReplayFile("two") {
24+
Created = new DateTime(2020, 1, 1, 0, 0, 10)
25+
};
26+
var three = new ReplayFile("three") {
27+
Created = new DateTime(2020, 1, 1, 0, 0, 20)
28+
};
29+
var initialFiles = new List<ReplayFile>() { one, two, three };
30+
return initialFiles;
31+
}
3232
}
3333

3434
[TestMethod]
3535
[Ignore("Known intermittant failure: multiple uploads are started in parallel and don't always start in order")]
36-
public async Task InitialFilesStartInOrder()
37-
{
38-
var initialFiles = ThreeInOrder;
39-
36+
public async Task InitialFilesStartInOrder()
37+
{
38+
var initialFiles = ThreeInOrder;
39+
4040
var manager = new Manager(new MockStorage(initialFiles));
41-
var uploadTester = new MockUploader();
42-
43-
var promise = new TaskCompletionSource<int>();
44-
Task done = promise.Task;
45-
46-
var uploadsSeen = 0;
47-
var l = new object();
48-
ReplayFile lastUploadStarted = null;
49-
uploadTester.SetUploadCallback(async rf => {
50-
if (lastUploadStarted != null) {
51-
try {
52-
Assert.IsTrue(rf.Created >= lastUploadStarted.Created, $"upload started out of order, {lastUploadStarted} started after {rf}");
53-
} catch (Exception e) {
54-
promise.TrySetException(e);
55-
}
56-
}
57-
lastUploadStarted = rf;
58-
await ShortRandomDelay();
59-
var isDone = false;
60-
lock (l) {
61-
uploadsSeen++;
62-
isDone = uploadsSeen >= 3;
63-
}
64-
if (isDone) {
65-
promise.TrySetResult(uploadsSeen);
66-
}
41+
var uploadTester = new MockUploader();
42+
43+
var promise = new TaskCompletionSource<int>();
44+
Task done = promise.Task;
45+
46+
var uploadsSeen = 0;
47+
var l = new object();
48+
ReplayFile lastUploadStarted = null;
49+
uploadTester.SetUploadCallback(async rf => {
50+
if (lastUploadStarted != null) {
51+
try {
52+
Assert.IsTrue(rf.Created >= lastUploadStarted.Created, $"upload started out of order, {lastUploadStarted} started after {rf}");
53+
} catch (Exception e) {
54+
promise.TrySetException(e);
55+
}
56+
}
57+
lastUploadStarted = rf;
58+
await ShortRandomDelay();
59+
var isDone = false;
60+
lock (l) {
61+
uploadsSeen++;
62+
isDone = uploadsSeen >= 3;
63+
}
64+
if (isDone) {
65+
promise.TrySetResult(uploadsSeen);
66+
}
6767
});
6868

6969
manager.Start(new NoNewFilesMonitor(), new MockAnalizer(), uploadTester);
7070
await done;
71-
}
72-
73-
74-
71+
}
72+
73+
74+
7575
[TestMethod]
7676
[Ignore("Known intermittant failure: multiple uploads are started in parallel and don't always end in order")]
77-
public async Task InitialFilesEndInorder() {
78-
var initialFiles = ThreeInOrder;
79-
77+
public async Task InitialFilesEndInorder() {
78+
var initialFiles = ThreeInOrder;
79+
8080
var manager = new Manager(new MockStorage(initialFiles));
81-
var uploadTester = new MockUploader();
82-
var promise = new TaskCompletionSource<int>();
83-
Task done = promise.Task;
84-
85-
var uploadsSeen = 0;
86-
var l = new object();
87-
ReplayFile lastUploadFinished = null;
88-
uploadTester.SetUploadCallback(async rf => {
89-
await ShortRandomDelay();
90-
if (lastUploadFinished != null) {
91-
try {
92-
Assert.IsTrue(rf.Created >= lastUploadFinished.Created, $"upload completed out of order, {lastUploadFinished} completed after {rf}");
93-
}
94-
catch (Exception e) {
95-
promise.TrySetException(e);
96-
}
97-
}
98-
lastUploadFinished = rf;
99-
var isDone = false;
100-
lock (l) {
101-
uploadsSeen++;
102-
isDone = uploadsSeen >= 3;
103-
}
104-
if (isDone) {
105-
promise.TrySetResult(uploadsSeen);
106-
}
81+
var uploadTester = new MockUploader();
82+
var promise = new TaskCompletionSource<int>();
83+
Task done = promise.Task;
84+
85+
var uploadsSeen = 0;
86+
var l = new object();
87+
ReplayFile lastUploadFinished = null;
88+
uploadTester.SetUploadCallback(async rf => {
89+
await ShortRandomDelay();
90+
if (lastUploadFinished != null) {
91+
try {
92+
Assert.IsTrue(rf.Created >= lastUploadFinished.Created, $"upload completed out of order, {lastUploadFinished} completed after {rf}");
93+
}
94+
catch (Exception e) {
95+
promise.TrySetException(e);
96+
}
97+
}
98+
lastUploadFinished = rf;
99+
var isDone = false;
100+
lock (l) {
101+
uploadsSeen++;
102+
isDone = uploadsSeen >= 3;
103+
}
104+
if (isDone) {
105+
promise.TrySetResult(uploadsSeen);
106+
}
107107
});
108108

109109
manager.Start(new NoNewFilesMonitor(), new MockAnalizer(), uploadTester);
@@ -112,23 +112,23 @@ public async Task InitialFilesEndInorder() {
112112

113113
[TestMethod]
114114
public async Task AllInitialFilesProcessed()
115-
{
116-
var initialFiles = ThreeInOrder;
117-
115+
{
116+
var initialFiles = ThreeInOrder;
117+
118118
var manager = new Manager(new MockStorage(initialFiles));
119-
var uploadTester = new MockUploader();
120-
var done = new TaskCompletionSource<int>();
121-
122-
var uploadsSeen = 0;
123-
object l = new object();
124-
uploadTester.SetUploadCallback(async rf => {
125-
await ShortRandomDelay();
126-
lock (l) {
127-
uploadsSeen++;
128-
if (uploadsSeen >= 3) {
129-
done.SetResult(uploadsSeen);
130-
}
131-
}
119+
var uploadTester = new MockUploader();
120+
var done = new TaskCompletionSource<int>();
121+
122+
var uploadsSeen = 0;
123+
object l = new object();
124+
uploadTester.SetUploadCallback(async rf => {
125+
await ShortRandomDelay();
126+
lock (l) {
127+
uploadsSeen++;
128+
if (uploadsSeen >= 3) {
129+
done.SetResult(uploadsSeen);
130+
}
131+
}
132132
});
133133

134134
manager.Start(new NoNewFilesMonitor(), new MockAnalizer(), uploadTester);
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
1-
using Heroes.ReplayParser;
1+
using Heroes.ReplayParser;
2+
using Newtonsoft.Json;
23

3-
namespace Hotsapi.Uploader.Common.Test
4-
{
4+
namespace Heroesprofile.Uploader.Common.Test
5+
{
56
public partial class ManagerTests
67
{
7-
private class MockAnalizer : IAnalyzer
8-
{
9-
public int MinimumBuild { get; set; }
10-
public Replay Analyze(ReplayFile file) => new Replay();
11-
public string GetFingerprint(Replay replay) => "dummy fingerprint";
8+
private class MockAnalizer : IAnalyzer
9+
{
10+
public int MinimumBuild { get; set; }
11+
public Replay Analyze(ReplayFile file) => new Replay();
12+
public string GetFingerprint(Replay replay) => "dummy fingerprint";
13+
1214
}
1315
}
1416
}
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
using System.Collections.Generic;
22

3-
namespace Hotsapi.Uploader.Common.Test
4-
{
3+
namespace Heroesprofile.Uploader.Common.Test
4+
{
55
public partial class ManagerTests
66
{
7-
private class MockStorage : IReplayStorage
8-
{
9-
private IEnumerable<ReplayFile> InitialFiles { get; }
10-
public MockStorage(IEnumerable<ReplayFile> initialFiles) => InitialFiles = initialFiles;
11-
public IEnumerable<ReplayFile> Load() => InitialFiles;
12-
public void Save(IEnumerable<ReplayFile> files) { }
7+
private class MockStorage : IReplayStorage
8+
{
9+
private IEnumerable<ReplayFile> InitialFiles { get; }
10+
public MockStorage(IEnumerable<ReplayFile> initialFiles) => InitialFiles = initialFiles;
11+
public IEnumerable<ReplayFile> Load() => InitialFiles;
12+
public void Save(IEnumerable<ReplayFile> files) { }
1313
}
1414
}
1515
}

Hotsapi.Uploader.Common.Test/MockUploader.cs renamed to Heroesprofile.Uploader.Common.Test/MockUploader.cs

+23-16
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,41 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Threading.Tasks;
4+
using Heroes.ReplayParser;
45

5-
namespace Hotsapi.Uploader.Common.Test
6-
{
6+
namespace Heroesprofile.Uploader.Common.Test
7+
{
78
public partial class ManagerTests
89
{
910
private class MockUploader : IUploader
1011
{
1112
public bool UploadToHotslogs { get; set; }
1213

1314
private Func<ReplayFile, Task> UploadCallback = _ => Task.CompletedTask;
14-
public void SetUploadCallback(Func<ReplayFile, Task> onUpload)
15-
{
16-
var old = UploadCallback;
17-
18-
UploadCallback = async (ReplayFile file) => {
19-
await old(file);
20-
await onUpload(file);
21-
};
22-
}
15+
public void SetUploadCallback(Func<ReplayFile, Task> onUpload)
16+
{
17+
var old = UploadCallback;
18+
19+
UploadCallback = async (ReplayFile file) => {
20+
await old(file);
21+
await onUpload(file);
22+
};
23+
}
2324

2425
public Task CheckDuplicate(IEnumerable<ReplayFile> replays) => Task.CompletedTask;
2526
public Task<int> GetMinimumBuild() => Task.FromResult(1);
26-
public Task Upload(ReplayFile file)
27-
{
28-
UploadCallback(file);
29-
return Task.CompletedTask;
27+
public Task Upload(Replay replay_results, ReplayFile file)
28+
{
29+
UploadCallback(file);
30+
return Task.CompletedTask;
3031
}
31-
public async Task<UploadStatus> Upload(string file)
32+
public async Task<UploadStatus> Upload(Replay replay_results, string file)
33+
{
34+
await Task.Delay(100);
35+
return UploadStatus.Success;
36+
}
37+
38+
public async Task<UploadStatus> Upload(Replay replay_results, string fingerprint, string file)
3239
{
3340
await Task.Delay(100);
3441
return UploadStatus.Success;
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
using System;
22
using System.Collections.Generic;
3-
using System.Linq;
3+
using System.Linq;
44

5-
namespace Hotsapi.Uploader.Common.Test
6-
{
5+
namespace Heroesprofile.Uploader.Common.Test
6+
{
77
public partial class ManagerTests
88
{
9-
private class NoNewFilesMonitor : IMonitor
10-
{
11-
public event EventHandler<EventArgs<string>> ReplayAdded;
12-
13-
public IEnumerable<string> ScanReplays() => Enumerable.Empty<string>();
14-
public void Start() { }
15-
public void Stop() { }
16-
}
9+
private class NoNewFilesMonitor : IMonitor
10+
{
11+
public event EventHandler<EventArgs<string>> ReplayAdded;
12+
13+
public IEnumerable<string> ScanReplays() => Enumerable.Empty<string>();
14+
public void Start() { }
15+
public void Stop() { }
16+
}
1717
}
1818
}

0 commit comments

Comments
 (0)