public async Task <QuoteDto> GetQuote(QuoteDto quoteDto)
        {
            var erpQuoteDtoReq  = ErpQuoteFactory.BuildFrom(quoteDto);
            var erpQuoteDtoResp = await _erpService.GetQuote(erpQuoteDtoReq);

            return(QuoteFactory.MergeQuoteDto(quoteDto, QuoteFactory.BuildFrom(erpQuoteDtoResp)));
        }
        public void CreateRandomQuote_creates_quote()
        {
            // arrange
            var factory = new QuoteFactory();

            // act
            var quote = factory.CreateRandomQuote();

            // assert
            Assert.IsNotNull(quote);
        }
        public void CreateListOfRandomQuotes_returns_list_of_correct_length()
        {
            // arrange
            var factory = new QuoteFactory();
            var count   = 1000;

            // act
            var quotes = factory.CreateListOfRandomQuotes(count);

            // assert
            Assert.That(quotes.Count, Is.EqualTo(count));
        }
Beispiel #4
0
 public IActionResult NewQuote(Quote quote)
 {
     if (ModelState.IsValid)
     {
         QuoteFactory.NewQuote(quote);
         return(RedirectToAction("Index"));
     }
     else
     {
         return(View("Index"));
     }
 }
        public void CreateRandomQuote_respects_my_authority()
        {
            // arrange
            var factory            = new QuoteFactory();
            var allowedIdentifiers = new Identifiers(new List <string> {
                "SBUX"
            });
            // act
            var quote = factory.CreateRandomQuote(allowedIdentifiers);

            // assert
            Assert.That(quote.Identifier, Is.EqualTo("SBUX"));
        }
        private void SerializeButton_OnClick(object sender, RoutedEventArgs e)
        {
            var dialog = new SaveFileDialog();

            dialog.FileName   = "quotes";
            dialog.DefaultExt = ".json";
            dialog.Filter     = "JSON file (.json)|*.json";

            Nullable <bool> result = dialog.ShowDialog();

            if (result == true)
            {
                MessageBox.Show(QuoteFactory.SerializeQuotes(dialog.FileName) ? "Serialization ended successfully." : "Serialization failed.");
            }
        }
Beispiel #7
0
        public void QuoteFactory_Simple()
        {
            const int N = 16; // NB: Ensure this value is higher than Creator<T, R>.CompilationInvocationThreshold.

            for (var i = 0; i < N; i++)
            {
                var foo  = new Foo();
                var expr = Expression.Constant(foo);
                var args = new object[] { i };

                var q1 = (QuotedFoo)QuoteFactory.Create <IFoo, QuotedFoo>(foo, expr, args);

                Assert.AreSame(foo, q1.Value);
                Assert.AreSame(expr, q1.Expression);
                Assert.AreEqual(args[0], q1.Argument);
            }
        }
Beispiel #8
0
        static void Main(string[] args)
        {
            filename       = args.Length > 0 ? args[0] : "quotes.json";
            title          = args.Length > 1 ? args[1] : "The Daily Pratchett";
            url            = args.Length > 2 ? args[2] : "http://rolieolie.github.io/TheDailyPratchett/";
            description    = args.Length > 3 ? args[3] : "A quote from Sir Terry Pratchett every day.";
            outputFilename = args.Length > 4 ? args[4] : "rss.xml";

            if (args.Length > 5)
            {
                startDateInput = args[5];
                var date = startDateInput.Split('-');
                try
                {
                    startDate = new DateTime(Int32.Parse(date[0]), Int32.Parse(date[1]), Int32.Parse(date[2]));
                }
                catch
                {
                    Console.WriteLine("Error during parsing the input date");
                }
            }
            else
            {
                startDate = new DateTime(2015, 5, 1);
            }

            rssUrl        = args.Length > 6 ? args[6] : "http://rolieolie.github.io/TheDailyPratchett/website/rss.xml";
            numberOfItems = args.Length > 7 ? Int32.Parse(args[7]) : 1;

            if (!QuoteFactory.CreateQuotes(filename))
            {
                Console.WriteLine("error while reading quotes)");
                return;
            }

            rssDocument = QuoteFactory.CreateRSSFile(startDate, DateTime.Now, title, url, description, rssUrl, numberOfItems);
            XmlWriterSettings xws = new XmlWriterSettings {
                OmitXmlDeclaration = true
            };

            xws.Indent = true;
            using (XmlWriter xWriter = XmlWriter.Create(outputFilename, xws))
            {
                rssDocument.Save(xWriter);
            }
        }
        private void SetQuote(int quoteNumber)
        {
            if (!_loaded)
            {
                MessageBox.Show("Load a quote file first.");
                return;
            }

            if (quoteNumber < 0 || quoteNumber >= QuoteFactory.Count)
            {
                shownQuoteNumber = quoteNumber < 0 ? 0 : QuoteFactory.Count - 1;
                return;
            }
            var quote = QuoteFactory.GetQuote(quoteNumber);

            QuoteGroupBox.Header = quote.Author;
            quoteContent.Content = quote.Content;
        }
        private void ReadFile_OnClick(object sender, RoutedEventArgs e)
        {
            var dialog = new OpenFileDialog();

            dialog.DefaultExt = ".txt";
            dialog.Filter     = "Text documents (.txt)|*.txt|Json documents (.json)|*.json";

            Nullable <bool> result = dialog.ShowDialog();

            if (result == true)
            {
                try
                {
                    QuoteFactory.CreateQuotes(dialog.FileName);
                    _loaded = true;
                    SetQuote(shownQuoteNumber);
                }
                catch (IOException)
                {
                    MessageBox.Show("Failed to load the quotes.");
                }
            }
        }
 public HomeController(QuoteFactory qFactory)
 {
     _quoteFactory = qFactory;
 }
 public HomeController()
 {
     qFactory = new QuoteFactory();
     uFactory = new UserFactory();
 }
 public QuoteController(QuoteFactory quote)
 {
     //Instantiate a UserFactory object that is immutable (READONLY)
     //This is establish the initial DB connection for us.
     quoteFactory = quote;
 }
Beispiel #14
0
 public IActionResult Index()
 {
     ViewBag.all_quotes = QuoteFactory.FindAll();
     return(View());
 }