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");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,3 +1,9 @@
|
|||
2015-10-07 Paul Schneider <paul@pschneider.fr>
|
||||
|
||||
* BlogUnitTest.cs: Should test the user registration
|
||||
|
||||
* TestAPI.csproj: switch to .Net framework 4.5.1
|
||||
|
||||
2015-10-04 Paul Schneider <paul@pschneider.fr>
|
||||
|
||||
* TestAPI.csproj:
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>TestAPI</RootNamespace>
|
||||
<AssemblyName>TestAPI</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
|
|
@ -55,10 +55,14 @@
|
|||
<Reference Include="Spark">
|
||||
<HintPath>..\packages\Spark.1.8.1.0\lib\NET45\Spark.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Web.Mvc" />
|
||||
<Reference Include="System.Web.ApplicationServices" />
|
||||
<Reference Include="System.Web" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="TestAutomate.cs" />
|
||||
<Compile Include="BlogUnitTest.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<ItemGroup>
|
||||
|
|
@ -66,6 +70,10 @@
|
|||
<Project>{68F5B80A-616E-4C3C-91A0-828AA40000BD}</Project>
|
||||
<Name>YavscModel</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\web\Web.csproj">
|
||||
<Project>{77044C92-D2F1-45BD-80DD-AA25B311B027}</Project>
|
||||
<Name>Web</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue