Пример #1
0
        public void Execute_GivenSourceAndNamespaceWithActionsTakingObject_ShouldObjectParameters()
        {
            var humanType = typeof(Human);
            //------------Setup for test--------------------------
            var pluginSource = new PluginSource
            {
                ResourceName     = humanType.FullName,
                ResourceID       = humanType.GUID,
                AssemblyName     = humanType.AssemblyQualifiedName,
                AssemblyLocation = humanType.Assembly.Location
            };

            var resourceCat = new Mock <IResourceCatalog>();

            resourceCat.Setup(catalog => catalog.GetResource <PluginSource>(It.IsAny <Guid>(), It.IsAny <Guid>()))
            .Returns(pluginSource);
            var fetchPluginActionsWithReturnsTypes = new FetchPluginActionsWithReturnsTypes(resourceCat.Object);

            var jsonSerializer   = new Dev2JsonSerializer();
            var sourceDefinition = new PluginSourceDefinition
            {
                Id = humanType.GUID, Name = humanType.FullName, Path = humanType.Assembly.Location
            };
            var namespaceItem = new NamespaceItem
            {
                FullName         = humanType.FullName,
                AssemblyLocation = humanType.Assembly.Location,
                AssemblyName     = humanType.Assembly.FullName
            };

            var serialezedSource    = jsonSerializer.SerializeToBuilder(sourceDefinition);
            var serialezedNamespace = jsonSerializer.SerializeToBuilder(namespaceItem);
            var values = new Dictionary <string, StringBuilder>
            {
                { "source", serialezedSource },
                { "namespace", serialezedNamespace }
            };
            var workspace = new Mock <IWorkspace>();
            var execute   = fetchPluginActionsWithReturnsTypes.Execute(values, workspace.Object);
            var results   = jsonSerializer.Deserialize <ExecuteMessage>(execute);

            //------------Assert Results-------------------------
            Assert.IsFalse(results.HasError);
            var pluginActions = jsonSerializer.Deserialize <List <IPluginAction> >(results.Message);

            Assert.IsTrue(pluginActions.Any(action => action.IsVoid));
            IEnumerable <IList <IServiceInput> > parameters = pluginActions.Select(action => action.Inputs);
            var enumerable = parameters as IList <IServiceInput>[] ?? parameters.ToArray();
            var containsObjectParameters = enumerable.Any(list => list.Any(input => input.IsObject));
            var shortTypeName            = enumerable.All(list => list.All(input => !string.IsNullOrEmpty(input.ShortTypeName)));
            var dev2ReturnType           = enumerable.All(list => list.All(input => !string.IsNullOrEmpty(input.Dev2ReturnType)));

            Assert.IsTrue(containsObjectParameters);
            Assert.IsTrue(shortTypeName);
            Assert.IsTrue(dev2ReturnType);
        }
Пример #2
0
        public void GetAuthorizationContextForService_ShouldReturnAuthorizationContext_Any()
        {
            //------------Setup for test--------------------------
            var fetchPluginActionsWithReturnsTypes = new FetchPluginActionsWithReturnsTypes();
            //------------Execute Test---------------------------
            var authorizationContext = fetchPluginActionsWithReturnsTypes.GetAuthorizationContextForService();

            //------------Assert Results-------------------------
            Assert.AreEqual(AuthorizationContext.Any, authorizationContext);
        }
Пример #3
0
        public void GetResourceID_ShouldReturnEmptyGuid()
        {
            //------------Setup for test--------------------------
            var fetchPluginActionsWithReturnsTypes = new FetchPluginActionsWithReturnsTypes();

            //------------Execute Test---------------------------
            var resId = fetchPluginActionsWithReturnsTypes.GetResourceID(new Dictionary <string, StringBuilder>());

            //------------Assert Results-------------------------
            Assert.AreEqual(Guid.Empty, resId);
        }
Пример #4
0
        public void Execute_GivenSourceAndNamespaceWithStringActions_ShouldReturnAStringFunction()
        {
            var humanType = typeof(Human);
            //------------Setup for test--------------------------
            var pluginSource = new PluginSource
            {
                ResourceName     = humanType.FullName,
                ResourceID       = humanType.GUID,
                AssemblyName     = humanType.AssemblyQualifiedName,
                AssemblyLocation = humanType.Assembly.Location
            };

            var resourceCat = new Mock <IResourceCatalog>();

            resourceCat.Setup(catalog => catalog.GetResource <PluginSource>(It.IsAny <Guid>(), It.IsAny <Guid>()))
            .Returns(pluginSource);
            var fetchPluginActionsWithReturnsTypes = new FetchPluginActionsWithReturnsTypes(resourceCat.Object);

            var jsonSerializer   = new Dev2JsonSerializer();
            var sourceDefinition = new PluginSourceDefinition
            {
                Id = humanType.GUID, Name = humanType.FullName, Path = humanType.Assembly.Location
            };
            var namespaceItem = new NamespaceItem
            {
                FullName         = humanType.FullName,
                AssemblyLocation = humanType.Assembly.Location,
                AssemblyName     = humanType.Assembly.FullName
            };

            var serialezedSource    = jsonSerializer.SerializeToBuilder(sourceDefinition);
            var serialezedNamespace = jsonSerializer.SerializeToBuilder(namespaceItem);
            var values = new Dictionary <string, StringBuilder>
            {
                { "source", serialezedSource },
                { "namespace", serialezedNamespace }
            };
            var workspace = new Mock <IWorkspace>();
            var execute   = fetchPluginActionsWithReturnsTypes.Execute(values, workspace.Object);
            var results   = jsonSerializer.Deserialize <ExecuteMessage>(execute);

            //------------Assert Results-------------------------
            Assert.IsFalse(results.HasError);
            var pluginActions = jsonSerializer.Deserialize <List <IPluginAction> >(results.Message);

            Assert.IsTrue(pluginActions.Any(action => action.IsVoid));
            var any = pluginActions.Any(action => action.Dev2ReturnType.Equals("return: String"));

            Assert.IsTrue(any);
        }
Пример #5
0
        public void Execute_GivenNoNamespace_ShouldReturnEmpyt()
        {
            //------------Setup for test--------------------------
            var pluginSource = new PluginSource
            {
                ResourceName = "ResourceName",
                FilePath     = "ResourcePath",
                ResourceID   = Guid.Empty
            };

            var resourceCat = new Mock <IResourceCatalog>();

            resourceCat.Setup(catalog => catalog.GetResource <PluginSource>(It.IsAny <Guid>(), It.IsAny <Guid>()))
            .Returns(pluginSource);
            var fetchPluginActionsWithReturnsTypes = new FetchPluginActionsWithReturnsTypes(resourceCat.Object);

            var jsonSerializer   = new Dev2JsonSerializer();
            var sourceDefinition = new PluginSourceDefinition
            {
                Id = Guid.Empty, Name = "SourceName", Path = "SourcePath"
            };
            var serialezedSource = jsonSerializer.SerializeToBuilder(sourceDefinition);
            var values           = new Dictionary <string, StringBuilder>
            {
                { "source", serialezedSource },
                { "namespace", new StringBuilder("") }
            };
            var workspace = new Mock <IWorkspace>();
            //-------------------------Test Execution -----------------
            var execute = fetchPluginActionsWithReturnsTypes.Execute(values, workspace.Object);
            var results = jsonSerializer.Deserialize <ExecuteMessage>(execute);

            //------------Assert Results-------------------------
            Assert.IsFalse(results.HasError);
            Assert.AreEqual("[]", results.Message.ToString());
        }