Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #2032 Create DisplayName property of building block #2033

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions src/OSPSuite.Core/Domain/Builder/BuildingBlock.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ public interface IBuildingBlock : IObjectBase, IWithCreationMetaData
/// (Individual, Expressions)
/// </summary>
Module Module { get; set; }

string DisplayName { get; }
}

/// <summary>
Expand All @@ -43,6 +45,13 @@ public abstract class BuildingBlock : ObjectBase, IBuildingBlock
public CreationMetaData Creation { get; set; }
public Module Module { get; set; }

public string DisplayName => Module != null ? $"{Module.Name} - {Name}" : Name;

public override string ToString()
{
return DisplayName;
}

public void AddFormula(IFormula formula)
{
FormulaCache.Add(formula);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ protected override void Context()
}

[Observation]
public void Shoukld_return_the_differences()
public void Should_return_the_differences()
{
_report.Count.ShouldBeEqualTo(2);
}
Expand Down
38 changes: 37 additions & 1 deletion tests/OSPSuite.Core.IntegrationTests/SpatialStructureSpecs.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using OSPSuite.BDDHelper;
using OSPSuite.BDDHelper.Extensions;
using OSPSuite.Core.Domain;
using OSPSuite.Core.Domain.Builder;
using OSPSuite.Core.Domain.Formulas;
using OSPSuite.Core.Domain.Services;
Expand All @@ -9,7 +10,7 @@

namespace OSPSuite.Core
{
internal abstract class concern_for_SpatialStructure : ContextForIntegration<SpatialStructure>
public abstract class concern_for_SpatialStructure : ContextForIntegration<SpatialStructure>
{
protected SimulationConfiguration _simulationConfiguration;
protected SimulationBuilder _simulationBuilder;
Expand All @@ -27,6 +28,41 @@ protected override void Context()
}
}

public class When_getting_the_caption_of_a_building_block_without_a_module : concern_for_SpatialStructure
{
protected override void Context()
{
base.Context();
sut.Name = "spatialStructure";
}

[Observation]
public void the_display_name_is_only_the_building_block_name()
{
sut.DisplayName.ShouldBeEqualTo("spatialStructure");
}
}

public class When_getting_the_caption_of_a_building_block_within_a_module : concern_for_SpatialStructure
{
private Module _module;

protected override void Context()
{
base.Context();
sut.Name = "spatialStructure";
_module = new Module().WithName("moduleName");
_module.Add(sut);
}

[Observation]
public void the_display_name_contains_the_module_name_and_the_building_block_name()
{
sut.DisplayName.Contains("moduleName").ShouldBeTrue();
sut.DisplayName.Contains("spatialStructure").ShouldBeTrue();
}
}

internal class When_told_to_update_properties_from_a_source_spatial_structure_with_clone_manager_for_building_blocks : concern_for_SpatialStructure
{
private SpatialStructure _sourceSpatialStructure;
Expand Down