Commit Graph

543 Commits

Author SHA1 Message Date
ljacqu
18a9fbaa26 #449 Migrate remaining non-group legacy Settings 2016-07-23 14:44:52 +02:00
ljacqu
2d10b46df2 Set ConsoleLogger not to use log file after running ConsoleLoggerTest 2016-07-22 22:49:11 +02:00
ljacqu
cf3d84e3c1 Merge "stringWithLength" matcher implementations
- For some reason Hamcrest does not provide a "string with length" matcher -> move our two implementations as one method in AuthMe matchers class
2016-07-22 22:14:10 +02:00
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
8fcb651ebb Merge branch '784-purgeservice-architecture' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-07-20 21:31:25 +02:00
ljacqu
3487386840 #835 Fix handling of annotations in DrawDependency tool task 2016-07-19 20:04:55 +02:00
ljacqu
d791fcba94 #835 Remove all injector classes from AuthMe, update installer tasks 2016-07-18 21:47:26 +02:00
ljacqu
57f90fe410 #784 Make DataSource#purgeRecords case-insensitive 2016-07-18 21:29:05 +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
ca4a64f398 #844 Run PurgeTask as repeating task and #784 write tests for PurgeTask 2016-07-17 21:12:01 +02:00
ljacqu
5953bfd012 #784 Separate purge execution and purge task creation
- Delete accounts in PurgeExecutor, after permission check
2016-07-17 17:33:25 +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
Gabriele C
b439a0391c Add option to apply the protection also to registered users #860 2016-07-16 21:10:29 +02:00
ljacqu
674a051586 #762 Clear all stored sessions if feature gets disabled on reload 2016-07-15 19:47:42 +02:00
ljacqu
3b06524796 #762 Use timestamps for session + #816 Logout should invalidate a player's session 2016-07-15 19:35:35 +02:00
ljacqu
10392d0d65 #856 Handle null Location on PlayerCache object
- Location may null when read from file
2016-07-15 18:49:01 +02:00
ljacqu
160cbc6aa4 #849 Catch exception in TwoFactor hash and write unit tests 2016-07-15 18:23:18 +02:00
ljacqu
dccbd5262f Don't update IP twice
- IP is updated in datasource#updateSession after successful login
- Remove no longer used DataSource#updateIp
2016-07-12 21:45:05 +02:00
ljacqu
8d54557f3d Add tests for PlayerDataStorage and LimboCache 2016-07-11 21:09:15 +02:00
ljacqu
a6d885e0bb Write tests for PlayerDataStorage 2016-07-10 23:00:58 +02:00
ljacqu
8e91636fbd Create tests for LimboCache 2016-07-10 17:15:27 +02:00
ljacqu
491853e0c8 Change github URLs from AuthMe-Team/ to AuthMe/
- Change README sections to use more markdown
2016-07-10 11:42:40 +02:00
ljacqu
aa6fe3e874 Rename method on SettingsDependent
- Rename loadSettings to reload
- Make ProtocolLibService only implement SettingsDependent, not Relaodable alongside
2016-07-09 09:24:25 +02:00
ljacqu
d8f6fb085e Cleanup - remove unused elements in code 2016-07-04 21:53:22 +02:00
ljacqu
2867ebaddd Fix failing test 2016-07-04 20:31:40 +02:00
ljacqu
c040623739 Merge 765-teleport-handling into jsoncache-fix 2016-07-04 18:47:34 +02:00
DNx5
140275f366 - Add restore method in LimboCache
* Apply it to process that have use of it
- Fix fly & walk speed not get restored
2016-07-04 13:21:57 +07:00
ljacqu
7788ad6230 #765 Replace Utils usages with TeleportService + misc householding
- Remove some legacy settings
- Move Utils "addNormal" method to AuthGroupHandler

(Reapplied changes from orphaned fe29089)
2016-07-03 19:55:31 +02:00
DNx5
deffcb3e2b - Renamed JsonCache to PlayerDataStorage
* the methods inside it renamed to fit with class name
  * cache folder changed into playerdata
- Renamed LimboPlayer to PlayerData
- Added fly speed to PlayerData
- Removed player's name from PlayerData object
- Added getPlayerLocationOrSpawn method in spawn loader.
2016-07-03 21:52:46 +07:00
DNx5
7ea0763966 Merge remote-tracking branch 'origin/master' into jsoncache-fix
Conflicts:
	src/main/java/fr/xephi/authme/settings/Settings.java
