141 Commits

Author SHA1 Message Date
ljacqu
914462fc3f Unit test ConsoleLogger + clean up and unit test RecoverEmailCommand 2016-07-22 22:09:55 +02:00
ljacqu
a8df8ceb09 #605 Add custom log levels, create debug logging method
- Log levels in the log file too
- Create migration from old boolean "stop spam" property to new log level property
2016-07-22 17:45:00 +02:00
Gabriele C
0eb1890cf9 Cleanup 2016-07-22 09:55:22 +02:00
ljacqu
cf1032d936 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 784-purgeservice-architecture
Conflicts:
	src/test/java/fr/xephi/authme/task/purge/PurgeServiceTest.java
2016-07-18 20:13:43 +02:00
ljacqu
9a534274e5 #835 Fix CommandHandler test class
- DelayedInjectionRunner cannot handle mocking the injector as it runs with an injector in the background
2016-07-18 19:50:19 +02:00
ljacqu
3334e2a160 #835 Implement reloading with external injector 2016-07-18 19:39:55 +02:00
ljacqu
9a91156000 #835 Replace injector classes with ones from ch.jalu.injector project 2016-07-17 21:50:48 +02:00
ljacqu
2a4cda0709 #784 Perform bypass purge permission check with OfflinePlayer objects
- Move permission check inside PurgeTask to perform it with OfflinePlayer objects instead of lowercase names
- Move purge members into child "purge" package
- Unify online and offline default permission behavior in DefaultPermission
2016-07-17 11:54:22 +02:00
ljacqu
2867ebaddd Fix failing test 2016-07-04 20:31:40 +02:00
ljacqu
3984208548 #797 Make two messages translatable 2016-07-02 21:52:50 +02:00
ljacqu
9a5c432509 #655 Encapsulate mail service
- Change SendMailSSL to be injected into classes and created regardless of settings
- Various minor cleanups (remove accidentally committed test, add more precise logging statement)
2016-07-02 20:56:53 +02:00
ljacqu
e7ba579960 #778 Delayed runner: add support for annotations, add validation
- Add support for dependencies identified by annotations
- Add some more usage validation
- Change a few test classes to use the DelayedInjectionRunner
2016-06-19 22:54:12 +02:00
ljacqu
fb5e7d40c6 Change delayed injection to only change behavior of its own elements
- Introduce new BeforeInjecting annotation to not modify the (expected) order of annotations that do not belong to us
  - Avoids using hacky way of first initializing field to an Answer that will delegate on demand to the proper class...
