Skip to content

Commit b411c12

Browse files
Merge pull request #135 from IndicoDataSolutions/nate/resolve_unit_tests
[CAT-892] resolve unit tests
2 parents c972c6c + 3244f76 commit b411c12

10 files changed

Lines changed: 41 additions & 30 deletions

File tree

IndicoV2.Abstractions/Submissions/Models/SubmissionStatus.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
public enum SubmissionStatus
44
{
55
PROCESSING,
6-
FAILED,
7-
COMPLETE,
8-
PENDING_ADMIN_REVIEW,
6+
PENDING_AUTO_REVIEW,
97
PENDING_REVIEW,
10-
PENDING_AUTO_REVIEW
8+
PENDING_ADMIN_REVIEW,
9+
COMPLETE,
10+
FAILED
1111
}
1212
}

IndicoV2.IntegrationTests/DataSets/DataSetClientTests.cs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ public class DataSetClientTests
1717
private DataHelper _dataHelper;
1818
private IndicoConfigs _indicoConfigs;
1919
private int _dataSetId;
20+
private int _documentDataSetId;
21+
private int _csvDataSetId;
2022

2123
[SetUp]
2224
public async Task SetUp()
@@ -29,12 +31,16 @@ public async Task SetUp()
2931
var _rawDataSetId = _indicoConfigs.DatasetId;
3032
if (_rawDataSetId == 0)
3133
{
32-
var dataset = (await _dataHelper.DataSets().GetAny());
34+
var dataset = await _dataHelper.DataSets().GetAny();
3335
_dataSetId = dataset.Id;
36+
_documentDataSetId = _dataSetId;
37+
_csvDataSetId = _dataSetId;
3438
}
3539
else
3640
{
3741
_dataSetId = _rawDataSetId;
42+
_documentDataSetId = _indicoConfigs.DocumentDatasetId;
43+
_csvDataSetId = _indicoConfigs.CsvDatasetId;
3844
}
3945
}
4046

