Exemplo n.º 1
0
        public static void Run([TimerTrigger("%CRON_EXPRESSION%")] TimerInfo myTimer, ILogger log)
        {
            //---------------------------------------------
            // HTMLを取得する
            //---------------------------------------------
            var repository = new HtmlRepository(__httpClient);
            var uri        = new Uri(Environment.GetEnvironmentVariable("MATTERMOST_WEBHOOK_URL"));

            //---------------------------------------------
            // HTMLを取得する
            //---------------------------------------------
            var parser = new TechCrunchPopularHtmlParserCreateService(repository).Create();

            //---------------------------------------------
            // 投稿するテキストを作成する
            //---------------------------------------------
            IMattermostText text = new PopularTechnologyText(parser);

            //---------------------------------------------
            // 投稿する
            //---------------------------------------------
            var service = new MattermostWebhookService(uri, text);
            var result  = service.Post();

            log.LogInformation($"HTTP Status: {(int)result.StatusCode} {result.ReasonPhrase}");
        }
Exemplo n.º 2
0
        public void Test_Build_Mattermost投稿用のテキストが生成されること()
        {
            IMattermostText textBuilder = new PopularTechnologyText(new DummyTechnologyTextCommand());

            var expected = @"本日話題になっているテクノロジーはこちら!
##### テストタイトル
https://sample.com";

            Assert.AreEqual(expected, textBuilder.Build());
        }