- Remove PostConstruct support for Mockito's InjectMocks: we should not change the established behavior of external elements
2016-06-18 15:31:11 +02:00
ljacqu
a1c62e7c04 Create delayed injection test runner
- Test runner supporting new "DelayedInjection" annotation: such fields are only initialized with instantiation right before the first time they're used in tests, allowing to set up mock behavior beforehand
2016-06-18 13:19:07 +02:00
ljacqu
cd1acfde1b #674 Create tests for purge commands and purge service 2016-06-18 11:13:17 +02:00
ljacqu
acd4a772e8 Minor householding in tests
- Add missing test for injector
- Remove redundant Mock fields
2016-06-15 21:24:57 +02:00
ljacqu
ac484345a2 Change password task to async process
- Perform async change password task just like other async processes: via Management
- Remove legacy setting
- Remove now unused service getter (#736)
2016-06-15 20:56:34 +02:00
ljacqu
5cbb83e153 Code householding, add tests to TempbanManager
- Delegate event firing to BukkitService
- Write tests for IP banning function
- Update comments on tempban properties in config.yml
2016-06-14 21:52:43 +02:00
ljacqu
4d75542594 Remove unused fields instead of suppressing warnings 2016-06-11 19:05:10 +02:00
Gabriele C
01f297919d 1.10 API + cleanup 2016-06-11 17:46:24 +02:00
ljacqu
2e269b6f5e Add missing unit tests for commands 2016-06-05 13:21:05 +02:00
ljacqu
26ac466035 #727 Instantiate ExecutableCommand objects in CommandHandler
- Change CommandDescription to contain a reference to ExecutableCommand class only
- Instantiate the actual ExecutableCommand objects in CommandHandler
2016-06-04 21:13:38 +02:00
ljacqu
c6778b566d #727 Remove CommandService from ExecutableCommand interface
(work in progress)
- Inject CommandService like other classes instead of passing it as method parameter
- Not solved: cyclic dependency CommandInitializer > ExecutableCommand > CommandService > CommandInitializer...
2016-06-04 11:02:15 +02:00
ljacqu
12703d1613 #601 Integrate plugin manager
- Encapsulate captcha functionality into a class instead of two public fields on the AuthMe main class(!)
   - Let CaptchaManager worry about whether it is enabled or not -> no need to check on the outside
- Implement full reloading support to enable/disable captchas + parameters
- Add unit tests
2016-06-03 22:47:17 +02:00
ljacqu
55f7e8097a #743 Add proper error message for "invalid chars in password"
- Change password validation to return a ValidationResult object for passing message arguments
- Remove wrapping methods in ProcessService and CommandService and use ValidationService directly
2016-06-03 12:51:49 +02:00
Gabriele C
eafb3b6653 cleanup 2016-06-03 00:07:25 +02:00
ljacqu
6d2597a980 #739 Fix command unit tests; adjust default handling
(cherry picked from commit 61c119b)
2016-06-02 23:12:01 +02:00
Gnat008
73272b5931 Remove all but one hasPermission() method in the PermissionsManager
#739 (cherry picked from commit 65f3347)
2016-06-02 23:11:47 +02:00
ljacqu
9b5009eb8c #742 Create test that plugin.yml corresponds to command definitions
- Create test
- Fix definitions to correspond
2016-06-02 15:49:21 +02:00
ljacqu
30b72bec4c #604 Fix HelpProvider tests 2016-05-30 23:49:59 +02:00
EbonJaguar
3ad00a45f9 Move default permissions out of Commands and into PermissionNode - fixes #606 2016-05-30 16:47:48 -04:00
ljacqu
9b1ee86b2f Trivial code householding
- Replace `if (!x) ... else ...` with `if(x) ... else ...`
- Avoid throwing RuntimeException; use children
2016-05-30 12:18:55 +02:00
ljacqu
53043ddc0d Create tool task that checks Mock fields of test classes 2016-05-21 11:54:54 +02:00
ljacqu
14002ee75c #704 Reload settings of ConsoleLogger on /authme reload 2016-05-19 19:46:02 +02:00
ljacqu
e04f7dc711 #704 Implement reloading via injector
- Create interfaces Reloadable and SettingsDependent to recognize reloadable classes
- Iterate through instances in injector to reload
2016-05-12 19:51:10 +02:00
ljacqu
8e878d6a5a Remove BukkitService from CommandService, inject where needed instead 2016-05-08 13:50:20 +02:00
ljacqu
5e5836f167 #432 Injector improvements
- Separate FieldInjection from default fallback for no-Inject public no-args constructor classes
- Make CommandInitializer a normal, instantiable service
- Add various injections instead of fetching through command service
2016-05-08 11:15:56 +02:00
ljacqu
3fe2f0b6a8 Add missing test matcher
- Mock verifications need matchers on all parameters, or on none. Test fails otherwise
2016-05-04 18:40:06 +02:00
Gabriele C
7c52460c87 Merge branch 'pre-injector' 2016-05-04 18:03:33 +02:00
Gabriele C
1ea2f98727 Start working on #687
Next step: Future return of the async registration
2016-05-04 18:01:47 +02:00
Gabriele C
5ceabe2146 Cleanup 2016-05-04 17:26:58 +02:00
ljacqu
491dc06de4 Fix RegisterAdminCommand test verifying that online player is kicked 2016-05-02 19:57:54 +02:00
ljacqu
f76a68cb26 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 432-dependency-injection
Conflicts:
	src/main/java/fr/xephi/authme/AuthMe.java
	src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java
	src/main/java/fr/xephi/authme/hooks/PluginHooks.java
	src/main/java/fr/xephi/authme/listener/AuthMePlayerListener.java
	src/main/java/fr/xephi/authme/listener/AuthMeServerListener.java
	src/test/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommandTest.java
2016-05-02 19:48:12 +02:00
ljacqu
9af596327a #432 Inject in commands: DataSource / AntiBot / PasswordSecurity / PlayerCache
- Inject the services instead of passing them through the command service
2016-05-02 18:52:34 +02:00
Xephi59
20a237dbdf [DEV] This test would fail until player couldn't be returned as he was
kicked
2016-05-02 03:38:25 +02:00
ljacqu
5963628fa6 #432 Add field injection to AccountsCommand 2016-04-27 22:59:44 +02:00
ljacqu
02079f1f5c #432 Create custom dependency injector 2016-04-27 22:49:20 +02:00
ljacqu
71515f188a #551 Email registration should fail if no server email is configured
- Stop registration and issue an error if the email address setting is empty for email registration
- Refactor register command into smaller portions
- Create tests
2016-04-15 14:37:47 +02:00
ljacqu
ca0cbe6caf Code householding
- Move console initialization for tests into TestHelper
- Remove unused properties in legacy Settings
- Add issue number to TODO comments where applicable
2016-04-14 12:28:19 +02:00
ljacqu
e2b50b72a5 Get player via BukkitService; add unit tests for commands 2016-04-08 19:56:44 +02:00