2016-07-03 19:53:55 +07:00
ljacqu
8f5817883e Testing - check return value of Set#add instead of separately checking Set#contains 2016-07-03 11:47:37 +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
22911a0bb9 Remove duplicate column initialization code, add datasource integration tests
- Drop initialization of all columns on table create in favor of checking each column individually. This is slower but guarantees that each column is only defined once in the code. Columns are only created once so having clean code outweighs performance.
- Write more datasource integration tests
2016-07-02 19:16:26 +02:00
ljacqu
0283395da4 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into jsoncache-fix
Conflicts:
	src/main/java/fr/xephi/authme/listener/protocollib/ProtocolLibService.java
2016-07-02 11:01:46 +02:00
ljacqu
70226f7ddb #813 Move test resources to conform to package structure 2016-07-02 10:57:30 +02:00
ljacqu
1f35ccd841 Improve bat helpers / minor changes to logging and todo messages 2016-07-02 10:17:52 +02:00
ljacqu
6585b68749 Fix TeleportationService tests + rename methods
- Fix and supplement unit tests for TeleportationService
- Rename methods as to avoid confusion (login vs. LoginEvent when player joins)
- Add javadoc with note about Player#hasPlayedBefore always being false
2016-06-30 22:38:36 +02:00
DNx5
abf6645620 Fix test 2016-06-29 22:31:10 +07:00
Gabriele C
b1b56f2d51 Cleanup, updated some settings 2016-06-29 15:56:55 +02:00
ljacqu
1361174892 Encapsulate GeoLiteAPI class 2016-06-27 21:32:52 +02:00
Gnat008
1326606f37 #762 - Move all sessions stuff to new SessionManager class 2016-06-27 13:50:16 -04:00
ljacqu
d72d6ddf5a AntiBot - make public field private 2016-06-26 09:25:52 +02:00
ljacqu
6812cfa4db Add utility for safe pattern compiling 2016-06-24 23:50:11 +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
4b3ab4b116 #769 Create integration test for service initialization in onEnable()
- Test that services can be instantiated (e.g. no circular dependencies)
- Instantiate Messages via injection instead of manually
2016-06-19 21:16:46 +02:00
ljacqu
a0abe3d19d Minor householding
- Remove getter for NewSetting
- Reduce visibility of classes used by DelayedRunner
2016-06-19 16:13:00 +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
3629c51fc1 #674 PurgeService: Always register if purging, reduce code duplication
- Rename autoPurging to isPurging: we should always register if a purge task is in progress (regardless if autopurge or not) and deny any new requests
- Reduce the same logic being coded multiple times by calling through the methods
- DataSource: remove purgeBanned in favor of purgeRecords, both do exactly the same thing
2016-06-16 22:52:11 +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
15886fb517 #723 Let LimboPlayer task manager decide which message key to use
- Pass boolean (is registered) value and determine internally which message key (email registration vs. regular) to use in the message task
2016-06-15 20:37:00 +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
3411450ff1 #760 Fix single session feature
- Move the check from PlayerLoginEvent to AsyncPlayerPreLoginEvent. Single session can only be implemented with PreLoginEvent; it is already to late to check this in the PlayerLoginEvent. Ergo, we cannot offer this for CraftBukkit.
- Remove interactions with LimboCache - no interactions with LimboCache expected until after OnJoinVerification checks. (Thanks sgdc3!)
2016-06-14 21:03:32 +02:00
EbonJaguar
367f785610 count login failures by ip address and not by name 2016-06-13 15:58:03 -04:00
ljacqu
98bbf51594 Update dependency graph 2016-06-12 22:31:11 +02:00
ljacqu
89bbfc48ee #723 Create provider for TimeoutTask and MessageTask, remove LimboCache#getInstance
- Create class to handle the creation of "LimboPlayer tasks" (adds encapsulation, reduces duplication)
- Move group setting into its own class because (mutual dependency between LimboCache and PermissionsManager otherwise)
2016-06-12 22:00:05 +02:00
Gnat008
67c72dc46d fix TempbanManager injecting 2016-06-12 15:17:37 -04:00
ljacqu
69100daba5 Get jar files via URI objects in tests to prevent issue with spaces 2016-06-12 20:54:39 +02:00
Gnat008
ac4add9f54 add ability to tempban users after x wrong logins - ref #520 #192 2016-06-12 13:40:34 -04:00
ljacqu
d6e1fd5ceb Use injection in and for LimboCache, migrate some legacy settings, remove setGroup from Utils
- New injector method allows to retrieve services if they've already been instantiated -> useful for onDisable() which might be run after aborted initialization
- Deprecate various methods that need to be removed
2016-06-12 16:14:34 +02:00
ljacqu
5ef62784b5 #729 Use world from LimboPlayer for "spawn after login" feat., simplify teleport event constructors 2016-06-12 14:10:38 +02:00
ljacqu
68d5145cd7 #729 Refactor spawn handling into separate service (work in progress) 2016-06-12 12:46:03 +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
3753a0ef96 #565 Allow to skip extended encryption methods
- Set system property via surefire plugin and create profile that modifies the property
- Check for the new property in AbstractEncryptionMethodTest and shorten/skip the tests when necessary
2016-06-05 00:29:31 +02:00
ljacqu
4fe26f08d4 #612 Check if plugin is permission system within method itself
- Iterate over all values within the method
- Bug fix: change method to use pluginName field, and not name
2016-06-04 22:40:30 +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
1f2a823f99 Add tests for PluginHooks - Multiverse interactions 2016-06-03 13:36:33 +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
e75cff5fb8 Remove static injections in ListenerService
- Get other classes via Inject annotation
- Remove no longer needed Utils methods (relates to #736)
- Create tests for ListenerService and AuthMeBlockListener
- Performance improvement: keep unrestricted names as Set instead of List for faster contains() method
2016-06-02 12:46:54 +02:00
ljacqu
408e8dd0dd #739 Create unit tests for PermissionsManager#hasPermission 2016-06-02 00:03:02 +02:00
ljacqu
0977558924 #736 Remove use of service getters and deprecate them 2016-05-31 11:14:03 +02:00
ljacqu
3b6677ce99 Merge branch '604-default-permissions-on-nodes' of https://github.com/AuthMe-Team/AuthMeReloaded 2016-05-31 09:15:36 +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
f5b4071abf Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into playerjoin-listener-cleanup 2016-05-30 17:53:42 +02:00
Gabriele C
8a0655e333 Merge pull request #134 from Gnat008/602-create-lowercase-string-list-propertytype
Add a lowercase String list property - fixes #602
2016-05-30 17:53:14 +02:00
EbonJaguar
f94f4643cf Add a lowercase String list property - fixes #602 2016-05-30 11:08:01 -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
Gabriele C
52c0c7dd64 playerlistener cleanup 2016-05-29 16:34:03 +02:00
ljacqu
64aacb12db Unit test verifications done on joining
- Write unit tests for checks done when a player joins
- Move join event handler methods back to PlayerListener; move join check logic to new separate class
2016-05-29 15:00:16 +02:00
ljacqu
39d8a88142 Structure checks done in PlayerJoinListener as individual methods 2016-05-29 11:45:12 +02:00
ljacqu
2c92a8b52f Move logic for join events in its own listener 2016-05-28 22:32:45 +02:00
ljacqu
25f5fdb45c Code householding (PlayerListener / Settings)
- Use field on PlayerListener for storing nickname pattern -> repeatedly parsing pattern is expensive
- Remove unused legacy setting fields
- ForceFlatToSqlite cannot be run from converter command -> remove Converter interface to create more natural method signatures
2016-05-28 22:04:55 +02:00
ljacqu
eee06dad50 Dependency graph - allow to summarize dependencies by super type 2016-05-27 23:25:11 +02:00
ljacqu
cb10854612 Minor - fix failing build (cannot use method from Java 8) 2016-05-27 23:05:03 +02:00
ljacqu
87331d116c Revise converter architecture + add integration test for CrazyLogin converter 2016-05-27 23:00:44 +02:00
ljacqu
67511e3b45 Create task which draws AuthMe dependency graph 2016-05-25 19:24:12 +02:00
ljacqu
8de1897412 Minor - Use explicit dependencies in ProcessService
- Replace AuthMe in favor of PermissionsManager
- Create missing tests for ProcessService
2016-05-24 18:25:38 +02:00
Gabriele C
da6431b4fc Suppress injection test warnings 2016-05-23 23:16:40 +02:00
ljacqu
30f62547d8 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 707-process-as-service 2016-05-23 21:41:41 +02:00
ljacqu
53043ddc0d Create tool task that checks Mock fields of test classes 2016-05-21 11:54:54 +02:00
ljacqu
c1885a381b Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 707-process-as-service
Conflicts:
	src/main/java/fr/xephi/authme/process/join/AsynchronousJoin.java
	src/main/java/fr/xephi/authme/process/login/AsynchronousLogin.java
2016-05-20 19:48:41 +02:00
ljacqu
3f039d641a #707 Convert sync processes into services 2016-05-20 19:42:30 +02:00
ljacqu
244e1a2b7d Injector - don't use instantiation fallback if PostConstruct method is present
- Do not instantiate classes with instantiation fallback if they have a PostConstruct method - thanks @sgdc3 for the hint
- Change Injector test to check exception messages also
2016-05-20 17:57:14 +02:00
ljacqu
a355c325c5 #513 Allow to run updateDocs task from command line 2016-05-20 17:15:53 +02:00
Gabriele C
6abad1970c Revert "Cleanup"
This reverts commit 95b65ae20a.
2016-05-20 14:58:41 +02:00
Gabriele C
95b65ae20a Cleanup 2016-05-19 23:06:55 +02:00
ljacqu
9a72fe53b0 Minor - code householding
- Update inaccurate javadoc
- Remove unnecessary require call in PHP integration sample
2016-05-19 21:55:42 +02:00
ljacqu
f014485789 Service injector - implement stricter requirements for PostConstruct methods
- Implement similar restrictions as prescribed by the PostConstruct documentation:
   - Class may have at most one method annotated with PostConstruct
   - PostConstruct method must return void
- Javadoc: replace mentions of injector construction where any injection method was meant
2016-05-19 21:50:48 +02:00
ljacqu
14002ee75c #704 Reload settings of ConsoleLogger on /authme reload 2016-05-19 19:46:02 +02:00
ljacqu
f5c89e897f #707 Convert async processes as services
(work in progress - rough, untested changes)
2016-05-17 19:49:06 +02:00
Gabriele C
df2329fd9a Fix conflict 2016-05-16 16:27:59 +02:00
Gabriele C
c748501345 Fix Multiverse dependency + fix invalid test in Eclipse 2016-05-14 00:01:26 +02:00
ljacqu
9f5b995217 Fix datasource resource closing tests (#1) 2016-05-12 20:15:44 +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
games647
b1957c9812 Do not lookup twice for banned players 2016-05-09 21:51:21 +02:00
ljacqu
223f56425b #699 Unit test that config.yml values correspond to property defaults
- Create unit test
- Correct offending values
2016-05-09 21:15:11 +02:00
ljacqu
f2e49dbf1e Minor - fix compilation of task tool class list
- Set is declared as ToolTask but all elements extend from AutoToolTask, so the Set type is resolved to a too specific type
2016-05-08 21:55:08 +02:00
ljacqu
23da023d53 #513 Mark tools runnable by command line with specific interface 2016-05-08 17:22:02 +02:00
ljacqu
662f28ab4f #513 Fix class loading issue when running from mvn exec:java 2016-05-08 17:01:06 +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
Gabriele C
084cdd0d3a Allow tool execution with argument 2016-05-05 20:20:40 +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
67aea654cc #432 Fix broken tool tasks 2016-05-03 20:44:01 +02:00
ljacqu
3645806edc Move tools folder into test folder
- Classes still won't be present in JAR but classes will be automatically compiled by Maven inside of the test scope, facilitating the execution of tool tasks
2016-05-03 20:27:12 +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
e6dacd6951 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 432-dependency-injection 2016-04-30 12:17:33 +02:00
ljacqu
3c6415a6a4 #432 Use injector instantiate hash algorithms 2016-04-30 12:17:18 +02:00
ljacqu
908399e271 #432 Injector - prevent static field injection, add more tests 2016-04-30 10:44:32 +02:00
ljacqu
2c491803d3 Injector - disallow static PostConstruct methods, add more tests 2016-04-29 23:49:03 +02:00
ljacqu
7f44ecdb40 Create event consistency test + test code cleanup 2016-04-29 22:39:46 +02:00
ljacqu
8d489efffd #683 Plaintext to SHA256: Add warning message + skip SHA hashes
- Add message not to stop the server before conversion finishes
- Skip hashes starting with $SHA$ during conversion
- Create unit tests
2016-04-29 21:58:32 +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
59d3bc95c0 Move getOnlinePlayers() from Utils to BukkitService; delete Wrapper 2016-04-23 15:24:41 +02:00
ljacqu
a78e0408c6 #449 Remove use of legacy settings in encryption methods 2016-04-23 12:46:30 +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
6074ba59d5 #654 Add test verifying nothing is sent for empty message
- Including various test simplifications
2016-04-15 12:27:34 +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
3bb7ff2b85 #653 Empty salt column causes error when retrieving password
- Handle potentially empty salt column in MySQL and SQLite
- Create unit tests reflecting these cases
2016-04-14 11:48:24 +02:00
ljacqu
e2b50b72a5 Get player via BukkitService; add unit tests for commands 2016-04-08 19:56:44 +02:00
Gabriele C
30d109b01b Remove IPManager test 2016-04-08 14:35:42 +02:00
Gabriele C
ee177e8a3a Remove the IPManager
We don't need it anymore
2016-04-08 14:34:21 +02:00
ljacqu
9ea75c502c #567 Move email validation logic to validation service 2016-04-03 20:44:13 +02:00
ljacqu
b6ccb3e632 #567 Add/change email should be aware of account threshold 2016-04-03 14:24:12 +02:00
ljacqu
c079692f1d Minor - code householding (tests)
- Remove redundant uses of WrapperMock
- Use assertThat() from JUnit, not hamcrest
- Use hamcrest Matchers everywhere (not BaseMatchers etc.)
- Favor Mockito's argThat() over using ArgumentCaptor (more succinct)
- Delete useless test classes
2016-04-03 07:38:13 +02:00
ljacqu
4f86604699 Check valid password via service
- Create validation service; fixes same code being duplicated in four places
   - Goal is to remove Utils class, by moving methods to validation service or other services
 - Remove unused properties in legacy settings
2016-04-02 22:44:20 +02:00
Gabriele C
997c31a03e Cleanup warnings 2016-04-01 17:02:57 +02:00
DNx5
46a10da40f Fix test 2016-04-01 13:47:35 +07:00
ljacqu
95f5951587 Change message file consistency test to show all errors 2016-03-29 19:08:38 +02:00
ljacqu
55c24b8e64 Test AntiBot + SwitchAntiBotCommand 2016-03-24 22:11:40 +01:00
ljacqu
351b24fd14 Change AntiBot from static to instance
- Convert static methods in AntiBot
- Create BukkitService for operations requiring calls to static methods on the Bukkit class
2016-03-24 20:58:51 +01:00
ljacqu
20ad253926 #547 Add javadoc + unit tests for ProcessService 2016-03-21 20:06:49 +01:00
Gabriele C
19070c220b Blame eclipse warnings 2016-03-17 21:16:13 +01:00
ljacqu
00c8fa3b53 Minor - remove todo comment
- Difference between the tests is actually explained in the other class' javadoc
2016-03-16 21:14:31 +01:00
ljacqu
453f61233c Fix unit tests for settings by providing custom setting migration services
- Allow to provide custom plugin folder to test constructor
- #603 test all NewSetting methods
2016-03-16 20:57:41 +01:00
ljacqu
aef18a894a Move PropertyType functionality into Property class 2016-03-16 19:07:00 +01:00
ljacqu
89767b120c #603 Pass settings migration service as constructor parameter (work in progress) 2016-03-14 23:18:16 +01:00
ljacqu
4634213d75 #566 Test that all message files are valid YAML 2016-03-14 22:33:20 +01:00
ljacqu
ef980bd654 #603 Delete CustomConfiguration class 2016-03-14 20:45:46 +01:00
ljacqu
3522a5b0c0 #603 Various setting improvements
- Pass PropertyMap to settings class from the outside
- Fix tests not being reentrant due to real file writes
- Improve Node (internal tree for PropertyMap) interface
- Add code coverage for private constructors
2016-03-14 20:32:32 +01:00
ljacqu
5d12ec8b56 Minor fixes + code householding
- Fix SpawnCommandTest testing FirstSpawnCommand
- Fix javadoc errors
- Map TODO's to issue numbers where applicable
- Fix trivial TODO's
2016-03-13 11:09:27 +01:00
ljacqu
00125487f1 Create tests for admin commands 2016-03-13 10:17:09 +01:00
ljacqu
4d45b18759 Create test for PluginHooks 2016-03-12 18:25:57 +01:00
ljacqu
8293766f98 #421 Create SpawnLoader
- Non-static service class which handles the spawnpoints used in AuthMe
2016-03-12 18:25:38 +01:00
ljacqu
8b27444a49 #421 Create PluginHooks
- PluginHooks manages third-party plugins and allows to perform actions and queries on them, instead of public fields on the AuthMe main class
2016-03-12 18:24:34 +01:00
ljacqu
45fd241517 Update settings in PasswordSecurity upon reload 2016-03-12 08:16:57 +01:00
ljacqu
654cebd5a7 Minor - rename LimboPlayer methods + code householding
- Rename *taskId methods to *task to reflect what they handle
- Remove usages of Wrapper where applicable
- Replace some uses of legacy Settings with NewSetting calls
2016-03-06 15:46:49 +01:00
ljacqu
987c3fdb17 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 432-remove-public-ip-map 2016-03-06 14:42:32 +01:00
ljacqu
31bac6964f Various code householding
- Adjust javadoc
- Remove unused PlayerAuth constructor
- Replace legacy Settings with NewSetting calls
- Add process service to all (a)sync processes
- Change IP manager to only cache the calls to the VeryGames API
2016-03-06 14:42:19 +01:00
ljacqu
98df21d75a #575 Hotfix for reload support
- Create temporary method for reloading any stateful entities -> a lot of duplicated code, to be fixed soon within #432
- Remove unused methods
2016-03-05 22:30:35 +01:00
ljacqu
19adcdcceb Move managers to the cache package
- Not entirely accurate name but not really worth to have a separate package for managers
2016-03-05 16:03:00 +01:00
ljacqu
fd8db2cd51 Add test for IP manager + create captcha manager (still unused) 2016-03-05 15:39:14 +01:00
ljacqu
aeb8307a46 #432 #547 Remove public IP cache map; make processes use ProcessService
- Create IP address manager for handling and caching IP addresses -> outside of the manager I do not want to care about caching details
- Make more processes use the ProcessService in favor of statically injected objects
2016-03-01 22:47:28 +01:00
ljacqu
86042070e9 #573 Remove exclusion for permission node check in test 2016-03-01 20:48:15 +01:00
ljacqu
7dd1d52893 Merge branch 'master' of https://github.com/AuthMe-Team/AuthMeReloaded into 547-process-architecture
Conflicts:
	src/main/java/fr/xephi/authme/settings/Settings.java
2016-02-28 09:08:35 +01:00
ljacqu
8832c1ac0f Reduce output of resource closing tests 2016-02-28 09:05:30 +01:00
ljacqu
d664e7be26 #547 Create ProcessService
- Create ProcessService for common tasks within processes
- Integrate service into AsyncAddEmail
2016-02-27 23:15:31 +01:00
ljacqu
63b31b0814 Create resource closing test
- Generic test for MySQL and SQLite checking that all generated (Prepared)Statement and ResultSet instances are closed afterwards
- Fix offending code for test to pass
2016-02-27 22:45:39 +01:00
ljacqu
5fce849ce7 Minor - Add datasource test, minor code householding 2016-02-27 21:11:35 +01:00
ljacqu
1b818bd833 #457 Improve ForceFlatToSqlite conversion
- Change ForceFlatToSqlite converter to use a generic datasource destination (i.e. can be used for Flat2MySQL later)
- Add tests, including for FlatFile
- Check that user is not present in destination datasource before adding
- Persist last location from flatfile as well
2016-02-27 11:24:47 +01:00
ljacqu
27b1fa770f #392 Add datasource integration tests 2016-02-26 22:12:16 +01:00
ljacqu
69092e9a9c #392 Add datasource integration tests 2016-02-24 21:50:40 +01:00
ljacqu
95e3943be0 Datasource integration tests - fix split by newline
- Make split of SQL file aware that new lines may be \r\n
- Remove split of new lines in MySQL as it's not necessary
2016-02-24 20:38:05 +01:00
ljacqu
5e16ca1490 #392 Create integration test for MySQL
- Relocate tests to AbstractDataSourceIntegrationTest to reuse tests for SQLite and MySQL
- Add H2 driver and create test class for MySQL
2016-02-22 21:52:10 +01:00
ljacqu
72cf294056 Allow retrieval of messages with tag replacement 2016-02-22 20:32:44 +01:00
ljacqu
e8f518711c #442 Fix email presence check being case-insensitive
- Add integration tests
- Change DataSource interface to return the number of accounts only, since that's all we require
2016-02-21 21:38:29 +01:00