示例#1
0
    public void XmlWriterReaderTest()
    {
        var       testModel = TestModelFactory.Create();
        TestModel result0;

        using (var fs = new FileStream("XmlWriterReaderTest0.xml", FileMode.Create))
        {
            var writer = new XmlTextWriter(fs, Encoding.UTF8);
            writer.WriteXml(testModel);
            writer.Close();
        }

        using (var fs = new FileStream("XmlWriterReaderTest0.xml", FileMode.Open))
        {
            var reader = new XmlTextReader(fs);
            result0 = reader.ReadXml <TestModel>() !;
            reader.Close();
        }

        TestModel result1;

        using (var fs = new FileStream("XmlWriterReaderTest1.xml", FileMode.Create))
        {
            var writer = new XmlTextWriter(fs, Encoding.UTF8);
            testModel.Serialize(writer);
            writer.Close();
        }

        using (var fs = new FileStream("XmlWriterReaderTest1.xml", FileMode.Open))
        {
            var reader = new XmlTextReader(fs);
            result1 = reader.ReadXml <TestModel>() !;
            reader.Close();
        }

        Assert.Equal(
            Tuple.Create(testModel.Id, testModel.Age, testModel.CreateTime, testModel.Name, testModel.Gender),
            Tuple.Create(result0.Id, result0.Age, result0.CreateTime, result0.Name, result0.Gender));

        Assert.Equal(
            Tuple.Create(testModel.Id, testModel.Age, testModel.CreateTime, testModel.Name, testModel.Gender),
            Tuple.Create(result1.Id, result1.Age, result1.CreateTime, result1.Name, result1.Gender));
    }
示例#2
0
    public void TextWriterReaderNonGenericTest()
    {
        var       testModel = TestModelFactory.Create();
        TestModel result0;

        using (var fs = new FileStream("TextWriterReaderNonGenericTest0.xml", FileMode.Create))
        {
            var writer = new StreamWriter(fs, Encoding.UTF8);
            writer.WriteXml(typeof(TestModel), testModel);
            writer.Close();
        }

        using (var fs = new FileStream("TextWriterReaderNonGenericTest0.xml", FileMode.Open))
        {
            var reader = new StreamReader(fs, Encoding.UTF8);
            result0 = (TestModel)reader.ReadXml(typeof(TestModel)) !;
            reader.Close();
        }

        TestModel result1;

        using (var fs = new FileStream("TextWriterReaderNonGenericTest1.xml", FileMode.Create))
        {
            var writer = new StreamWriter(fs, Encoding.UTF8);
            testModel.Serialize(typeof(TestModel), writer);
            writer.Close();
        }

        using (var fs = new FileStream("TextWriterReaderNonGenericTest1.xml", FileMode.Open))
        {
            var reader = new StreamReader(fs, Encoding.UTF8);
            result1 = (TestModel)reader.ReadXml(typeof(TestModel)) !;
            reader.Close();
        }

        Assert.Equal(
            Tuple.Create(testModel.Id, testModel.Age, testModel.CreateTime, testModel.Name, testModel.Gender),
            Tuple.Create(result0.Id, result0.Age, result0.CreateTime, result0.Name, result0.Gender));
        Assert.Equal(
            Tuple.Create(testModel.Id, testModel.Age, testModel.CreateTime, testModel.Name, testModel.Gender),
            Tuple.Create(result1.Id, result1.Age, result1.CreateTime, result1.Name, result1.Gender));
    }
示例#3
0
        public async Task Handle_If_FilterTerm_Is_Provided_Should_Return_Successful_Response_With_Filtered_Products()
        {
            GetProductsResponse useCaseResponse = null;
            var allProducts = TestModelFactory.GetProductSample();
            var filterTerm  = "brand";

            // Mock dependencies
            var mockGetProducts = new Mock <IGetPagedListFromRepository <Product> >();
            var mockResponsesMessagesSettings = new Mock <IOptions <Dto.ResponsesSettings> >();
            var mockOutput = new Mock <UseCases.IOutputPort <GetProductsResponse> >();

            // Setup
            mockResponsesMessagesSettings
            .Setup(x => x.Value)
            .Returns(TestsConfigurationHelper.ResponsesSettings);

            mockOutput
            .Setup(x => x.Handle(It.IsAny <GetProductsResponse>()))
            .Callback((GetProductsResponse response) =>
            {
                useCaseResponse = response;
            });

            mockGetProducts
            .Setup(x => x.GetProducts(It.IsAny <PageParameters>(), It.IsAny <string>()))
            .ReturnsAsync(new BaseGatewayResponse <PagedList <Product> >(allProducts));

            // Arrange
            var useCase = new GetProductsUseCase(
                mockGetProducts.Object,
                mockResponsesMessagesSettings.Object);

            var request = new GetProductsRequest(new PageParameters(), filterTerm);

            // Act
            var result = await useCase.Handle(request, mockOutput.Object);

            // Assert
            Assert.True(result);
            Assert.Equal(useCaseResponse.Products.Count(), allProducts.Count());
        }
