refactor(streaming): extract landblock build factory
This commit is contained in:
parent
e4a9664f09
commit
5af101b2f1
4 changed files with 1361 additions and 794 deletions
|
|
@ -232,27 +232,45 @@ public sealed class LandblockBuildOriginTests
|
|||
}
|
||||
|
||||
[Fact]
|
||||
public void GameWindowBuildAndPublication_UseCapturedOriginInsteadOfLiveCenter()
|
||||
public void BuildFactoryAndGameWindowPublication_UseCapturedOriginInsteadOfLiveCenter()
|
||||
{
|
||||
string root = FindRepoRoot();
|
||||
string source = File.ReadAllText(Path.Combine(
|
||||
string gameWindowSource = File.ReadAllText(Path.Combine(
|
||||
root,
|
||||
"src",
|
||||
"AcDream.App",
|
||||
"Rendering",
|
||||
"GameWindow.cs"));
|
||||
string buildSection = Slice(
|
||||
source,
|
||||
"private AcDream.App.Streaming.LandblockBuild? BuildLandblockForStreaming(",
|
||||
"private void AdvanceLandblockPresentationRetirement(");
|
||||
string buildSource = File.ReadAllText(Path.Combine(
|
||||
root,
|
||||
"src",
|
||||
"AcDream.App",
|
||||
"Streaming",
|
||||
"LandblockBuildFactory.cs"));
|
||||
string publicationSection = Slice(
|
||||
source,
|
||||
gameWindowSource,
|
||||
"private void ApplyLoadedTerrainLocked(",
|
||||
"private void OnUpdate(double dt)");
|
||||
|
||||
Assert.Contains("request.Origin", buildSection, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("_liveCenterX", buildSection, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("_liveCenterY", buildSection, StringComparison.Ordinal);
|
||||
Assert.Contains("request.Origin", buildSource, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("_liveCenterX", buildSource, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("_liveCenterY", buildSource, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(
|
||||
"BuildLandblockForStreaming",
|
||||
gameWindowSource,
|
||||
StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(
|
||||
"BuildSceneryEntitiesForStreaming",
|
||||
gameWindowSource,
|
||||
StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(
|
||||
"BuildInteriorEntitiesForStreaming",
|
||||
gameWindowSource,
|
||||
StringComparison.Ordinal);
|
||||
Assert.DoesNotContain(
|
||||
"BuildPhysicsDatBundle",
|
||||
gameWindowSource,
|
||||
StringComparison.Ordinal);
|
||||
Assert.Contains("build.Origin.CenterX", publicationSection, StringComparison.Ordinal);
|
||||
Assert.Contains("build.Origin.CenterY", publicationSection, StringComparison.Ordinal);
|
||||
Assert.DoesNotContain("_liveCenterX", publicationSection, StringComparison.Ordinal);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue