Some checks failed
		
		
	
	Docs CI / lint-and-preview (push) Has been cancelled
				
			- Implemented RustFsArtifactObjectStore for managing artifacts in RustFS. - Added unit tests for RustFsArtifactObjectStore functionality. - Created a RustFS migrator tool to transfer objects from S3 to RustFS. - Introduced policy preview and report models for API integration. - Added fixtures and tests for policy preview and report functionality. - Included necessary metadata and scripts for cache_pkg package.
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System.Text;
 | |
| using StellaOps.Bench.ScannerAnalyzers.Baseline;
 | |
| using Xunit;
 | |
| 
 | |
| namespace StellaOps.Bench.ScannerAnalyzers.Tests;
 | |
| 
 | |
| public sealed class BaselineLoaderTests
 | |
| {
 | |
|     [Fact]
 | |
|     public async Task LoadAsync_ReadsCsvIntoDictionary()
 | |
|     {
 | |
|         var csv = """
 | |
|             scenario,iterations,sample_count,mean_ms,p95_ms,max_ms
 | |
|             node_monorepo_walk,5,4,9.4303,36.1354,45.0012
 | |
|             python_site_packages_walk,5,10,12.1000,18.2000,26.3000
 | |
|             """;
 | |
| 
 | |
|         var path = await WriteTempFileAsync(csv);
 | |
| 
 | |
|         var result = await BaselineLoader.LoadAsync(path, CancellationToken.None);
 | |
| 
 | |
|         Assert.Equal(2, result.Count);
 | |
|         var entry = Assert.Contains("node_monorepo_walk", result);
 | |
|         Assert.Equal(5, entry.Iterations);
 | |
|         Assert.Equal(4, entry.SampleCount);
 | |
|         Assert.Equal(9.4303, entry.MeanMs, 4);
 | |
|         Assert.Equal(36.1354, entry.P95Ms, 4);
 | |
|         Assert.Equal(45.0012, entry.MaxMs, 4);
 | |
|     }
 | |
| 
 | |
|     private static async Task<string> WriteTempFileAsync(string content)
 | |
|     {
 | |
|         var path = Path.Combine(Path.GetTempPath(), $"baseline-{Guid.NewGuid():N}.csv");
 | |
|         await File.WriteAllTextAsync(path, content, Encoding.UTF8);
 | |
|         return path;
 | |
|     }
 | |
| }
 |