示例#4
0
        public async Task Handle_If_Filter_Term_Is_Invalid_Should_Return_Unsuccessful_Response()
        {
            GetProductsResponse useCaseResponse = null;
            var allProducts = TestModelFactory.GetProductSample();

            // Mock dependencies
            var mockGetProducts = new Mock <IGetPagedListFromRepository <Product> >();
            var mockResponsesMessagesSettings = new Mock <IOptions <Dto.ResponsesSettings> >();
            var mockOutput = new Mock <UseCases.IOutputPort <GetProductsResponse> >();

            // Setup
            mockResponsesMessagesSettings
            .Setup(x => x.Value)
            .Returns(TestsConfigurationHelper.ResponsesSettings);

            mockOutput
            .Setup(x => x.Handle(It.IsAny <GetProductsResponse>()))
            .Callback((GetProductsResponse response) =>
            {
                useCaseResponse = response;
            });

            mockGetProducts
            .Setup(x => x.GetProducts(It.IsAny <PageParameters>(), It.IsAny <string>()))
            .ReturnsAsync(new BaseGatewayResponse <PagedList <Product> >(allProducts));

            // Arrange
            var useCase = new GetProductsUseCase(
                mockGetProducts.Object,
                mockResponsesMessagesSettings.Object);

            var request = new GetProductsRequest(new PageParameters(), "&ASDG%&/");

            // Act
            var result = await useCase.Handle(request, mockOutput.Object);

            // Assert
            Assert.False(result);
            Assert.Contains(useCaseResponse.Errores, x => x.Codigo == nameof(TestsConfigurationHelper.ResponsesSettings.InvalidParamErrorMessage));
        }
        public async Task GetCarProfilesTask_ReturnsCarProfile_EmailCorrect()
        {
            var testUser = TestModelFactory.CreateUserModel();
            var fakeUser = new User()
            {
                Email = testUser.Email
            };
            var fakeCarProfiles = new List <CarProfile>()
            {
                new CarProfile()
                {
                    OwnerEmail = testUser.Email,
                }
            };

            _fakeDbContext.GetUser(Arg.Any <string>(), Arg.Any <Guid>()).Returns(fakeUser);
            _fakeDbContext.GetAllCars(Arg.Any <User>()).Returns(fakeCarProfiles);

            await _uut.GetCarProfilesTask(testUser);

            _fakeDbToAppModelConverter.Received().Convert(Arg.Any <List <CarProfile> >());
        }
        public async Task UpdateUserMessagesTask_UpdateUserCallsDbContext_UserCorrect()
        {
            var testMessages = new List <Message>()
            {
                new Message()
                {
                    TheMessage = "TestMsg1"
                },
                new Message()
                {
                    TheMessage = "TestMsg2"
                }
            };
            var testUser          = TestModelFactory.CreateUserModel();
            var testMessageModels = new List <MessageModel> {
                TestModelFactory.CreateMessageModel()
            };

            _fakeAppToDbModelConverter.Convert(Arg.Any <List <MessageModel> >()).Returns(testMessages);

            await _uut.UpdateUserMessagesTask(testMessageModels);

            await _fakeDbContext.Received(2).UpdateMessage(Arg.Is <Message>(msg => testMessages.Contains(msg)));
        }
示例#7
0
        public async Task AddUserMessages_UserMessageJunctionInDb_ContainsAnyMessageAndUser()
        {
            var pwd         = "123asd".ConvertToSecureString();
            var renterEmail = "renter@test";
            var lessorEmail = "lessor@test";
            await _dbQuerier.RegisterUserTask(renterEmail, pwd);

            await _dbQuerier.RegisterUserTask(lessorEmail, pwd);

            var renterUser = await _dbQuerier.GetUserTask(renterEmail, pwd);

            var lessorUser = await _dbQuerier.GetUserTask(lessorEmail, pwd);

            var carProfile  = TestModelFactory.CreateCarProfile();
            var testMessage = new MessageFromRenterModel(renterUser, lessorUser, carProfile, "TestMessage")
            {
                Sender   = renterUser,
                Receiver = lessorUser
            };

            await _dbQuerier.AddUserMessage(testMessage);

            Assert.That(((AppDbContext)_dbContextFactory.GetContext()).MessagesWithUsersJunction.Any());
        }
        public void TestSetup()
        {
            _fakeEventAggregator          = Substitute.For <IEventAggregator>();
            _fakeApplication              = Substitute.For <IApplication>();
            _fakeSearchEvent              = Substitute.For <SearchEvent>();
            _fakeDatabaseQuery            = Substitute.For <IQueryDatabase>();
            _fakeUserUpdateEvent          = Substitute.For <UserUpdateEvent>();
            _fakeUpdateEvent              = Substitute.For <NotificationMessagesUpdateEvent>();
            _fakeDatabasePollingLoopEvent = Substitute.For <DatabasePollingLoop>();
            _fakeEventAggregator.GetEvent <SearchEvent>().Returns(_fakeSearchEvent);
            _fakeEventAggregator.GetEvent <NotificationMessagesUpdateEvent>().Returns(_fakeUpdateEvent);
            _fakeEventAggregator.GetEvent <UserUpdateEvent>().Returns(_fakeUserUpdateEvent);
            _fakeEventAggregator.GetEvent <DatabasePollingLoop>().Returns(_fakeDatabasePollingLoopEvent);
            _uut = new HeaderBarViewModel(_fakeEventAggregator, _fakeApplication, _fakeDatabaseQuery);

            _fakeApplication.CurrentUser.Returns(TestModelFactory.CreateUserModel());

            _fakeDatabaseQuery.GetUserMessagesTask(Arg.Any <UserModel>(), Arg.Any <int>()).Returns(
                new List <MessageModel>()
            {
                TestModelFactory.CreateMessageModel("TestMsg", MessageType.LessorMessage)
            });
            _fakeDatabaseQuery.GetUserTask(Arg.Any <UserModel>()).Returns(TestModelFactory.CreateUserModel());
        }
