Commit Graph

23 Commits

Author SHA1 Message Date
Shannon Deminick
fb0c9c3fbb Changed DynamicXml to public (somehow this wasn't checked in before) #U4-U4-1146
Added unit tests for DynamicXml.Find methods which are passing.
2012-11-06 08:32:21 +06:00
Shannon Deminick
a4a9b26d93 Committed first tests of strongly typed querying with strongly typed document types using what would be generated code and extension methods. 2012-11-04 09:24:24 +06:00
Sebastiaan Janssen
7a4ccc825d Only reset the DataDirectory path after clearing the database, else it will
never clear as it can't find a database at path null
Updated PublishedContentTests with correct amount of expected results
2012-10-12 14:45:13 -02:00
Shannon Deminick
5fc3d8e248 Fixes threading issue with Dynamicexpression... would have caused some strange behavior in the past!
Fixes: U4-995 - most methods will now work in dynamic expressions
2012-10-08 00:09:44 +05:00
Shannon Deminick
cd38123fbd Fixes issue with DynamicExpression and parsing to ensure that it is using generic types, not hard coded types.
Ensures unit tests passing for Where, Single, SingleOrDefault with filters with dynamics.
2012-10-07 00:07:51 +05:00
Shannon Deminick
842d7120e6 Obsoletes DynamicQueryable in MacroEngines lib, proxies all calls to new DynamicQueryable in Umbraco.Web.
Adds more support for NodeTypeAlias and DocumentTypeAlias param names for compatibility.
Adds IsDocumentType is-helper method.
Adds unit tests for complex Linq using a Typed IPublishedContent object.
Adds unit tests for complex Linq using dynamics.
Adds support for Single, SingleOrDefault, First, FirstOrDefault, Last, LastOrDefault to dynamics for both DynamicNode and DynamicPublishedContent + unit tests.
Adds support for 'Children' on DynamicNode to keep things consistent, no longer required to have to do 'ChildrenAsList'.
DynamicNode now implements INode... not sure why this wasn't like that before.
2012-10-06 23:41:42 +05:00
Shannon Deminick
8804d912f2 More unit tests written and passing. 2012-10-04 06:00:47 +05:00
Shannon Deminick
54e5140d6a Added more extension methods to our strongly typed IPublishedContent object and IEnumerable<IPublishedContent> to match all of the available methods
that are on the DynamicPublishedContent object. Added more unit tests for all of these classes.
Moved some of the Dynamic objects into the web project which simplifies things quite a bit as some of these classes require access to the biz logic layer.
Now we have intellisense for all of the nice magical methods that were on DynamicPublishedContent on our strongly typed object!
2012-10-04 03:26:56 +05:00
Shannon Deminick
c0102f1c71 Refactored the traversal, ishelper, etc... methods to be extension methods on IPublishedContent so now all of these methods are available on the Typed object not just the dynamic object which makes a whole lot more sense... and you can have intellisense.
Updated DynamicPublishedContent's methods to just proxy calls to the new extension methods so that all of the logic is contained in one place.
Added new GetRootDocuments to the IPublishedContentStore since we need this in order to get the root list of documents for many of these methods.
Fixed an issue with the DynamicNode to IPublishedContent converter.
Fixed many of the failing unit tests.
2012-10-04 01:31:08 +05:00
Shannon Deminick
ef5525e67f renamed DynamicDocumentList to DynamicPublishedContentList
simplified some of the DynamicPublishedContent methods to accept Func<IPublishedContent> instead of Func<DynamicPublishedContent>, made the IsHelper method private as this shouldn't be exposed.
renamed other objects starting with DynamicDocument to DynamicPublishedContent
2012-10-02 22:51:53 +05:00
Shannon Deminick
053df24640 After talks with morten and stephane, this renames
IDocument -> IPublishedContent
DynamicDocument -> DynamicPublishedContent
2012-10-02 01:35:39 +05:00
Shannon Deminick
ea3d2f893f Added AsDynamic extension to IDocument.
Makes DynamicDocument explicitly implement IDocument as well.
Changes all ContentById methods, etc... back to returning just 'dynamic'
Removes valueAlias from the .Field method of UmbracoHelper which didn't actually do anything
removes altValueAlias from the .Field method of the UmbracoHelper which didn't actually do anything.
2012-10-01 02:48:08 +05:00
Shannon Deminick
a16f28eb26 Re-implemented GetProperty on IDocument, had removed it because I didn't see a need for it because we already have a Properties collection, however we do require it
for specific implementations where the IDocument needs to search for the specified property based on alias since it might not already know about it. This is true for the
DefaultPublishedMediaStore where a property may not exist in the Examine cache so we need to fallback to the db in that case.
2012-09-20 14:17:40 +07:00
Shannon Deminick
a48b996571 Got ChildrenAsTable working as extensions on DynamicDocument with supporting unit tests.
Have updated the ChildrenAsTable code for Node as well to use the same base code, this should
also fix some issues with generating a datatable correctly when a content type is changed, previously
the cache was not cleared for Alias to name mapping.
2012-09-20 12:42:43 +07:00
Shannon Deminick
18713fe513 Fixes one test with DynamicNode 2012-09-13 13:38:51 +07:00
Shannon Deminick
a1edad4e08 Fixed DynamicNodeTests with db support 2012-09-13 13:02:02 +07:00
Shannon Deminick
37969909ca Updated the DynamicDocument and node unit tests to not init a db each time, runs much faster though in the future
we might have to re-enable this in a smart way.
2012-09-11 04:43:30 +07:00
Shannon Deminick
27bcea78d2 Started implementing new IPublishedMediaStore which will replace the notion of the legacy ExamineBackedMedia and
moving forward will open up many nice opportunities. This will be used for the media accessor in the new DynamicDocument.
Renamed XmlPublishedContentStore to just DefaultPublishedContentStore.
Made GetProperty an extension method for IDocument and removed from the interface as it is not needed there.
2012-09-08 13:22:45 +07:00
Shannon Deminick
529c52844d Started writing NiceUrlProvider unit tests as there are a bunch of issues with it. Have fixed one of them.
Updated unit test hierarchy of classes so that if one doesn't require a db it can opt out and thus it runs much much faster.
2012-09-01 08:11:40 +07:00
Shannon Deminick
7be4480254 added HasValue unit test, removed the default.aspx file from the Web project, it now only exists in the UI project but
the codebehind still exist in the web for backwards compatibility. Updated the logging so that the LogHelper
can now write to a TraceContext specified if debugging which is handy if we want to write to the normal trace.
2012-08-29 07:47:16 +07:00
Shannon Deminick
3cd1592abc Added better support for Skip for DynamicDocument and DynamicNode and added unit tests. 2012-08-28 09:33:34 +07:00
Shannon Deminick
bc3a5122dd Fixes DynamicNode issue not implementing IEnumerable<DynamicNode>
Adds a few unit tests for DynamicDocument/DynamicNode and fixes both to properly support the 'Take' method
as this wasn't really working. Not sure how or why it was working previously. Have also allowed for extension
methods to be executed against either of these objects that accept IQueryable which was not supported before.
2012-08-28 09:20:30 +07:00
Shannon Deminick
92602e3480 Added unit tests for legacy DynamicNode which now just runs tests on the abstract class so we share tests between
DynamicDocument and DynamicNode.
Fixes: #U4-691
Fixes: #U4-690
2012-08-25 07:07:00 +07:00