protected override void OnPreRender(EventArgs e) { // O valor por omissão é 'true' pelo que no primeiro acesso está válido // porque não foi avaliado. Assim não é preciso testar essa situação. if (!this.IsValid) { Page.Session[CAPTCHA_KEY] = data = CreateCaptchaData(); } base.OnPreRender(e); }
public void ConstructorTest() { string code = "examplecode"; string id = "someid"; CaptchaData target = new CaptchaData(code, id); Assert.AreEqual<string>("examplecode", target.Code); Assert.AreEqual<string>("someid", target.Id); Assert.AreEqual<string>("http://services.sapo.pt/Captcha/Show?id=someid", target.Url); }
protected override void OnLoad(EventArgs e) { if (Page.IsPostBack) { data = Page.Session[CAPTCHA_KEY] as CaptchaData; } else { Page.Session[CAPTCHA_KEY] = data = CreateCaptchaData(); } base.OnLoad(e); }
public void GenerateTest() { MockRepository mock = new MockRepository(); CaptchaGenerator generator = CreateGenerator( "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "<Captcha xmlns=\"http://services.sapo.pt/Metadata/Captcha\">" + "<id>59094f26e1e7129b2d52c7f47b571468a7a92e55</id><code>redes900</code><msg>ok</msg>" + "</Captcha>", mock); CaptchaData expected = new CaptchaData("redes900", "59094f26e1e7129b2d52c7f47b571468a7a92e55"); CaptchaData actual = generator.Generate(); Assert.AreEqual(expected.Id, actual.Id, "Incorrect id."); Assert.AreEqual(expected.Code, actual.Code, "Incorrect code."); Assert.AreEqual(expected.Url, actual.Url, "Incorrect url."); mock.VerifyAll(); }