Ejemplo n.º 1
0
        public async Task ShouldCallEngineAndSucceedWithRequiredGithubParams()
        {
            var engine       = Substitute.For <ICollaborationEngine>();
            var logger       = Substitute.For <IConfigureLogger>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.GetSettings().Returns(FileSettings.Empty());

            var settingReader   = new GitHubSettingsReader();
            var settingsReaders = new List <ISettingsReader> {
                settingReader
            };
            var collaborationFactory = GetCollaborationFactory(settingsReaders);

            var command = new RepositoryCommand(engine, logger, fileSettings, collaborationFactory, settingsReaders)
            {
                PersonalAccessToken = "abc",
                RepositoryUri       = "http://github.com/abc/abc"
            };

            var status = await command.OnExecute();

            Assert.That(status, Is.EqualTo(0));
            await engine
            .Received(1)
            .Run(Arg.Any <SettingsContainer>());
        }
Ejemplo n.º 2
0
        public async Task <SettingsContainer> CaptureSettings(FileSettings settingsIn,
                                                              bool addLabels = false)
        {
            var logger       = Substitute.For <IConfigureLogLevel>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            SettingsContainer settingsOut = null;
            var engine = Substitute.For <IGitHubEngine>();
            await engine.Run(Arg.Do <SettingsContainer>(x => settingsOut = x));


            fileSettings.Get().Returns(settingsIn);

            var command = new RepositoryCommand(engine, logger, fileSettings);

            command.GitHubToken         = "testToken";
            command.GitHubRepositoryUri = "http://github.com/test/test";

            if (addLabels)
            {
                command.Label = new[] { "runLabel1", "runLabel2" };
            }

            await command.OnExecute();

            return(settingsOut);
        }
Ejemplo n.º 3
0
        public async Task ShouldInitialiseCollaborationFactory()
        {
            var engine       = Substitute.For <ICollaborationEngine>();
            var logger       = Substitute.For <IConfigureLogger>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.GetSettings().Returns(FileSettings.Empty());

            var settingReader   = new GitHubSettingsReader();
            var settingsReaders = new List <ISettingsReader> {
                settingReader
            };
            var collaborationFactory = Substitute.For <ICollaborationFactory>();

            collaborationFactory.Settings.Returns(new CollaborationPlatformSettings());

            var command = new RepositoryCommand(engine, logger, fileSettings, collaborationFactory, settingsReaders)
            {
                PersonalAccessToken = "abc",
                RepositoryUri       = "http://github.com/abc/abc",
                ForkMode            = ForkMode.PreferSingleRepository
            };

            await command.OnExecute();

            collaborationFactory
            .Received(1)
            .Initialise(
                Arg.Is(new Uri("https://api.github.com")),
                Arg.Is("abc"),
                Arg.Is <ForkMode?>(ForkMode.PreferSingleRepository),
                Arg.Is((Platform?)null));
        }
Ejemplo n.º 4
0
        // Zapisuje instancję modelu do bazy danych.
        public virtual void Create(T modelInstance)
        {
            _resourceToAdd = modelInstance;
            RepositoryCommand cmd = _Create;

            DatabaseManager.Execute(cmd);
        }
Ejemplo n.º 5
0
        public async Task InsertarRangoCurrencyHistoryAsync(IEnumerable <CurrencyHistoryEntity> entities)
        {
            logger.LogInformation("Insertar consultas de moneda");

            RepositoryCommand.CreateRange(entities);

            await UnitOfWork.SaveChangesAsync();
        }
Ejemplo n.º 6
0
        public async Task InsertarCurrencyHistoryAsync(CurrencyHistoryEntity entity)
        {
            logger.LogInformation("Insertar consulta de moneda");

            RepositoryCommand.Create(entity);

            await UnitOfWork.SaveChangesAsync();
        }
Ejemplo n.º 7
0
        // Usuń użytkownika z grupy.
        public void RemoveFromGroup(int userId, int groupId)
        {
            _removeFromGroupUserId  = userId;
            _removeFromGroupGroupId = groupId;

            RepositoryCommand cmd = _RemoveFromGroup;

            DatabaseManager.Execute(cmd);
        }
Ejemplo n.º 8
0
        // Dodaj użytkownika do grupy.
        public void AddToGroup(int userId, int groupId)
        {
            _addToGroupUserId  = userId;
            _addToGroupGroupId = groupId;

            RepositoryCommand cmd = _AddToGroup;

            DatabaseManager.Execute(cmd);
        }
Ejemplo n.º 9
0
 // Wykonuje operację udostępnioną przez repozytorium. Po wykonaniu polecenia zamyka sesję.
 public void Execute(RepositoryCommand repositoryCommand)
 {
     using (var session = _sessionManager.Open())
         using (var tx = session.BeginTransaction())
         {
             repositoryCommand(session);
             tx.Commit();
         }
 }
Ejemplo n.º 10
0
        public void GenerateFile(ReportProcessModel instance, string path)
        {
            var command = new RepositoryCommand {
                CommandName = instance.StoredProcedureName
            };

            foreach (var parameter in instance.Parameters)
            {
                command.Parameters.Add(parameter.ParameterName, parameter.ParameterValue);
            }

            var table = repositoryForSql.GetDataTable(command);

            datatableExportService.Save(table, path);
        }
Ejemplo n.º 11
0
        public async Task ShouldCallEngineAndNotSucceedWithoutParams()
        {
            var engine       = Substitute.For <IGitHubEngine>();
            var logger       = Substitute.For <IConfigureLogLevel>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.Get().Returns(FileSettings.Empty());

            var command = new RepositoryCommand(engine, logger, fileSettings);

            var status = await command.OnExecute();

            Assert.That(status, Is.EqualTo(-1));
            await engine
            .DidNotReceive()
            .Run(Arg.Any <SettingsContainer>());
        }
Ejemplo n.º 12
0
        public static async Task <(SettingsContainer settingsContainer, CollaborationPlatformSettings platformSettings)> CaptureSettings(
            FileSettings settingsIn,
            bool addLabels          = false,
            int?maxPackageUpdates   = null,
            int?maxOpenPullRequests = null
            )
        {
            var logger       = Substitute.For <IConfigureLogger>();
            var fileSettings = Substitute.For <IFileSettingsCache>();
            var environmentVariablesProvider = Substitute.For <IEnvironmentVariablesProvider>();

            fileSettings.GetSettings().Returns(settingsIn);

            var settingReader   = new GitHubSettingsReader(new MockedGitDiscoveryDriver(), environmentVariablesProvider);
            var settingsReaders = new List <ISettingsReader> {
                settingReader
            };
            var collaborationFactory = GetCollaborationFactory(environmentVariablesProvider, settingsReaders);

            SettingsContainer settingsOut = null;
            var engine = Substitute.For <ICollaborationEngine>();
            await engine.Run(Arg.Do <SettingsContainer>(x => settingsOut = x));

            var command = new RepositoryCommand(engine, logger, fileSettings, collaborationFactory, settingsReaders);

            command.PersonalAccessToken = "testToken";
            command.RepositoryUri       = "http://github.com/test/test";

            if (addLabels)
            {
                command.Label = new List <string> {
                    "runLabel1", "runLabel2"
                };
            }

            command.MaxPackageUpdates   = maxPackageUpdates;
            command.MaxOpenPullRequests = maxOpenPullRequests;

            await command.OnExecute();

            return(settingsOut, collaborationFactory.Settings);
        }
Ejemplo n.º 13
0
        public async Task ShouldCallEngineAndSucceedWithRequiredGithubParams()
        {
            var engine       = Substitute.For <IGitHubEngine>();
            var logger       = Substitute.For <IConfigureLogLevel>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.Get().Returns(FileSettings.Empty());

            var command = new RepositoryCommand(engine, logger, fileSettings);

            command.GitHubToken         = "abc";
            command.GitHubRepositoryUri = "http://github.com/abc/abc";

            var status = await command.OnExecute();

            Assert.That(status, Is.EqualTo(0));
            await engine
            .Received(1)
            .Run(Arg.Any <SettingsContainer>());
        }
Ejemplo n.º 14
0
        public async Task ShouldCallEngineAndNotSucceedWithoutParams()
        {
            var engine       = Substitute.For <ICollaborationEngine>();
            var logger       = Substitute.For <IConfigureLogger>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.GetSettings().Returns(FileSettings.Empty());

            var settingReader   = new GitHubSettingsReader();
            var settingsReaders = new List <ISettingsReader> {
                settingReader
            };
            var collaborationFactory = GetCollaborationFactory(settingsReaders);

            var command = new RepositoryCommand(engine, logger, fileSettings, collaborationFactory, settingsReaders);

            var status = await command.OnExecute();

            Assert.That(status, Is.EqualTo(-1));
            await engine
            .DidNotReceive()
            .Run(Arg.Any <SettingsContainer>());
        }
Ejemplo n.º 15
0
        public async Task ShouldInitialisePlatformFromFile()
        {
            var engine       = Substitute.For <ICollaborationEngine>();
            var logger       = Substitute.For <IConfigureLogger>();
            var fileSettings = Substitute.For <IFileSettingsCache>();

            fileSettings.GetSettings().Returns(
                new FileSettings
            {
                Platform = Platform.BitbucketLocal
            });

            var settingReader   = new GitHubSettingsReader(new MockedGitDiscoveryDriver(), _environmentVariablesProvider);
            var settingsReaders = new List <ISettingsReader> {
                settingReader
            };
            var collaborationFactory = Substitute.For <ICollaborationFactory>();

            collaborationFactory.Settings.Returns(new CollaborationPlatformSettings());

            var command = new RepositoryCommand(engine, logger, fileSettings, collaborationFactory, settingsReaders)
            {
                PersonalAccessToken = "abc",
                RepositoryUri       = "http://github.com/abc/abc",
                ForkMode            = null
            };

            await command.OnExecute();

            await collaborationFactory
            .Received(1)
            .Initialise(
                Arg.Is(new Uri("https://api.github.com")),
                Arg.Is("abc"),
                Arg.Is((ForkMode?)null),
                Arg.Is((Platform?)Platform.BitbucketLocal));
        }
