Starting to test some controller
* BlogUnitTest.cs: Should test the user registration * NpgsqlBlogProvider.cs: Fixes usage of Npgsql upgrade to latest version * TestAPI.csproj: switch to .Net framework 4.5.1 * AccountController.cs: refactoring password validation * CalendarController.cs: * WorkFlowController.cs: SendActivationMessage became an extension method * style.css: menu items already have a background and color, since they're `<A>` tags * Unregister.aspx: * AccountController.cs: refactoring user registration * BlogsController.cs: Fixes a confusion between Author and reader ... * YavscHelpers.cs: refactoring the password reset * App.master: no more <div class="menuitem">, they're hyperlinks * Login.aspx: * Profile.aspx: refactoring the user registration * BlogEntryCollection.cs: implements a method to filter a given post collection in order to be displayed tu a given user or anonymous
This commit is contained in:
parent
8a2113a69a
commit
303aaa5e1b
19 changed files with 218 additions and 65 deletions
76
TestAPI/BlogUnitTest.cs
Normal file
76
TestAPI/BlogUnitTest.cs
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
//
|
||||
// BlogUnitTest.cs
|
||||
//
|
||||
// Author:
|
||||
// Paul Schneider <paul@pschneider.fr>
|
||||
//
|
||||
// Copyright (c) 2015 GNU GPL
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Lesser General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
using NUnit.Framework;
|
||||
using System;
|
||||
using Yavsc.Model.Blogs;
|
||||
using Yavsc.Controllers;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Security;
|
||||
|
||||
namespace TestAPI
|
||||
{
|
||||
[TestFixture ()]
|
||||
public class BlogUnitTest
|
||||
{
|
||||
|
||||
public string UserName { get; set; }
|
||||
public string Email { get; set; }
|
||||
public string Password { get; set; }
|
||||
|
||||
|
||||
AccountController accountController;
|
||||
[TestFixtureSetUp]
|
||||
public void Init()
|
||||
{
|
||||
accountController = new AccountController ();
|
||||
}
|
||||
|
||||
[Test ()]
|
||||
public void Register ()
|
||||
{
|
||||
ViewResult actionResult = accountController.Register (
|
||||
new Yavsc.Model.RolesAndMembers.RegisterViewModel () {
|
||||
UserName = UserName, Email = Email,
|
||||
Password = "tpwd", ConfirmPassword = Password,
|
||||
IsApprouved = true
|
||||
},
|
||||
"/testreturnurl") as ViewResult;
|
||||
Assert.AreEqual (actionResult.ViewName, "RegistrationPending");
|
||||
MembershipUser u = Membership.GetUser (UserName, false);
|
||||
Assert.NotNull (u);
|
||||
Assert.False (u.IsApproved);
|
||||
// TODO : check mail for test,
|
||||
// get the validation key from its body,
|
||||
// and use the accountController.Validate(username,key)
|
||||
u.IsApproved = true;
|
||||
Membership.UpdateUser (u);
|
||||
Assert.True (u.IsApproved);
|
||||
}
|
||||
[TestFixtureTearDown()]
|
||||
public void Unregister()
|
||||
{
|
||||
ViewResult actionResult =
|
||||
accountController.Unregister (UserName, true) as ViewResult;
|
||||
Assert.AreEqual (actionResult.ViewName, "Index");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue