-
Notifications
You must be signed in to change notification settings - Fork 2k
Expand file tree
/
Copy pathTestHardcodedCredentials.cs
More file actions
58 lines (53 loc) · 1.72 KB
/
TestHardcodedCredentials.cs
File metadata and controls
58 lines (53 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
using System;
using System.Web.Security;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Moq.Language
{
class TestReturn
{
public static void Returns(Func<MembershipUser> objFunc) { }
}
}
[TestClass]
public class HardCodedCredentialsTest
{
[TestMethod]
public void TestUnsafe()
{
// GOOD: Create test user
Membership.CreateUser("myusername", "mypassword");
// BAD: Create a membership user with hardcoded username
MembershipUser user = new MembershipUser(
providerName: "provider",
name: "username",
providerUserKey: "username",
email: "foo@bar.com",
passwordQuestion: "Hardcoded question.",
comment: "",
isApproved: true,
isLockedOut: false,
creationDate: DateTime.Now,
lastLoginDate: DateTime.Now,
lastActivityDate: DateTime.Now,
lastPasswordChangedDate: DateTime.Now,
lastLockoutDate: DateTime.Now
);
// GOOD: Create a membership user which will be returned by a mock
MembershipUser mockUser = new MembershipUser(
providerName: "provider",
name: "username",
providerUserKey: "username",
email: "foo@bar.com",
passwordQuestion: "Hardcoded question.",
comment: "",
isApproved: true,
isLockedOut: false,
creationDate: DateTime.Now,
lastLoginDate: DateTime.Now,
lastActivityDate: DateTime.Now,
lastPasswordChangedDate: DateTime.Now,
lastLockoutDate: DateTime.Now
);
Moq.Language.TestReturn.Returns(() => mockUser);
}
}