Example #1
0
 public void Setup()
 {
     _message = Substitute.For <IMessage>();
     _lineNotifySubscription = Substitute.For <ILineNotifySubscription>();
     _registrationCache      = new RegistrationCache();
     _registrationHandler    = new StubRegistrationHandler(_message, _registrationCache, _lineNotifySubscription);
     _lineNotifySubscription.GenerateLink(Arg.Any <string>()).Returns(_link);
 }
        public Task Act(Event @event)
        {
            if (@event.Text().Equals("我要註冊"))
            {
                if (_lineNotifySubscription.IsRegistered(@event.SenderId()))
                {
                    _message.Reply(@event.replyToken, "你已經註冊了");
                }
                else
                {
                    var guid = GenerateGuid();
                    _registrationCache.Add(guid, @event.SenderId());
                    _message.Reply(@event.replyToken, _lineNotifySubscription.GenerateLink(guid));
                }
            }

            return(Task.CompletedTask);
        }