Skip to content

Commit

Permalink
Fixed globalize resource visitor and added the test (#1756)
Browse files Browse the repository at this point in the history
* Fixed globalize resource visitor and added the test

* Fixed unit tests - RequiredResource is added to a different place, changin the auto-generated ids of controls
  • Loading branch information
tomasherceg authored Jan 12, 2024
1 parent ce78339 commit 955698c
Show file tree
Hide file tree
Showing 10 changed files with 124 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,6 @@ public override void VisitControl(ResolvedControl control)
base.VisitControl(control);
}

public override void VisitPropertyTemplate(ResolvedPropertyTemplate propertyTemplate)
{
Visit(propertyTemplate, propertyTemplate.Content, base.VisitPropertyTemplate);
}

public override void VisitPropertyBinding(ResolvedPropertyBinding propertyBinding)
{
var requiredGlobalizeProperty = propertyBinding.Binding.Binding
Expand Down
2 changes: 2 additions & 0 deletions src/Samples/Common/DotVVM.Samples.Common.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,8 @@
<None Remove="Views\FeatureSamples\CustomPrimitiveTypes\RouteLink.dothtml" />
<None Remove="Views\FeatureSamples\CustomPrimitiveTypes\TextBox.dothtml" />
<None Remove="Views\FeatureSamples\CustomPrimitiveTypes\UsedInControls.dothtml" />
<None Remove="Views\FeatureSamples\Formatting\AutoResourceInclusion.dothtml" />
<None Remove="Views\FeatureSamples\Formatting\AutoResourceInclusionMaster.dotmaster" />
<None Remove="Views\FeatureSamples\Formatting\ToStringGlobalFunctionBug.dothtml" />
<None Remove="Views\FeatureSamples\HotReload\ViewChanges.dothtml" />
<None Remove="Views\FeatureSamples\JavascriptTranslation\ArrayTranslation.dothtml" />
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DotVVM.Framework.ViewModel;
using DotVVM.Framework.Hosting;

namespace DotVVM.Samples.Common.ViewModels.FeatureSamples.Formatting
{
public class AutoResourceInclusionMasterViewModel : DotvvmViewModelBase
{

}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DotVVM.Framework.ViewModel;
using DotVVM.Framework.Hosting;

namespace DotVVM.Samples.Common.ViewModels.FeatureSamples.Formatting
{
public class AutoResourceInclusionViewModel : AutoResourceInclusionMasterViewModel
{
public List<Item> Items { get; set; }

public int Number { get; set; } = 15;

public override Task PreRender()
{
if (!Context.IsPostBack)
{
Items = new List<Item>()
{
new Item() { Id = 1, DateCreated = new DateTime(2020, 1, 2, 20, 3, 45) },
new Item() { Id = 2, DateCreated = new DateTime(2020, 1, 2, 21, 4, 46) },
new Item() { Id = 3, DateCreated = new DateTime(2020, 1, 2, 22, 5, 47) },
};
}
return base.PreRender();
}

public class Item
{
public int Id { get; set; }

public DateTime DateCreated { get; set; }
}

}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
@viewModel DotVVM.Samples.Common.ViewModels.FeatureSamples.Formatting.AutoResourceInclusionViewModel, DotVVM.Samples.Common
@masterPage Views/FeatureSamples/Formatting/AutoResourceInclusionMaster.dotmaster

<dot:Content ContentPlaceHolderID="MainContent">
<h1>Makes sure that Globalize resource is added correctly</h1>

<dot:AuthenticatedView>
<AuthenticatedTemplate>
{{value: Number}}
</AuthenticatedTemplate>
</dot:AuthenticatedView>

<dot:Repeater DataSource="{value: Items}">
<EmptyDataTemplate>
test
</EmptyDataTemplate>
<ItemTemplate>
<p>
<dot:RouteLink RouteName="RepeaterRouteLink-PageDetail" Param-Id="{value: Id}" Text="{value: Id}" />
<br />
{{value: DateCreated.ToString("g")}}
</p>
</ItemTemplate>
</dot:Repeater>

</dot:Content>
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
@viewModel DotVVM.Samples.Common.ViewModels.FeatureSamples.Formatting.AutoResourceInclusionMasterViewModel, DotVVM.Samples.Common

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>


<dot:ContentPlaceHolder ID="MainContent" />

</body>
</html>


Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 11 additions & 1 deletion src/Samples/Tests/Tests/Feature/FormattingTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,18 @@ public void Feature_Formatting_ToStringGlobalFunctionBug()
});
}

[Fact]
public void Feature_Formatting_AutoResourceInclusion()
{
RunInAllBrowsers(browser => {
browser.NavigateToUrl(SamplesRouteUrls.FeatureSamples_Formatting_AutoResourceInclusion);
browser.FindElements("p").ThrowIfDifferentCountThan(3);
});
}

public FormattingTests(ITestOutputHelper output) : base(output)
{
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,25 +29,25 @@

<!-- client rendering - implicit id -->
<div data-bind="foreach: { data: Items }">
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number), attr: { id: &quot;c24&quot;+'_'+$index()+'_'+&quot;client-div&quot; }"></div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number), attr: { id: &quot;c23&quot;+'_'+$index()+'_'+&quot;client-div&quot; }"></div>
</div>

<!-- server rendering - implicit id -->
<div data-bind="dotvvm-SSR-foreach: { data: Items }">
<!-- ko dotvvm-SSR-item: 0 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31_0_server-div">1</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30_0_server-div">1</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 1 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31_1_server-div">2</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30_1_server-div">2</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 2 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31_2_server-div">3</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30_2_server-div">3</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 3 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31_3_server-div">4</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30_3_server-div">4</div>

<!-- /ko -->
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,25 +29,25 @@

<!-- client rendering - implicit id -->
<div data-bind="foreach: { data: Items }">
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number), attr: { id: &quot;c24a0&quot;+'_'+$index()+'_'+&quot;client-div&quot; }"></div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number), attr: { id: &quot;c23a0&quot;+'_'+$index()+'_'+&quot;client-div&quot; }"></div>
</div>

<!-- server rendering - implicit id -->
<div data-bind="dotvvm-SSR-foreach: { data: Items }">
<!-- ko dotvvm-SSR-item: 0 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31a0_0_server-div">1</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30a0_0_server-div">1</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 1 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31a0_1_server-div">2</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30a0_1_server-div">2</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 2 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31a0_2_server-div">3</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30a0_2_server-div">3</div>

<!-- /ko -->
<!-- ko dotvvm-SSR-item: 3 -->
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c31a0_3_server-div">4</div>
<div data-bind="text: dotvvm.globalize.bindingNumberToString(Number)" id="c30a0_3_server-div">4</div>

<!-- /ko -->
</div>
Expand Down

0 comments on commit 955698c

Please sign in to comment.