Esempio n. 1
0
        static void StartServer()
        {
            ServerOptions serverOptions = ServerOptions.CreateDefault();

            serverOptions.Hosts[0].Port = 48050;

            ServerBuilder builder = new ServerBuilder();

            builder.LoadFromFile("options.json");

            builder.AddAuthenticator(new ClientAuthenticator());
            builder.AddAuthorization(new Authorization());
            builder.AddDefaultDeliveryHandler(new DeliveryHandler());
            builder.AddDefaultChannelHandler(new ChannelHandler());
            builder.AddDefaultChannelAuthenticator(new ChannelAuthenticator());

            TwinoServer twinoServer = new TwinoServer(serverOptions);

            MqServer server = builder.CreateServer();

            twinoServer.UseMqServer(server);
            twinoServer.Start();

            Console.WriteLine("Server started");
            _server = server;
        }
Esempio n. 2
0
 public CrudTests()
 {
     _host            = ServerBuilder.CreateServer();
     _scope           = _host.Services.CreateScope();
     _serviceProvider = _scope.ServiceProvider;
     _database        = _serviceProvider.GetRequiredService <LactalisDBContext>();
 }
Esempio n. 3
0
        private static async Task CreateAndValidateUser <T>()
            where T : User, new()
        {
            using var host = ServerBuilder.CreateServer();

            var controller  = host.Services.GetRequiredService <AuthorizationController>();
            var userManager = host.Services.GetRequiredService <UserManager <User> >();

            // Create a user with the user manager
            var entity = new EntityFactory <T>()
                         .UseAttributes()
                         .UseReferences()
                         .UseOwner(Guid.NewGuid())
                         .Generate()
                         .First();

            var id = Guid.NewGuid().ToString();

            entity.UserName           = id;
            entity.Email              = $"{id}@example.com";
            entity.NormalizedUserName = entity.UserName.ToUpper();
            entity.NormalizedEmail    = entity.Email.ToUpper();
            entity.EmailConfirmed     = false;
            await userManager.CreateAsync(entity, "password");

            var result = await controller.Login(new LoginDetails
            {
                Username = entity.UserName,
                Password = "******"
            });

            Assert.Equal(typeof(UnauthorizedObjectResult), result.GetType());
        }
Esempio n. 4
0
        public GraphqlFileTests()
        {
            _host = ServerBuilder.CreateServer(new ServerBuilderOptions
            {
                ConfigureServices = (collection, options) =>
                {
                    collection.AddScoped <IUploadStorageProvider, InMemoryFileProvider>();
                }
            });
            var serviceProvider     = _host.Services.CreateScope().ServiceProvider;
            var httpContextAccessor = serviceProvider.GetRequiredService <IHttpContextAccessor>();

            _dbContext       = serviceProvider.GetRequiredService <LactalisDBContext>();
            _storageProvider = serviceProvider.GetRequiredService <IUploadStorageProvider>();
            _crudService     = serviceProvider.GetRequiredService <ICrudService>();
            _graphqlService  = serviceProvider.GetRequiredService <IGraphQlService>();
            _identityService = serviceProvider.GetRequiredService <IIdentityService>();
            _fileController  = serviceProvider.GetRequiredService <FileController>();

            _fileController.ControllerContext.HttpContext = httpContextAccessor.HttpContext;
        }