示例#9
0
 public void MsgPackBytesGenericTest() =>
 BytesGenericTest(new MsgPack.Serializer(), TestModelFactory.Create());
示例#10
0
 public void JilBytesGenericTest() =>
 BytesGenericTest(new Jil.Serializer(Options.ISO8601Utc), TestModelFactory.Create());
示例#11
0
 static bool handleResponse(GetProductsRequest input, GetProductsPresenter output)
 {
     output.Handle(new GetProductsResponse(TestModelFactory.GetProductSample()));
     return(true);
 }
示例#12
0
 public void Write_Writes_Expected_PlainTextInput()
 {
     SerializeWithJsonWriter(TestModelFactory.PlainTextInput())
     .ShouldMatchSnapshot();
 }
 public async Task JilStreamGenericAsyncTest() =>
 await StreamGenericAsyncTest(new Jil.Serializer(Options.ISO8601Utc), new Jil.Serializer(Options.ISO8601Utc),
                              TestModelFactory.Create());
 public async Task Utf8JsonStreamGenericAsyncTest() =>
 await StreamGenericAsyncTest(new Utf8Json.Serializer(), new Utf8Json.Serializer(), TestModelFactory.Create());
示例#15
0
 public void Write_Writes_Expected_ChannelMultiSelectMenu()
 {
     SerializeWithJsonWriter(TestModelFactory.ChannelMultiSelectMenu())
     .ShouldMatchSnapshot();
 }
示例#16
0
 public void BinaryBytesGenericTest() =>
 BytesGenericTest(new Binary.Serializer(), TestModelFactory.Create());
示例#17
0
 public void XmlBytesGenericTest() =>
 BytesGenericTest(new Xml.Serializer(), TestModelFactory.Create());
示例#18
0
 public void SystemTextJsonBytesGenericTest() =>
 BytesGenericTest(new SystemTextJson.Serializer(), TestModelFactory.Create());
示例#19
0
 public void SharpYamlBytesNonGenericTest() =>
 BytesNonGenericTest(new SharpYaml.Serializer(), TestModelFactory.Create());
示例#20
0
 public void MessagePackBytesNonGenericTest() =>
 BytesNonGenericTest(new MessagePack.Serializer(), TestModelFactory.Create());
示例#21
0
 public void Write_Writes_Expected_ConversationSelectMenu()
 {
     SerializeWithJsonWriter(TestModelFactory.ConversationSelectMenu())
     .ShouldMatchSnapshot();
 }
示例#22
0
 public void NewtonsoftJsonBytesGenericTest() =>
 BytesGenericTest(new NewtonsoftJson.Serializer(), TestModelFactory.Create());
示例#23
0
 public void ProtobufBytesGenericTest() =>
 BytesGenericTest(new Protobuf.Serializer(), TestModelFactory.Create());
示例#24
0
 public void Write_Writes_Expected_RadioButtonGroup()
 {
     SerializeWithJsonWriter(TestModelFactory.RadioButtonGroup())
     .ShouldMatchSnapshot();
 }
示例#25
0
 public void Utf8JsonBytesGenericTest() =>
 BytesGenericTest(new Utf8Json.Serializer(), TestModelFactory.Create());
 public async Task MsgPackStreamGenericAsyncTest() =>
 await StreamGenericAsyncTest(new MsgPack.Serializer(), new MsgPack.Serializer(),
                              TestModelFactory.Create());
示例#27
0
 public void YamlDotNetBytesGenericTest() =>
 BytesGenericTest(new YamlDotNet.Serializer(), TestModelFactory.Create());
 public async Task NewtonsoftJsonStreamGenericAsyncTest() =>
 await StreamGenericAsyncTest(new NewtonsoftJson.Serializer(), new NewtonsoftJson.Serializer(),
                              TestModelFactory.Create());
示例#29
0
 public void DataContractBytesGenericTest() =>
 BytesGenericTest(new DataContractSerializer.Serializer(), TestModelFactory.Create());
 public async Task SystemTextJsonStreamGenericAsyncTest() =>
 await StreamGenericAsyncTest(new SystemTextJson.Serializer(), new SystemTextJson.Serializer(),
                              TestModelFactory.Create());