Ejemplo n.º 16
0
        public async Task EliminarUsuarioAsync(int id)
        {
            RepositoryCommand.Delete(id);

            await UnitOfWork.SaveChangesAsync();
        }
Ejemplo n.º 17
0
        public async Task <IEnumerable <UserEntity> > ObtenerUsuariosAsync()
        {
            var users = await RepositoryCommand.GetAllAsync();

            return(users);
        }
Ejemplo n.º 18
0
        public async Task <UserEntity> ObtenerUsuarioAsync(int id)
        {
            var user = await RepositoryCommand.GetAsync(x => x.ID == id);

            return(user.FirstOrDefault());
        }
Ejemplo n.º 19
0
        private static void Main(string[] args)
        {
            if (args.Length < 1)
            {
                Console.WriteLine("Not enough arguments !");
                return;
            }

            Config.Model = args[0].ToLower().UppercaseFirst();
            var command = "";

            if (args.Length > 1)
            {
                command = args[1].ToLower();
            }

            if (args.Length > 2)
            {
                Config.Area = args[2].ToLower().UppercaseFirst();
            }

            Config.ModelsPath     = Environment.CurrentDirectory + "\\";
            Config.ViewModelsPath = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.FullName + "\\ViewModels\\";
            Config.RepositoryPath = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.FullName + "\\Repository\\";
            Config.ServicePath    = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.FullName + "\\Service\\";

            if (string.IsNullOrEmpty(Config.Area))
            {
                Config.ControllerPath = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.Parent.FullName + "\\Portal.Web\\Controllers\\";
                Config.ViewsPath      = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.Parent.FullName + "\\Portal.Web\\Views\\" + Config.Model + "\\";
            }
            else
            {
                Config.ControllerPath = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.Parent.FullName + "\\Portal.Web\\Areas\\" + Config.Area + "\\Controllers\\";
                Config.ViewsPath      = new System.IO.DirectoryInfo(Config.ModelsPath).Parent.Parent.Parent.FullName + "\\Portal.Web\\Areas\\" + Config.Area + "\\Views\\" + Config.Model + "\\";
            }

            var viewsDir = new System.IO.DirectoryInfo(Config.ViewsPath);

            if (!viewsDir.Exists)
            {
                viewsDir.Create();
            }

            Config.PropertyNames        = ClassHelper.GetPropertyNames(Config.ModelsPath + Config.Model + ".cs");
            Config.PropertyTypes        = ClassHelper.GetPropertyTypes(Config.ModelsPath + Config.Model + ".cs");
            Config.PropertyDeclarations = ClassHelper.GetPropertyDeclarations(Config.ModelsPath + Config.Model + ".cs");

            switch (command)
            {
            case "sr":
            case "service":
                var iserviceCommand = new IServiceCommand();
                var serviceCommand  = new ServiceCommand();
                iserviceCommand.Execute();
                serviceCommand.Execute();
                break;

            case "rp":
            case "repository":
                var irepositoryCommand = new IRepositoryCommand();
                var repositoryCommand  = new RepositoryCommand();
                irepositoryCommand.Execute();
                repositoryCommand.Execute();
                break;

            case "vm":
            case "viewmodel":
                var viewModelCommand = new ViewModelCommand();
                viewModelCommand.Execute();
                break;

            case "ad":
            case "addmodel":
                var addModel = new AddModelCommand();
                addModel.Execute();
                break;

            case "vi":
            case "views":
                var indexCommand   = new IndexCommand();
                var createCommand  = new CreateCommand();
                var editCommand    = new EditCommand();
                var deleteCommand  = new DeleteCommand();
                var detailsCommand = new DetailsCommand();

                indexCommand.Execute();
                createCommand.Execute();
                editCommand.Execute();
                deleteCommand.Execute();
                detailsCommand.Execute();

                break;

            case "cr":
            case "controller":
                var controllerCommand = new ControllerCommand();
                controllerCommand.Execute();
                break;

            case "go":
            default:
                var goCommand = new GoCommand();
                goCommand.Execute();


                break;
            }
        }
Ejemplo n.º 20
0
        public async Task InsertarUsuarioAsync(UserEntity user)
        {
            RepositoryCommand.Create(user);

            await UnitOfWork.SaveChangesAsync();
        }
Ejemplo n.º 21
0
        public async Task ActualizarUsuarioAsync(UserEntity user)
        {
            RepositoryCommand.Update(user);

            await UnitOfWork.SaveChangesAsync();
        }