@@ -88,15 +94,14 @@ public async Task ProcessFiles_ShouldStartProcessing()
8894
{
8995
// Arrange
9096
var files = new[] {_dataHelper.Files().GetSampleFilePath()};
91-
await _dataSetClient.AddFilesAsync(_dataSetId, files, default);
97+
await _dataSetClient.AddFilesAsync(_documentDataSetId, files, default);
9298
var downloadedFiles =
93-
(await _dataSetClient.FileUploadStatusAsync(_dataSetId, default))
99+
(await _dataSetClient.FileUploadStatusAsync(_documentDataSetId, default))
94100
.Dataset.Files
95101
.Where(f => f.Status == FileStatus.Downloaded)
96102
.Select(f => f.Id.Value);
97-
98103
// Act
99-
var result = await _dataSetClient.ProcessFileAsync(_dataSetId, downloadedFiles, default);
104+
var result = await _dataSetClient.ProcessFileAsync(_documentDataSetId, downloadedFiles, default);
100105

101106
// Assert
102107
result.Should().NotBeNull();
@@ -107,15 +112,14 @@ public async Task ProcessCsv_ShouldStartProcessing()
107112
{
108113
// Arrange
109114
var files = new[] { _dataHelper.Files().GetSampleCsvPath() };
110-
await _dataSetClient.AddFilesAsync(_dataSetId, files, default);
115+
await _dataSetClient.AddFilesAsync(_csvDataSetId, files, default);
111116
var downloadedFiles =
112-
(await _dataSetClient.FileUploadStatusAsync(_dataSetId, default))
117+
(await _dataSetClient.FileUploadStatusAsync(_csvDataSetId, default))
113118
.Dataset.Files
114119
.Where(f => f.Status == FileStatus.Downloaded)
115120
.Select(f => f.Id.Value);
116-
117121
// Act
118-
var result = await _dataSetClient.ProcessCsvAsync(_dataSetId, downloadedFiles, default);
122+
var result = await _dataSetClient.ProcessCsvAsync(_csvDataSetId, downloadedFiles, default);
119123

120124
// Assert
121125
result.Should().NotBeNull();

IndicoV2.IntegrationTests/Submissions/SubmissionClientTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public async Task CreateAsync_ShouldCreateSubmission_FromFilePath()
7777
var filePath = _dataHelper.Files().GetSampleFilePath();
7878

7979
// Act
80-
var submissionIds = await _submissionsClient.CreateAsync(_workflowId, new[] { filePath });
80+
var submissionIds = await _submissionsClient.CreateAsync(_workflowId, paths: new[] { filePath });
8181

8282
// Assert
8383
var submissionId = submissionIds.Single();
@@ -91,13 +91,13 @@ public async Task CreateAsync_ShouldCreateSubmission_FromUri()
9191
var uri = _dataHelper.Uris().GetSampleUri();
9292

9393
// Act
94-
var submissionIds = await _submissionsClient.CreateAsync(_workflowId, new[] { uri });
94+
var submissionIds = await _submissionsClient.CreateAsync(_workflowId, uris: new[] { uri });
9595

9696
// Assert
9797
var submissionId = submissionIds.Single();
9898
submissionId.Should().BeGreaterThan(0);
9999
}
100-
100+
101101
[Test]
102102
public async Task GetAsync_ShouldFetchSubmission()
103103
{

IndicoV2.IntegrationTests/Utils/Configs/IndicoConfigs.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ internal class IndicoConfigs
88

99
public int DatasetId => ParseEnvVar("INDICO_TEST_DATASET_ID");
1010

11+
public int DocumentDatasetId => ParseEnvVar("INDICO_TEST_DOCUMENT_DATASET_ID");
12+
public int CsvDatasetId => ParseEnvVar("INDICO_TEST_CSV_DATASET_ID");
13+
1114
public int ModelGroupId => ParseEnvVar("INDICO_TEST_MODELGROUP_ID");
1215

1316
public static int ParseEnvVar(string varName)
Binary file not shown.

IndicoV2.StrawberryShake/DataSets/DataSetSsClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public Task<IDataSetGetDatasetsResult> ListAsync(CancellationToken cancellationT
4040

4141
public Task<IDataSetGetDatasetsFullResult> ListFullAsync(int? limit, CancellationToken cancellationToken) =>
4242
ExecuteAsync(() => _services.GetRequiredService<DataSetGetDatasetsFullQuery>().ExecuteAsync(
43-
limit,
43+
limit == null ? 100 : limit,
4444
cancellationToken));
4545
}
4646
}

IndicoV2.StrawberryShake/Exceptions/ErrorHandlingWrapper.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ protected async Task<TResult> ExecuteAsync<TResult>(Func<Task<IOperationResult<T
1111
where TResult : class
1212
{
1313
var result = await executeAsync();
14-
1514
if (result.Errors != null && result.Errors.Any())
1615
{
1716
throw new GraphQlException(result);

IndicoV2.StrawberryShake/Submissions/SubmissionSsClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public async Task<IEnumerable<int>> CreateUri(int workflowId, IEnumerable<Uri> u
2020
CancellationToken cancellationToken = default, SubmissionResultVersion? resultsFileVersion = null) =>
2121
(await ExecuteAsync(async () => await _services.GetRequiredService<WorkflowUrlSubmissionMutation>().ExecuteAsync(
2222
workflowId,
23-
(IReadOnlyList<string>)uris,
23+
uris.Select(s => s.ToString()).ToList(),
2424
resultsFileVersion,
2525
cancellationToken
2626
)))

IndicoV2/Ocr/OcrClient.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ internal async Task<JArray> Upload(List<string> filePaths)
3333
public async Task<string> ExtractDocumentAsync(string filePath, DocumentExtractionPreset preset, CancellationToken cancellationToken)
3434
{
3535
JArray fileMetadata;
36-
var files = new List<object>();
36+
var files = new List<FileInput>();
3737
fileMetadata = await Upload(new List<string> { filePath });
3838
foreach (JObject uploadMeta in fileMetadata)
3939
{
@@ -44,10 +44,10 @@ public async Task<string> ExtractDocumentAsync(string filePath, DocumentExtracti
4444
{ "upload_type", (string)uploadMeta.GetValue("upload_type") }
4545
};
4646

47-
var file = new
47+
var file = new FileInput
4848
{
49-
filename = (string)uploadMeta.GetValue("name"),
50-
filemeta = meta.ToString()
49+
Filename = (string)uploadMeta.GetValue("name"),
50+
Filemeta = meta.ToString()
5151
};
5252

5353
files.Add(file);
@@ -62,7 +62,7 @@ public async Task<string> ExtractDocumentAsync(string filePath, DocumentExtracti
6262
return job.DocumentExtraction.JobIds.First();
6363
}
6464
public async Task<string> GetExtractionResultAsync(Uri documentUri, CancellationToken cancellationToken) =>
65-
(await GetExtractionResultAsync<JToken>(documentUri, cancellationToken)).Value<string>("text");
65+
(await GetExtractionResultAsync<JToken>(documentUri, cancellationToken)).ToString();
6666

6767
public async Task<TResult> GetExtractionResultAsync<TResult>(Uri documentUri, CancellationToken cancellationToken)
6868
{

IndicoV2/Submissions/SubmissionsClient.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ public async Task<IEnumerable<int>> CreateAsync(int workflowId, IEnumerable<Uri>
6868
await _strawberryShakeClient.Submissions().CreateUri(workflowId, uris, cancellationToken);
6969

7070
public async Task<IEnumerable<int>> CreateAsync(int workflowId, IEnumerable<string> paths,
71-
CancellationToken cancellationToken, SubmissionResultsFileVersion? resultsFileVersion = null) {
71+
CancellationToken cancellationToken, SubmissionResultsFileVersion? resultsFileVersion = null)
72+
{
7273
var filesToUpload = new List<(string Name, Stream content)>();
7374
foreach (var path in paths)
7475
{
@@ -83,12 +84,16 @@ public async Task<IEnumerable<int>> CreateAsync(int workflowId, IEnumerable<stri
8384
}
8485

8586
}
86-
return await _strawberryShakeClient.Submissions().Create(workflowId, (IEnumerable<(string Name, string Meta)>)filesToUpload, cancellationToken, (SubmissionResultVersion?)resultsFileVersion);
87+
return await CreateAsync(workflowId, filesToUpload: filesToUpload, cancellationToken, resultsFileVersion);
8788
}
8889

8990
[Obsolete("This is the Legacy version and will be deprecated. Please use ListAsync instead.")]
9091
public async Task<IEnumerable<ISubmission>> ListAsync(IEnumerable<int> submissionIds, IEnumerable<int> workflowIds, IFilter filters, int limit = 1000,
91-
CancellationToken cancellationToken = default) => (IEnumerable<ISubmission>)await ListAsync(submissionIds, workflowIds, filters, null, limit, cancellationToken);
92+
CancellationToken cancellationToken = default)
93+
{
94+
var result = await ListAsync(submissionIds, workflowIds, filters, null, limit, cancellationToken);
95+
return result.Data;
96+
}
9297

9398

9499
public async Task<IHasCursor<IEnumerable<ISubmission>>> ListAsync(IEnumerable<int> submissionIds, IEnumerable<int> workflowIds, IFilter filters, int? after, int limit = 1000, CancellationToken cancellationToken = default)
@@ -116,14 +121,14 @@ public async Task<IHasCursor<IEnumerable<ISubmission>>> ListAsync(IEnumerable<in
116121
public async Task<ISubmission> GetAsync(int submissionId, CancellationToken cancellationToken = default)
117122
{
118123
var result = await _strawberryShakeClient.Submissions().Get(submissionId, cancellationToken);
119-
if (!Enum.TryParse(result.Status.ToString().ToUpper(),out Models.SubmissionStatus parsed))
124+
if (!Enum.IsDefined(typeof(StrawberryShake.SubmissionStatus), result.Status))
120125
{
121126
throw new NotSupportedException($"Cannot read submission status: {result.Status}");
122127
}
123128
return new Submission
124129
{
125130
Id = result.Id ?? 0,
126-
Status = parsed,
131+
Status = (Models.SubmissionStatus) result.Status,
127132
DatasetId = result.DatasetId ?? 0,
128133
WorkflowId = result.WorkflowId ?? 0,
129134
InputFile = result.InputFile,
@@ -141,7 +146,7 @@ public async Task<string> GenerateSubmissionResultAsync(int submissionId, Cancel
141146
public async Task<ISubmission> MarkSubmissionAsRetrieved(int submissionId, bool retrieved = true, CancellationToken cancellationToken = default)
142147
{
143148
var resultId = await _strawberryShakeClient.Submissions().MarkRetrieved(submissionId, retrieved, cancellationToken);
144-
var result = await _strawberryShakeClient.Submissions().List((IReadOnlyList<int?>)new List<int>(submissionId).AsReadOnly(), default, default, default, default, cancellationToken);
149+
var result = await _strawberryShakeClient.Submissions().List(new List<int?>(submissionId).AsReadOnly(), default, default, default, default, cancellationToken);
145150
return new SubmissionSs(result?.Submissions?[0]);
146151
}
147152

0 commit comments

Comments
 (0)