/// <summary>
        /// The CreateDummyOperations.
        /// </summary>
        /// <param name="operations">The operations<see cref="ObservableCollection{OperationModel}"/>.</param>
        /// <param name="pauseDownloadAction">The pauseDownloadAction<see cref="ICommand"/>.</param>
        private void CreateDummyOperations(ObservableCollection <DownloadItemModel> operations, Action <DownloadItemModel> pauseDownloadAction)
        {
            var random = new Random();

            for (var i = 0; i < 10; i++)
            {
                var operation = new DummyOperation()
                {
                    Status = (OperationStatus)(i % 6)
                };
                var operationModel = new OperationModel(operation)
                {
                    PauseDownloadAction = pauseDownloadAction, IsQueuedControlsVisible = (i & 1) == 1
                };
                var progress = TestHelper.GetRandomLong(0, 100);
                operation.Duration           = TestHelper.GetRandomLong(10, 10000);
                operation.FileSize           = TestHelper.GetRandomLong(10000, 10000000000);
                operation.Input              = $"https://youtube.com/view={i}";
                operation.Link               = $"https://youtube.com/link={i}";;
                operation.Output             = $@"C:\Users\YoutubeUser\File{TestHelper.GetRandomLong(100, 10000)}.mp4";
                operation.Progress           = progress;
                operation.ProgressPercentage = (int)progress;
                operation.ProgressText       = $"{progress}%";
                operation.ReportsProgress    = true;
                operation.Speed              = $"{TestHelper.GetRandomInt(10, 100)}MB/s";
                operation.Status             = (OperationStatus)(i % 6);
                operation.Thumbnail          = null;
                operation.Title              = $"Youtube Title Movie Number {i}";
                operations.Add(operationModel);
            }
        }
        public void ContainsTest()
        {
            var operation1 = new DummyOperation
            {
                Output = "NewVideo1.mp4"
            };
            var operation2 = new DummyOperation
            {
                Output = "NewVideo2.mp4"
            };
            var operation3 = new DummyOperation
            {
                Output = "NewVideo1.mp4"
            };

            var model1 = new OperationModel(operation1);
            var model2 = new OperationModel(operation2);
            var model3 = new OperationModel(operation3);
            var models = new ObservableCollection <OperationModel>
            {
                model1,
                model2
            };

            models.Contains(model1).Should().BeTrue();
            models.Contains(model2).Should().BeTrue();
            models.Contains(model3).Should().BeTrue();
        }
Example #3
0
        public void ForExistingOperationShouldUseInitializers()
        {
            var operation = new DummyOperation();
            var proxy     = _factory.UseExisting(operation, o => o.Str = o.Str == "test" ? "test2" : null);

            proxy.Operation.Str.Should().Be("test2");
        }
Example #4
0
        public void ForExistingOperationShouldCreateProxy()
        {
            var operation = new DummyOperation();
            var proxy     = _factory.UseExisting(operation);

            proxy.Should().NotBeNull();
            proxy.Operation.Should().Be(operation);
            proxy.Bus.Should().NotBeNull();
        }
        public void SerializeToString_OneOperation_Serialize()
        {
            var dummyOperation = new DummyOperation();

            dummyOperation.Value = "Test";

            var operationSequence = new RenameOperationSequence <IRenameOperation>();

            operationSequence.Add(dummyOperation);

            string expectedSerializedString =
                "[RedBlueGames.MulliganRenamer.RenameOperationSequenceTests+DummyOperation]" +
                "{\"value\":\"Test\"}";

            Assert.AreEqual(expectedSerializedString, operationSequence.ToSerializableString());
        }
        public void DeserializeFromString_ValidOperations_Deserializes()
        {
            // Arrange
            string serializedString =
                "[" + typeof(DummyOperation).AssemblyQualifiedName + "]" +
                "{\"value\":\"Serialized value\"}";

            var dummyOperation = new DummyOperation();

            dummyOperation.Value = "Serialized value";
            var expectedSequence = new RenameOperationSequence <IRenameOperation>();

            expectedSequence.Add(dummyOperation);

            // Act
            var deserializedSequence = RenameOperationSequence <IRenameOperation> .FromString(serializedString);

            // Assert
            CollectionAssert.AreEqual(expectedSequence, deserializedSequence);
        }
        public void SerializeToString_TwoOperations_Serialize()
        {
            var dummyOperation1 = new DummyOperation();

            dummyOperation1.Value = "First value";

            var dummyOperation2 = new DummyOperation();

            dummyOperation2.Value = "The next value";

            var operationSequence = new RenameOperationSequence <IRenameOperation>();

            operationSequence.Add(dummyOperation1);
            operationSequence.Add(dummyOperation2);

            string expectedSerializedString =
                "[RedBlueGames.MulliganRenamer.RenameOperationSequenceTests+DummyOperation]" +
                "{\"value\":\"First value\"}\n" +
                "[RedBlueGames.MulliganRenamer.RenameOperationSequenceTests+DummyOperation]" +
                "{\"value\":\"The next value\"}";

            Assert.AreEqual(expectedSerializedString, operationSequence.ToSerializableString());
        }