Skip to content

Commit

Permalink
[#227] [add] Controllers v2 search in meta store
Browse files Browse the repository at this point in the history
  • Loading branch information
i4004 committed Jan 15, 2024
1 parent dad04a1 commit 1b7132a
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 5 deletions.
12 changes: 9 additions & 3 deletions src/Simplify.Web.Tests/Meta/ControllersMetaStoreTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public class ControllersMetaStoreTests
[Test]
public void GetControllersMetaData_LocalControllers_GetWithoutIgnored()
{
// Assign
// Arrange

SimplifyWebTypesFinder.ExcludedAssembliesPrefixes.Remove("Simplify");
SimplifyWebTypesFinder.ExcludedAssembliesPrefixes.Add("DynamicProxyGenAssembly2");
Expand All @@ -28,17 +28,23 @@ public void GetControllersMetaData_LocalControllers_GetWithoutIgnored()
.Returns(new ControllerMetaData(typeof(TestController6)))
.Returns(new ControllerMetaData(typeof(TestController2), new ControllerExecParameters(null, 1)))
.Returns(new ControllerMetaData(typeof(TestController4)))
.Returns(new ControllerMetaData(typeof(TestController5)));
.Returns(new ControllerMetaData(typeof(TestController5)))
.Returns(new ControllerMetaData(typeof(TestControllerV2)))
.Returns(new ControllerMetaData(typeof(TestControllerV2WithModel)));

// Act
var metaData = store.ControllersMetaData;

Assert.AreEqual(5, metaData.Count);
// Assert

Assert.AreEqual(7, metaData.Count);

factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestController1))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestController2))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestController4))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestController5))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestController6))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestControllerV2))));
factory.Verify(x => x.CreateControllerMetaData(It.Is<Type>(t => t == typeof(TestControllerV2WithModel))));
}
}
5 changes: 3 additions & 2 deletions src/Simplify.Web/Meta/ControllersMetaStore.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,9 @@ public IList<IControllerMetaData> ControllersMetaData

var controllersMetaContainers = new List<IControllerMetaData>();

var types = SimplifyWebTypesFinder.FindTypesDerivedFrom<Controller>();

var types = SimplifyWebTypesFinder.FindTypesDerivedFrom<Controller2>();
types = types.Concat(SimplifyWebTypesFinder.FindTypesDerivedFrom(typeof(Controller2<>))).ToList();
types = types.Concat(SimplifyWebTypesFinder.FindTypesDerivedFrom<Controller>()).ToList();
types = types.Concat(SimplifyWebTypesFinder.FindTypesDerivedFrom<AsyncController>()).ToList();
types = types.Concat(SimplifyWebTypesFinder.FindTypesDerivedFrom(typeof(Controller<>))).ToList();
types = types.Concat(SimplifyWebTypesFinder.FindTypesDerivedFrom(typeof(AsyncController<>))).ToList();
Expand Down

0 comments on commit 1b7132a

Please sign in to comment.