[Cleanup] Removed TARGET_JVM
[mono.git] / mcs / class / System.Web / Test / mainsoft / NunitWeb / NunitWeb / FakeMembershipProvider.cs
1 #if NET_2_0
2
3 using System;
4 using System.Web.Security;
5 using System.Collections.Specialized;
6 using System.Text;
7
8 namespace MonoTests.SystemWeb.Framework
9 {
10         public sealed class FakeMembershipProvider : MembershipProvider
11         {
12                 public bool requiresQuestionAndAnswer = true;
13
14                 public override void Initialize (string name, NameValueCollection config)
15                 {
16                         base.Initialize (name, config);
17                 }
18
19                 public override string ApplicationName
20                 {
21                         get { return "/"; }
22                         set { }
23                 }
24
25                 public override bool EnablePasswordReset
26                 {
27                         get { return true; }
28                 }
29
30
31                 public override bool EnablePasswordRetrieval
32                 {
33                         get { return true; }
34                 }
35
36
37                 public override bool RequiresQuestionAndAnswer
38                 {
39                         get { return requiresQuestionAndAnswer; }
40                 }
41
42
43                 public override bool RequiresUniqueEmail
44                 {
45                         get { return true; }
46                 }
47
48
49                 public override int MaxInvalidPasswordAttempts
50                 {
51                         get { return 10; }
52                 }
53
54
55                 public override int PasswordAttemptWindow
56                 {
57                         get { return 10; }
58                 }
59
60
61                 public override MembershipPasswordFormat PasswordFormat
62                 {
63                         get { return MembershipPasswordFormat.Clear; }
64                 }
65
66                 public override int MinRequiredNonAlphanumericCharacters
67                 {
68                         get { return 10; }
69                 }
70
71                 public override int MinRequiredPasswordLength
72                 {
73                         get { return 10; }
74                 }
75
76                 public override string PasswordStrengthRegularExpression
77                 {
78                         get { return ""; }
79                 }
80
81                 public override bool ChangePassword (string username, string oldPwd, string newPwd)
82                 {
83                         if (username == "WrongUser")
84                                 return false;
85                         return true;
86                 }
87
88                 public override bool ChangePasswordQuestionAndAnswer (string username,
89                         string password,
90                         string newPwdQuestion,
91                         string newPwdAnswer)
92                 {
93                         return true;
94                 }
95
96                 public override MembershipUser CreateUser (string username,
97                         string password,
98                         string email,
99                         string passwordQuestion,
100                         string passwordAnswer,
101                         bool isApproved,
102                         object providerUserKey,
103                         out MembershipCreateStatus status)
104                 {
105
106                         if (username == "duplicate") {
107                                 status = MembershipCreateStatus.DuplicateUserName;
108                                 return null;
109                         }
110
111                         if (username == "incorrect") {
112                                 status = MembershipCreateStatus.InvalidUserName;
113                                 return null;
114                         }
115                         
116                         if (password == "incorrect") {
117                                 status = MembershipCreateStatus.InvalidPassword;
118                                 return null;
119                         }
120
121                         if (email == "incorrect") {
122                                 status = MembershipCreateStatus.InvalidEmail;
123                                 return null;
124                         }
125
126                         if (email == "duplicate") {
127                                 status = MembershipCreateStatus.DuplicateEmail;
128                                 return null;
129                         }
130
131                         if (passwordQuestion == "incorrect") {
132                                 status = MembershipCreateStatus.InvalidQuestion;
133                                 return null;
134                         }
135
136                         if (passwordAnswer == "incorrect") {
137                                 status = MembershipCreateStatus.InvalidAnswer;
138                                 return null;
139                         }
140
141                         MembershipUser u = new MembershipUser ("FakeProvider", username, "", email, passwordQuestion, "", isApproved, false, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now);
142                         status = MembershipCreateStatus.Success;
143                         return u;
144                 }
145
146                 public override bool DeleteUser (string username, bool deleteAllRelatedData)
147                 {
148                         return true;
149                 }
150
151                 public override MembershipUserCollection GetAllUsers (int pageIndex, int pageSize, out int totalRecords)
152                 {
153                         totalRecords = 0;
154                         return new MembershipUserCollection ();
155                 }
156
157                 public override int GetNumberOfUsersOnline ()
158                 {
159                         return 123;
160                 }
161
162                 public override string GetPassword (string username, string answer)
163                 {
164                         return "123";
165                 }
166
167                 public override MembershipUser GetUser (string username, bool userIsOnline)
168                 {
169                         MembershipUser u = new MembershipUser ("FakeProvider", username, null, "name@email.com", "", "", true, false, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now);
170                         return u;
171                 }
172
173                 public override MembershipUser GetUser (object providerUserKey, bool userIsOnline)
174                 {
175                         MembershipUser u = new MembershipUser ("", "", providerUserKey, "name@email.com", "", "", true, false, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now);
176                         return u;
177                 }
178
179                 public override bool UnlockUser (string username)
180                 {
181                         return true;
182                 }
183
184                 public override string GetUserNameByEmail (string email)
185                 {
186                         return "heh";
187                 }
188
189                 public override string ResetPassword (string username, string answer)
190                 {
191                         return "123";
192                 }
193
194                 public override void UpdateUser (MembershipUser user)
195                 {
196                 }
197
198                 public override bool ValidateUser (string username, string password)
199                 {
200                         if (password == "incorrect")
201                                 return false;
202
203                         return true;
204                 }
205
206                 private bool CheckPassword (string password, string dbpassword)
207                 {
208                         return true;
209                 }
210
211                 private string EncodePassword (string password)
212                 {
213                         return "123";
214                 }
215
216                 private string UnEncodePassword (string encodedPassword)
217                 {
218                         return "123";
219                 }
220
221                 public override MembershipUserCollection FindUsersByName (string usernameToMatch, int pageIndex, int pageSize, out int totalRecords)
222                 {
223                         totalRecords = 0;
224                         return new MembershipUserCollection ();
225                 }
226
227                 public override MembershipUserCollection FindUsersByEmail (string emailToMatch, int pageIndex, int pageSize, out int totalRecords)
228                 {
229                         totalRecords = 0;
230                         return new MembershipUserCollection ();
231                 }
232         }
233 }
234
235 #endif