Skip to content

Commit

Permalink
#43 test updates
Browse files Browse the repository at this point in the history
  • Loading branch information
MatthewBAllen committed Apr 19, 2024
1 parent 6b005bf commit 8f28a00
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 34 deletions.
17 changes: 15 additions & 2 deletions src/EssSharp.Abstractions/IEssServer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,24 @@
using System;
using System.IO;

using Microsoft.Extensions.Logging;

namespace EssSharp
{
/// <summary />
public interface IEssServer : IEssObject, IDisposable, IAsyncDisposable
{
#region Public Properties

/// <summary>
/// An <see cref="ILogger"/> responsible for logging information about <see cref="EssSharp" /> operations.
/// </summary>
public ILogger Logger { get; set; }

#endregion

#region Public Methods

/// <summary>
/// Creates a new Application and database with the given name and options
/// </summary>
Expand All @@ -26,8 +39,6 @@ public interface IEssServer : IEssObject, IDisposable, IAsyncDisposable
/// <param name="cancellationToken" />
public Task<IEssApplication> CreateApplicationAsync( string applicationName, string cubeName, EssDatabaseCreationOptions options = null, CancellationToken cancellationToken = default );

/////////////

/// <summary>
/// Creates a new application (and cube) from an existing server file.
/// </summary>
Expand Down Expand Up @@ -520,5 +531,7 @@ public interface IEssServer : IEssObject, IDisposable, IAsyncDisposable
/// <param name="allSessions">Whether to sign out all sessions associated with the <see cref="IEssServer"/> instance.</param>
/// <param name="cancellationToken" />
public Task SignOutAsync( bool allSessions = false, CancellationToken cancellationToken = default );

#endregion
}
}
55 changes: 26 additions & 29 deletions src/EssSharp.Integration/PerformServerOperationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -693,10 +693,7 @@ public async Task Essbase_AfterDefaultGrid_CanSubmitNewValueGrid()
defaultGrid.Selection = new List<EssGridSelection>() { new EssGridSelection(0, 0, 3, 4) };
await defaultGrid.KeepOnlyAsync();

if ( string.Equals(defaultGrid.Slice.Data.Ranges[0].Values[10], "680.0") )
defaultGrid.Slice.Data.Ranges[0].Values[11] = "678.0";
else
defaultGrid.Slice.Data.Ranges[0].Values[11] = "680.0";
defaultGrid.Slice.Data.Ranges[0].Values[11] = "680.0";

var submitGrid = await defaultGrid.SubmitAsync( );

Expand All @@ -708,6 +705,10 @@ public async Task Essbase_AfterDefaultGrid_CanSubmitNewValueGrid()

Assert.True(string.Equals("680.0", submitGrid.Slice.Data.Ranges[0].Values[11]) || string.Equals("680.0", submitGrid.Slice.Data.Ranges[0].Values[11]));

defaultGrid.Slice.Data.Ranges[0].Values[11] = "678.0";

submitGrid = await defaultGrid.SubmitAsync( );

/*
if ( string.Equals(defaultGrid.Slice.Data.Ranges[0].Values[10], "680.0") )
defaultGrid.Slice.Data.Ranges[0].Values[11] = "678.0";
Expand All @@ -734,7 +735,7 @@ public async Task Essbase_AfterDefaultGrid_CanZoomInWithSelectionAttributeGrid()

Assert.Equal(7, zoomInGrid.Slice.Rows);

Assert.True(string.Equals("24703.0", zoomInGrid.Slice.Data.Ranges[0].Values[9]));
Assert.True(string.Equals("24705.0", zoomInGrid.Slice.Data.Ranges[0].Values[9]));
}

[Fact(DisplayName = @"PerformServerFunctionTests - 29 - Essbase_AfterDefaultGrid_CanZoomOutWithSelectionAttributeGrid"), Priority(29)]
Expand Down Expand Up @@ -1286,23 +1287,18 @@ public async Task Essbase_AfterCubeCreation_CanTrackDataChanges()
await grid.RefreshAsync();

grid.Preferences.TrackDataChanges = true;
string newVal;

if ( string.Equals(grid.Slice.Data.Ranges[0].Values[9], "680.0") )
{
grid.Slice.Data.Ranges[0].Values[9] = "678.0";
newVal = "678.0";
}
else
{
grid.Slice.Data.Ranges[0].Values[9] = "680.0";
newVal = "680.0";
}
grid.Slice.Data.Ranges[0].Values[9] = "680.0";

await grid.SubmitAsync();

Assert.Equal("680.0", grid.Slice.Data.Ranges[0].Values[9]);

grid.Slice.Data.Ranges[0].Values[9] = "678.0";

await grid.SubmitAsync();

Assert.Equal(newVal, grid.Slice.Data.Ranges[0].Values[9]);
Assert.Equal("678.0", grid.Slice.Data.Ranges[0].Values[9]);
}

[Fact(DisplayName = @"PerformServerFunctionTests - 41 - Essbase_AfterCubeCreation_CanTrackDataChangesOnBiggerGrid"), Priority(41)]
Expand Down Expand Up @@ -1397,15 +1393,9 @@ public async Task Essbase_AfterCubeCreation_CanTrackDataChangesOnBiggerGrid()

grid.Preferences.TrackDataChanges = true;

if ( string.Equals(grid.Slice.Data.Ranges[0].Values[10], "680.0") )
grid.Slice.Data.Ranges[0].Values[10] = "678.0";
else
grid.Slice.Data.Ranges[0].Values[10] = "680.0";
grid.Slice.Data.Ranges[0].Values[10] = "680.0";

if ( string.Equals(grid.Slice.Data.Ranges[0].Values[17], "610.0") )
grid.Slice.Data.Ranges[0].Values[17] = "620.0";
else
grid.Slice.Data.Ranges[0].Values[17] = "610.0";
grid.Slice.Data.Ranges[0].Values[17] = "610.0";

await grid.SubmitAsync();

Expand Down Expand Up @@ -1436,6 +1426,12 @@ public async Task Essbase_AfterCubeCreation_CanTrackDataChangesOnBiggerGrid()
Assert.Equal("Cola", grid.DataChanges.DataChanges[1].DataPoints[2].Member);
Assert.Equal("New York", grid.DataChanges.DataChanges[1].DataPoints[3].Member);
Assert.Equal("Budget", grid.DataChanges.DataChanges[1].DataPoints[4].Member);

grid.Slice.Data.Ranges[0].Values[10] = "678.0";

grid.Slice.Data.Ranges[0].Values[17] = "620.0";

await grid.SubmitAsync();
}

[Fact(DisplayName = @"PerformServerFunctionTests - 42 - Essbase_AfterCubeCreation_CanTrackDataChangesMultipleColumnHeaders"), Priority(42)]
Expand Down Expand Up @@ -1543,14 +1539,15 @@ public async Task Essbase_AfterCubeCreation_CanTrackDataChangesMultipleColumnHea
else
grid.Slice.Data.Ranges[0].Values[21] = "1778.0";
*/
if ( string.Equals(grid.Slice.Data.Ranges[0].Values[21], "551.0") )
grid.Slice.Data.Ranges[0].Values[21] = "570";
else
grid.Slice.Data.Ranges[0].Values[21] = "551.0";
grid.Slice.Data.Ranges[0].Values[21] = "551.0";

await grid.SubmitAsync();

Assert.NotNull(grid.DataChanges);

grid.Slice.Data.Ranges[0].Values[21] = "570";

await grid.SubmitAsync();
}

[Fact(DisplayName = @"PerformServerFunctionTests - 43 - Essbase_AfterCubeCreation_CanExportAppToLcm"), Priority(43)]
Expand Down
10 changes: 7 additions & 3 deletions src/EssSharp.Integration/Setup/IntegrationTestBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -302,15 +302,19 @@ void ILogger.Log<TState>( Microsoft.Extensions.Logging.LogLevel logLevel, EventI
context ??= new EssSharpLogEventContext() { Path = "unknown" };

// create new file with name in _outputDirectory

var tenant = "EssSharp";
var type = (EssSharpLogEventType)eventId.Id;
var time = context.Time.Subtract(new DateTime(1970, 1, 1)).TotalSeconds;
var path = string.Join('_', context.Path
.Split('/')
.ToList()
.Where(e => !string.IsNullOrEmpty(e) && !e.Contains(":"))
.ToList()).Replace(":", "");
var extension = "json";

var fileName = $@"{tenant}.{context.Path}.{type}.{time:0.000}-{1}.request.{extension}";
var fileName = $@"{tenant}.{path}.{type}.{time:0.000}-{1}.request.{extension}";

using var file = File.Create($@"{_outputDirectory.FullName}\{Path.GetRandomFileName()}.yml");
using var file = File.Create($@"{_outputDirectory.FullName}\{fileName}");
file.Write(Encoding.UTF8.GetBytes(message));
}
}
Expand Down
13 changes: 13 additions & 0 deletions src/EssSharp/EssServer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
using System.Threading;
using System.Threading.Tasks;

using Microsoft.Extensions.Logging;

using EssSharp.Api;
using EssSharp.Client;
using EssSharp.Model;
Expand Down Expand Up @@ -93,6 +95,17 @@ public EssServer( string server, string username, string password )

#region IEssServer Members

/// <inheritdoc />
public ILogger Logger
{
get => Configuration?.Logger;
set
{
if ( Configuration is { } )
Configuration.Logger = value;
}
}

/// <inheritdoc />
/// <returns>An <see cref="IEssApplication"/> object.</returns>
public IEssApplication CreateApplication( string applicationName, string cubeName, EssDatabaseCreationOptions options = null ) => CreateApplicationAsync(applicationName, cubeName, options).GetAwaiter().GetResult();
Expand Down

0 comments on commit 8f28a00

Please sign in to comment.