Commit Graph

212 Commits

Author SHA1 Message Date
Jass Bagga eda5028cf4 Add TagHelperComponentTagHelper
Addresses #5728
2017-03-29 11:29:24 -07:00
Pranav K b22326323a Add properties to Page and PageModel
Fixes #6008
2017-03-28 13:26:38 -07:00
Pranav K e7101f248a Support model binding to Razor Pages properties on page and PageModel classes
Fixes #5952
2017-03-24 07:45:19 -07:00
Pranav K badb6ce8e5 Remove net451 as a cross-compile target 2017-03-22 06:32:50 -07:00
Ryan Brandenburg e6cb639cc0 Add handler functional test 2017-03-20 10:05:29 -07:00
Jass Bagga 1197657e5b TempData property attribute
Addresses #5600
2017-03-16 16:34:35 -07:00
Nate McMaster 6f7717a381 Unify dependency versions to one file 2017-03-15 16:54:32 -07:00
Pranav K bee1a55cff Use RazorPagesOptions.RootDirectory when looking for page hierarchies.
Fixes #5915
2017-03-14 18:56:50 -07:00
Ryan Brandenburg 82d87df166 Fix warning as error 2017-03-14 12:44:57 -07:00
Ryan Brandenburg 365ae19c8b Add InvalidTagHelperIndexerAssignment to RazorPageBase 2017-03-14 10:04:15 -07:00
Ryan Brandenburg 1c74e31715 Add tests for PageActionInvokerProvider (#5882) 2017-03-09 16:19:20 -08:00
Ryan Brandenburg 7f3f6957be Set path in DefaultPageFactory (#5911) 2017-03-09 16:15:43 -08:00
Ryan Brandenburg d9d280d1ef Make CookieTempDataProvider the default ITempDataProvider (#5892) 2017-03-07 16:04:47 -08:00
Ryan Brandenburg 4a20c849cb Add functional test for Page.View() (#5896) 2017-03-06 16:19:41 -08:00
Doug Bunting 5c96a7cdef Use an alternate workaround for #5873
- use specific workaround for Microsoft/vstest#428
  - generating an executable for a test project is a bit too weird
- also work around dotnet/sdk#926
  - generating an executable covered this as well

nit: add and update comments about other workarounds in the functional tests project
2017-03-06 14:05:21 -08:00
Pranav K 145d27f9b3 Add a PagesOption type that allows configuring the root for Page file discovery
Fixes #5785
2017-03-03 17:20:07 -08:00
Ryan Brandenburg 85e28ae478 Trim quotes from template (#5838) 2017-03-03 09:52:36 -08:00
Pranav K 7cadb58e12 Add convenience extension methods for IPageApplicationModelConvention 2017-03-02 17:38:04 -08:00
Doug Bunting 9b3b3e91bd Re-enable functional tests on full .NET Framework
- #5873
- creating an EXE for the test project seems to work around #5873
  - also avoids dotnet/sdk#926 when building in Visual Studio

nit: clean up duplicate test data
2017-03-01 23:08:46 -08:00
N. Taylor Mullen acfad83aa6 Migrate to MSBuild
- thanx to @NTaylorMullen for initial conversion
  - e.g. AssemblyInfo.cs files were already minimized or removed :)
- allow `>=` RC3 CLI's to build and run MVC
- work around several dotnet migration issues; see #5482
- disable full .NET Framework runs of functional tests; see #5873
- remove `Microsoft.DotNet.InternalAbstractions` and `System.Xml.XmlDocument` dependencies
- remove project.json (!!), *.xproj, .notest, and web.config files

Redo earlier changes:
- apply test migration to .NET 4.5.2 in *.csproj world
  - see 63507c8 for previous, project.json work
- apply dependency version downgrade from 0097e40 in *.csproj world

Make other test-related changes:
- make Microsoft.AspNetCore.Mvc.TestDiagnosticListener a regular class library
- add support for `/p:GenerateBaselines=true` for functional and Razor.Host tests
- separate `GetCSharpTypeName_ReturnsCorrectTypeNames_ForOutParameter()` test
  - work around inability to deserialize a odd `ref` type
  - xUnit and vstest now serialize / deserialze test data more often
- skip poor test mentioned in #5768
- work around Microsoft/vstest#392
  - rename tests to avoid duplicates
- work around Microsoft/vstest#419
  - set up created `AppDomain`s with current `ApplicationBase`
2017-02-28 21:20:39 -08:00
martincostello 498c1c570d Update error message
Update error message based on PR feedback to less C# specific.
2017-02-23 14:21:58 -08:00
martincostello 9950325269 Update view compilation error message
Update view compilation error message for csproj instead of
project.json.
2017-02-23 14:21:58 -08:00
Ryan Nowak e11e6b3be7 Add TempData property and some functional tests 2017-02-22 08:14:02 -08:00
Ajay Bhargav Baaskaran ed9025cc5b React to aspnet/Razor#1030 - Enable skipped test 2017-02-21 17:32:44 -08:00
Ryan Nowak 19331f9532 Adding some basic functional tests
I ran into a blocking issue where page handlers aren't picked up, so I
fixed it. Logging another issue to follow up with better tests for this.
2017-02-21 16:41:25 -08:00
Ryan Nowak 36e4dbe941 Adding a functional test project for Razor Pages 2017-02-21 08:25:30 -08:00
Doug Bunting 63507c8da9 Bump test projects up to .NET 4.5.2
- aspnet/Testing#248
- xUnit no longer supports .NET 4.5.1
- update AppVeyor config so this framework version is available
- build tests for desktop .NET only on Windows
2017-02-21 07:15:36 -08:00
Nate McMaster 0097e40e46 Downgrade to stable packages 2017-02-15 14:23:48 -08:00
Pranav K f474d8bc52 React to optional Razor directive token feature 2017-02-07 21:58:31 -08:00
Ryan Nowak 314aa366e1 Add TempData property support for Pages 2017-02-07 15:27:02 -08:00
Pranav K 9f3dfd9819 Make RazorPages work E2E 2017-02-06 19:05:31 -08:00
Ajay Bhargav Baaskaran 1777f7babd Enabling Razor Instrumentation 2017-02-01 15:29:09 -08:00
Ryan Nowak 84d2e027f5 Use new Razor in MVC 2017-01-30 10:55:49 -08:00
Ryan Brandenburg 03cdd15e5c SaveTempDataFilter handle write to body 2017-01-27 10:54:00 -08:00
Kiran Challa 8ac6b6699f [Fixes #4945] Simple string returned by controller action is not a valid JSON! 2017-01-25 13:29:18 -08:00
Jass Bagga f95d49c870 Change datetime to datetime-local
Addresses #4871
2017-01-13 15:40:30 -08:00
Pranav K 2b50ec99df Updating to 4.4 CoreFx packages 2016-12-21 16:47:14 -08:00
Ryan Brandenburg b2340d327e Order IgnoreAntiforgeryTokenAttribute and add test 2016-12-12 14:55:36 -08:00
Pranav K cfa9631ce8 Resolve path traversals in RazorViewEngine
This change moves the onus of path resolution from individual IFileProvider instances to RazorViewEngine.

Fixes #5574
Fixes https://github.com/aspnet/MvcPrecompilation/issues/33
2016-12-08 11:20:06 -08:00
Ryan Brandenburg 8f8bf5af34 Seperate view and model for enum display 2016-11-30 11:13:38 -08:00
Pranav K 5b2a4aecb6 Make Microsoft.AspNetCore.Mvc.TestCommon a regular project
* This allows specifying all it's dependencies rather than for consuming projects to do this
* Remove unused APIs
* Fix weird downgrade warnings that show up due to P2P references
2016-11-23 16:23:56 -08:00
Pranav K c5a5ba1fee Add support for updateable ActionDescriptorCollection
Fixes #5350
2016-11-17 10:08:38 -08:00
Pranav K 1506a44cd5 Fix downgrade warnings 2016-11-10 09:22:11 -08:00
Pranav K b82969a557 Updating versions to 1.2.0-* 2016-11-09 14:18:46 -08:00
Kiran Challa 07a2f1de06 Fixes CookieTempDataProvider to set the secure attribute of a cookie only if a request is secure 2016-11-08 13:30:28 -08:00
Kiran Challa a3c06b00cc Fixes CookieTempDataProvider to handle empty request PathBase while setting cookie options 2016-11-08 13:30:27 -08:00
Ajay Bhargav Baaskaran 7985121bab [Fixes #5207] Support IsIndexer for ViewComponent tag helpers 2016-11-03 16:50:22 -07:00
Ryan Brandenburg 01b237dda9 Antiforgery goes at the end of filters 2016-11-02 16:50:27 -07:00
Kiran Challa 82b2e9c75c Added functional tests for Antiforgery related to setting no-cache headers 2016-11-02 16:29:34 -07:00
Ajay Bhargav Baaskaran c28ad48e98 [Fixes #5216] Make generic parameters work with ViewComponent tag helpers 2016-11-02 15:55:23 -07:00
Kiran Challa 32710bbfbe [#5430] CookieTempDataProvider chunking broken 2016-11-01 16:13:27 -07:00
Pranav K dd29d562b8 Adding functional test to verify error page middleware includes raw compilation content. 2016-10-31 10:28:04 -07:00
Ajay Bhargav Baaskaran 5b9c01e54d Added a functional test for ViewComponent tag helpers
- Added Copyright ViewComponent tag helper
 - Added Dan ViewComponent tag helper
2016-10-21 16:17:13 -07:00
jacalvar 9579806306 [Fixes #5150] parsing issue on asp.net when request quality factor is specified 2016-10-18 12:52:53 -07:00
Pranav K a52d692de0 Updating to netcoreapp1.1 2016-10-13 11:21:09 -07:00
Pranav K ed1378a365 Revert "Updating to netcoreapp1.1"
This reverts commit 398a104810.
2016-10-12 16:09:12 -07:00
Pranav K 398a104810 Updating to netcoreapp1.1 2016-10-12 14:24:52 -07:00
jbagga 41f00eea23 Default Status Code for void types changed to 200
Fixes #4838
2016-10-06 14:39:04 -07:00
Pranav K 7481151086 Revert skipped StackTrace test 2016-10-04 10:12:22 -07:00
Pranav K 6fe683c585 Add Microsoft.DotNet.InternalAbstractions to fix tests 2016-10-04 10:11:09 -07:00
Pranav K 6d235e4ef5 Update partner package versions 2016-10-03 14:27:20 -07:00
Pranav K da3a457fc5 Temporarily skip test to workaround CoreCLR failure 2016-10-03 14:27:20 -07:00
Kiran Challa 89bd6dc1cd [Fixes #5212] Added a cookie based ITempDataProvider 2016-10-03 14:04:57 -07:00
cjrosa 60d600dd5c Issue #5310 (#5334)
* Issue #5310
2016-09-30 09:40:53 -07:00
Doug Bunting 0a4c06eefb Suppress validation summary `<div>` when nothing is generated
- #2372
- make the `ValidationSummaryTagHelper` behave consistently with `Html.ValidationSummar()`
2016-09-27 15:51:51 -07:00
Doug Bunting 27e4822a7b Preserve `class` casing when merging a `TagBuilder` into a `TagHelperOutput`
- #5313

Also:
- preserve existing `TagHelperAttribute.ValueStyle`
 - fix this in `UrlResolutionTagHelper`, `LinkTagHelper`, and `ScriptTagHelper` as well
- correct handling of non-`string` `classAttribute.Value`s in `TagHelperOutputExtensions`
 - relates to #3918 because new `ClassAttributeHtmlContent` is smaller than any concatenated attribute value

nit: clean up `CacheTagHelper` whitespace and `using`s
2016-09-26 15:56:30 -07:00
Steve Smith 3866ee72e0 Fixing typos Dowload -> Download 2016-09-20 15:55:19 -07:00
Doug Bunting eee1a9fef4 Do not generate a validation summary when `excludePropertyErrors` unless specific model has an error
- #5209
- update affected `HtmlHelperValiationSummaryTest` and functional tests
- add `ValidationSummaryTagHelperTest` tests to cover related scenarios

##### Behaviour changes when no errors exist for the model:
###### Tag helper
``` html
<div asp-validation-summary="ModelOnly" class="order"><h3>Oopsie<h3></div>
```
previously generated
``` html
<div class="order validation-summary-errors"><h3>Oopsie</h3><ul><li style="display:none"></li>
</ul></div>
```
and now generates
``` html
<div class="order"><h3>Oopsie</h3></div>
```
###### HTML helper
``` c#
@Html.ValidationSummary(excludePropertyErrors: true, message: "Oopsie")
```
previously generated
``` html
<div class=\"validation-summary-errors\"><span>Oopsie</span>
<ul><li style=\"display:none\"></li>
</ul></div>
```
and now generates nothing (`@HtmlString.Empty`).
2016-09-08 15:36:47 -07:00
Doug Bunting 755b702823 Correct test failures on Windows with `git config core.autocrlf false`
- line endings in checked-out files do not necessarily match `Environment.NewLine`
2016-09-08 09:20:05 -07:00
Ajay Bhargav Baaskaran 4677bf13fa Reverting accidental changes 2016-09-08 08:28:51 -07:00
Crystal Qian 05392cbf35 Added view component tag helper code generator. (#5195)
This addresses #1051. There is one more pull request that needs to be completed/merged (for `CompositeTagHelperDescriptorResolver` and friends). After that, runtime should work!
2016-09-07 20:30:09 -04:00
Kiran Challa f7ee16170c [Fixes #5161] Support running middleware pipeline as part of a resource filter 2016-08-30 09:26:04 -07:00
Kiran Challa ac98417398 ModelBinding: Remove IsReadOnly checks and add/update tests 2016-08-04 14:20:23 -07:00
jacalvar b56cab6414 Merge branch 'rel/1.0.1' into dev 2016-08-01 14:16:58 -07:00
jacalvar f0732e9e21 [Fixes #5038] HTTP Verbs mapping error GET and DELETE
When an action contained an attribute derived from HttpMethodAttribute,
doesn't specify an attribute route and there is also another attribute
extending HttpMethodAttribute that has a route defined on it; we ignored
the HttpMethodAttribute attribute without a defined route when building
the set of action selectors for the method.

This caused the resulting action to be unbounded and to accept requests
for other verbs not associated with it. The root cause of the problem was
that attributes override equality and do a field by field comparison but
ignore fields in the base classes of the type, so if an attribute is part
of a class hierarchy (like Http*Attributes) there might be two different
attributes that get considered equal.

The fix for the problem has been to change using Contains on a couple of
collections (that uses the equals method on the underlying object) and
check for the existence of the attribute on the collection directly by
using reference equality.
2016-08-01 12:49:23 -07:00
N. Taylor Mullen d60ed06c19 Add link tag attributes to generated fallback tags.
- Updated functional tests and link tag script to include modified extra attributes content.

#4084
2016-07-29 16:30:56 -07:00
Pranav K 5092e75387 Pin repo version to 1.0.1 2016-07-26 12:09:57 -07:00
Ajay Bhargav Baaskaran 4600100695 Added a test to verify ReflectionTypeLoadException 2016-07-25 12:06:16 -07:00
Ryan Nowak fb514d7ef8 Update versions to 1.0.1-*
Also adding a version number to TestConfiguration. This is not a leaf node
so it should have a version.
2016-07-21 09:55:28 -07:00
Pranav K 6bdcf35670 Pin the version of dotnet-test-xunit to 1.0.0-rc3-00000-01 2016-07-19 11:14:56 -07:00
Doug Bunting 0ec2a3131f Restore `[Fact]` and `[Theory]` attributes
- removed in 310ab25
2016-07-14 15:25:45 -07:00
Ryan Brandenburg 310ab25347 Make tests resilient to Localization (#5011) 2016-07-14 09:28:01 -07:00
Doug Bunting 7430efa8cc One build to rule them all
- well, at least VS and command-line builds will share output
- part of aspnet/Coherence-Signed#277
2016-07-06 16:21:18 -07:00
Pranav K 7ce344270a Show message about preserveCompilationContext when a Roslyn diagnostic error says a reference
could not be found.

Fixes #4911
2016-07-06 15:09:54 -07:00
Pranav K 222165e145 Updating to RTM builds of xunit and Moq (#4946) 2016-07-05 20:58:16 -07:00
Pranav K a1f4786695 Updating json files to pin versions and build files to pin KoreBuild 2016-06-27 13:51:10 -07:00
Pranav K cd7954a164 Updating to dev versions 2016-06-16 10:40:11 -07:00
N. Taylor Mullen 8499e3d6bb Remove direct Microsoft.NETCore.Platforms dependency.
- Microsoft.NETCore.App now pulls this package in.

aspnet/Coherence-Signed#344
2016-06-13 15:30:27 -07:00
Pranav K 8c8fd6446b Use regular PDBs on full desktop when possible
Add a test to verify exceptions thrown from views is pretty printed by diagnostics middleware

Fixes https://github.com/aspnet/Diagnostics/issues/293
Fixes #4737
2016-06-09 14:59:38 -07:00
Kiran Challa f1982bd987 Suppress default status code response type in api descriptions when explicit response types have been provided
[Fixes #4823] How to override the default (200) status code with ProducesResponseType
2016-06-09 12:07:52 -07:00
Doug Bunting 62803d5979 Serialize JSON using camel case by default
- #4283
- update `JsonSerializerSettingsProvider` to choose the `CamelCaseNamingStrategy`
2016-06-09 11:58:23 -07:00
Derek Gray 5a3875ea72 Alter content negotiation algorithm so that it can be configured (via
MvcOptions) to always respect an explicit Accept header. Fixes #4612.
2016-06-07 16:12:36 -05:00
Ryan Nowak 2e2784aa3d [Design] Split up MvcRouteHandler
This change splits up the conventional routing path from the attribute
routing path *inside* routing, instead of inside `MvcRouteHandler`. Each
attribute route group now gets its own instance of
`MvcAttributeRouteHandler` which just knows about the actions it can
reach.

This removes the concept of a route-group-token and removes the lookup
table entirely for attribute routing. This also means that the
`DefaultHandler` on `IRouteBuilder` will not be used for attribute routes,
which we are OK with for 1.0.0.

The action selector's functionality is now split into two methods. We
think this is OK for 1.0.0 because any customization of `IActionSelector`
up to now had to implement virtually the same policy as ours in order to
work with attribute routing. It should now be possible to customize the
selector in a meaningful way without interfering with attribute routing.
2016-06-07 08:12:47 -07:00
N. Taylor Mullen cfd58f1747 React to aspnet/Razor#705
- Updated `ScriptTagHelper` and `LinkTagHelper` to maintain their quotes on generated script tags.
- Removed `TagHelperOutputExtensions`. It's no longer needed.
- We no longer string replace quotes directly. We rely on encoding and the initial representation of an attribute to ensure quotes don't break generated attributes.
- Updated tests.
2016-05-27 12:00:01 -07:00
Pranav K 8ab66ab5ce Fix resource generation to work with dotnet test 2016-05-23 15:55:14 -07:00
Kiran Challa 93be3dee6e Fix FormTagHelper to set flag indicating generation of AntiforgeryToken
[Fixes #4595] Better error message with extraneous @Html.AntiforgeryToken
2016-05-20 04:29:01 -07:00
Kiran Challa 20a2e748ec Added ValueProviderFactories to ResourceFilterExecutingContext
This enables removing value provider factories from model binding(which is needed in some scenarios like large file uploads)
2016-05-20 04:15:07 -07:00
Pranav K 1de268d6a7 Remove DNX references from Microsoft.AspNetCore.Mvc.FunctionalTests
Fixes #4677
2016-05-19 12:09:19 -07:00
Pranav K 43c75c922e Allow functional tests with content to run from VS
Fixes #4543
2016-05-19 09:04:15 -07:00
Pranav K 61883b5101 Fix more schema warnings in Mvc 2016-05-18 18:25:45 -07:00