labofsahil/github-event-dataset-2012 huggingface dataset:
To truly test the behavior you need to annotate the test with @NonTransactional so that the test does not start a transaction, but the mergePatients method does. This way you will be able to see if the transaction was actually rolled back. If savePatient throws a runtime exception, changes persisted by saveEncounter or savePatientProgram must be rolled back.
I did - it looked funny. What's the convention?
This Scout call to $fs seems to fail, merits some investigation.
document?
ah, good call, thanks! appreciate your feedback.
Такое дерево запросов со вложенным циклом будет тормозить, как у меня LMP — примерно полмиллисекунды на одну строку в таблице. Попробуй переписать с `INNER JOIN`'ами (`LEFT`'ы делать бессмысленно, все равно соснут), как ffd20a0dbeaa91e4233bfa926527c12326cd011a.
Normalized column names: `id_session`, `session_expires`, `session_data`
It's pretty nifty, but I don't want to have a hard dependency like that. I suppose file system completion will take a while to make an appearance, so we could temporarily use SublimeFiles or a derivative of it instead. For now I'd suggest to leave ``:tabedit`` out of this branch and open a new issue for it mentioning SublimeFiles too. I think it can make a good temporary replacement for a more traditional file system completion.
+1 for using should_receive!
!! done !!
Please never commit something containing "auto-generated...". Remove such lines immediately, before writing any other code.
Double semicolon here. I'd suggest running your code through JSHint after you've got it to the point where you're satisfied with it. You might even catch a few of my own mistakes! :)
craig dont get your mind close to guns dude
Do you know if its possible to send a cookie along with torrent url?
This is required to support private trackers.
@RishiRamraj: Sorry, but you're wrong. The `MANIFEST.in` file takes care of include ALL the necessary dependencies (for both Python2 and Python3) while `setup.py` takes care of unpacking ONLY the necessary dependencies for the underlying Python version. Test for yourself by running this on a PY3 `virtualenv`, for example:

    pip install requests-packaging-fixes
Not strictly, but it is needed for [structure versioning](https://github.com/libgit2/libgit2/pull/1115) (`GIT_CHECKOUT_OPTS_INIT`). Would you prefer that as a separate PR? I'd also be happy to squash out the earlier libgit2 update.
Because that exceptionhandler does not have the event, which has lead to the exception in it. It follows that we can't invoke the event again (retry connection)
modifying the stop-attribute like that seems odd. I think the ExceptionHandler should hide that information and just provide a "stop()"-method.
That way the internal implementation of stopping can be changed easier later.
This is bad practise, We don't want a constant lookup and die() at the top of every file .php file..
i'm not sure I understand the changes to enum$ - why are they needed?
also I don't see nay updated tests for these changes

we have to be careful with the semantics here - enum specifies a list of valid values, and the point must match one of them
this seems to be allowing the point to be an array, such that it passes so long as all elements are from the enum list?

so maybe foo: {type$:'array',enum$:['a','b']} allows ['a'],['a','a'],['a','b'],etc but not, say, ['a','c']
is this the intention? and where is it needed?
Sure thing, fixed throughout the file.
We can't really have the base_url hardcoded here. :-(   Do we need to have a phing task that generates the behat.yml based on SilverStripe's knowledge of its environment?
No, ted jsem to nenapsal uplne presne. Nemusis pochopitelne vzdy v tom callbacku volat timer_start(). Muzes si ho volat kde chces. To je snad jasne. Proste si to soupni treba rovnou do schedule, pokud to bude delat to, co chces :)
Many IRC clients seem to  basically barf if a server never returns a numeric, _however_ it would avoid any chance of an endless loop, and I can think of no downsides to it, so I think it probably should. How long, exactly, I have no idea.

I've seen servers take 30 seconds for identd alone (plus a bit more for the rest of the connection sequence), though, so bear in mind that "sane" timeouts may break on some networks. (I'm not sure that makes it worth avoiding a timeout entirely, but it's definitely worth keeping note of, imo)
should this not have some kind of timeout?
doesn't apply only to 500 / 404, so this comment is wrong but ill fix
why 11?
break to next line - too long.
do you really find it more readable ?
I don't see a setting to enable/disable drafts, neither in the ACP or in the code itself.

The draft mode within the UCP does/did not implement the permission that is being removed, so ultimately, a user without permission to use drafts can still access that area of the UCP. In fact, a user that has a saved draft and has Never set for the savedraft permission, can still access it but when he tries to load a draft, it just opens an empty posting page.

So really, the only part of the draft system that can be disabled even with the permission is saving drafts. There is not a global on/off permission or a global on/off setting.

IMO, we should remove this permission and implement a board setting to allow admin to global disable drafts if they really need to.
Maybe it's better to put this convenience function inside the JsonReader as static function (=> companion object). So we could write there

    object JsonReader {
        def convertString(string: String) : String = ....
    }

And then use it via

    JsonReader.convertString(xxx)
Please always use braces to surround the code block of IF statements.
Is it possible to define the element type for the array of parameter ``$params`` (using "array<SomeType>", or "SomeType[]")? This would help me, and IDEs to better understand your code.
Are you sure you want to override the parameter ``$type``? This often makes code less readable.
Is it possible to define the element type for the array of parameter ``$submittedData`` (using ``array<SomeType>``, or ``SomeType[]``)?
this wasn't used; it was only set to 'XQueryPointer's return value
Those additions are not necessary, the right dot's will always been set in the `drawTileInRect` method
you should use InvalidArgumentException
ViewAdmin - не является классом, не лучше именовать в undercore style (view_admin.php)
Is this needed? It looks like the filenames should already be resolved by the time they're passed in.
As I noted earlier instead of using a curl specific option, why not use a generic name like the stream options (follow_location or max_redirects) and then at the transport level map them onto their respective options. This will automatically work for stream as it passes in the HTTP options straight through and cURL will require some level of custom handling either. Otherwise you end up going set(curl.followLocation, true), set(follow_location, true), etc for each transport and that seems a tad silly because it reduces the effectiveness of swapping in and out different transports.
Shouldn't we use something that is UTF-8 safe here? Perhaps a preg_replace with the u modifier to ensure we don't clobber parts of multibyte characters?
this indentation looks wrong. have you used tabs here?
Why are you comparing only the *beginning* of the keys[0]?
```@tags = Tag.all``` тоже лишняя
Beautiful. If you want obfuscation. :-)

Is maybe this better?

```
{panel: True for panel in self.request.user.panels.keys()}
```
Good first version, but some improvements has to be made. ;-)

No need for `null` there. Callback function should have all possible arguments it can receive, so that later developers know what is available.
Define also `def fetch_data(self, sign):` method, which throws `NotImplemented` exception by default. So that API is fully documented.
To be completely honest here, I just copy-pasted user_login_message and change it a little bit. Did not even know, that error function already exists. Will fix it now.
I don't believe so, since they are wrapped in the code block back-ticks. Shows up just fine in github: https://github.com/cupakromer/curriculum/blob/master/source/projects/blogger.markdown. Doesn't show up here today (http://tutorials.jumpstartlab.com/projects/blogger.html), but yesterday when I was updating this I swear I did see the \ displayed.
We need to use the intptr_t since on 64-bit architectures, there is a warning issued "loss of precision" and its treated as error. I haven't tested this on 32-bit though.
Mmh, I wonder if this is really a good idea.
If someone calls an nginx definition without include any nginx classes, he'll be told off by puppet, which is probably a good thing.

By including this here, we won't have the flexibility to pass params to this class once we switch this module to 2.x syntax.
I see. I added `log.redisStarting` and `log.rediStopping` methods in `in org.hibernate.ogm.util.impl.Log` as in the commit named [Add redisStarting() and redisStopping() in org.hibernate.ogm.util.imp… ](https://github.com/seiyak/hibernate-ogm/commit/48cf72b36b4ba97085e6365760d3331ef2a58172).

When adding those methods in the `Log` interface without `@LogMessage`, I got the errors like below.
 
```
[INFO] diagnostic /home/seiyak/Desktop/OGM-Redis/hibernate-ogm/hibernate-ogm-core/src/main/java/org/hibernate/ogm/util/impl/Log.java:98: Message bundle messageMethod redisStopping has an invalid return type. Cannot be void or a primitive.
[INFO] diagnostic /home/seiyak/Desktop/OGM-Redis/hibernate-ogm/hibernate-ogm-core/src/main/java/org/hibernate/ogm/util/impl/Log.java:101: Message bundle messageMethod redisStarting has an invalid return type. Cannot be void or a primitive. 
```

However, when adding `@LogMessage` annotation on those methods, the errors are gone and work right.  What's the relationship between `@LogMessage`  and `@Message` annotations ? I thought that `@LogMessage` only controls the log level, but the understanding might be incorrect.
Add :

services:
    lexik_paybox.transport:
        class: %lexik_paybox.transport.class%
But in my idea you don't get the whole collection, but store it in redis, using, for example, the STORE parameter of the SORT command.
Each future access to the same collection will use the "redis internal system" as often as possible, instead of recalculating a new set each time.

    asking the first element of a collection of, say, one thousand items

=> store the result in redis, and get the first

    asking the last element of a collection

=> store if, get the last one

and if you then need to get the second one, no need to recalculate the whole collection, just use the stored result.

And as this result has an expire time, it will be flushed soon enough to not take too much memory.

(maybe it can also be an option of the "collection" method).

Here it's not a python caching option, but a redis one. Retrieve only what is needed, when it's needed, avoiding recalculating many times the same thing.
... is specified *in the style declaration of .profiler-event-small* ;)
`scoped_ptr` is available, but `lock_manager_` is private in the superclass.  I could add a `scoped_ptr<NamedLockManager> local_lock_manager_` but I don't think that's any cleaner.
Right. Better to leave it l1 then I suppose.
Is this the right event?  Shouldn't this differ from previous file?
The problem is that you are doing the switch right at the edge where the behavior changes.  Instead, you want the switch at 0.  In particular a test of (x+y <= 0) is sufficient for both even and odd cases.  I pushed this change (since I wanted to test me theory) and it seems to work.  At least I uncommented this test, and the difference plot is all ~1.e-16.
While this does work, `try-except` blocks are meant for less easily predictable causes of errors/exceptions. In this case, we are only dealing with strings and we can easily validate them appropriately.
Again, probably delete this spec
Those tests were all duplicated verbatim in JmxHelperTest (https://github.com/brooklyncentral/brooklyn/blob/master/software/base/src/test/java/brooklyn/event/adapter/JmxHelperTest.java).
handy fix.  we should say in the javadoc that the command will be single quoted, callers should avoid single quotes or escape appropriately.
You know you can store a temporary variable in the if-statement and save one cast:

    if (auto c = cast(NSControl)accessibleElement) {
        NSControl viewAsControl = c;
Are these changes necessary: workflow.variables -> workflow.variables()?
The count failed for me and I have no way of debugging it.
Fantastic! That's exactly where I was getting tripped up on. I didn't want to put all arguments in assert_called_with because it makes the test brittle. I also did not know about ANY, thanks. I'll rebase it using that.
I am guessing that was old – or I mirror'd it there. But feel free to leave it on pear.php.net. Pearform has too many issues.

Also, I'm not a 100% sure if the service this was written for is still around. :(
@etiennesegonzac You should also do this on `dialer.js` L19 per the same discussion.
WOW! That's so awesome!
once again don't return tables.
Never imagine this bundle could have any contributor! Thanks! :)
I did not really add this (weird it is green in the diff) There is probably a reason it was done like that
Indent only two space.
Excellent. Will update the pull request accordingly.
RepositoryController has:


    rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed

And CommandFailed is defined as

    class ScmCommandAborted < CommandFailed; end
I'd resubmit a new pull request to make this clearer. I understand why this was done, but it seems to be a source of confusion.
Does this actually change the behavior?  Seems like this would have the same exact behavior as before.
To be more deep, I'd suggest that you assert that
- Blob metadata has `test` and `blah` with `bar` and `bleah` values respectively.
- Assert that using `getContainerACL` that the container access is blob
Harish
Please add a more specific locator
<code> .sub-nav > li:nth-child(2) > a </code>
transformation done :D 

http://upload.wikimedia.org/wikipedia/en/thumb/b/b2/Optimusprime-originaltoy.jpg/240px-Optimusprime-originaltoy.jpg
パッケージ内の
Thanks! @shiroginne will be happy :)
Does it work for estimator that does not defined a `self.classes_` and `self.n_classes_`?
> as you state, the difference boils down to differences in convergence. with
> smallish samples n < \infty :) some of the theoretical properties don't hold,
> so the limit diffusion maps may have errors.

The question is: in practice, what are the differences on the results and
the computational time. To merge something in the scikit, we need to see
an actual impact on real-world scenario. We cannot put in the scikit
every variant of an algorithm that spanned a paper because they are way
too much. This would lead to a maintainance problem, but also to a
library that isn't useful to the end user because of too many choices.
On Thu, May 31, 2012 at 09:47:13AM -0700, Andreas Mueller wrote:
> shouldn't something like this go via "set_params"?

So far, it is valid to do it in by setting an attribute.

G
Can't you just use bincount and then append zeros?

----- Ursprüngliche Mail -----
Von: "Martin Ledoux" <reply@reply.github.com>
An: "Andreas Mueller" <amueller@ais.uni-bonn.de>
Gesendet: Freitag, 20. Juli 2012 18:15:36
Betreff: Re: [scikit-learn] ENH: use Bayesian priors in Nearest Neighbors classifier (Issue 399) (#970)

> -        else:
> -            mode = np.asarray([weighted_mode(pl, w)[0]
> -                               for (pl, w) in zip(pred_labels, weights)],
> -                              dtype=np.int)
> +            # `neigh_dist` is an array of objects, where each
> +            # object is a 1D array of indices.
> +            weights = np.array([np.ones(len(row)) for row in neigh_dist])
> +
> +        probabilities = np.zeros((X.shape[0], self._classes.size))
> +
> +        # We cannot vectorize the following because of the way Python handles
> +        # M += 1: if a predicted index was to occur more than once (for a
> +        # given tested point), the corresponding element in `probabilities` 
> +        # would still be incremented only once.
> +        outliers = []  # row indices of the outliers (if any)
> +        for row in range(len(pred_labels)):

I could, but then I'd have to use the `minlength` parameter, thus:

    np.bincount(pi, weights[i], minlength=self._classes.size)

The problem is that `minlength` was introduced in NumPy 1.6.0, so it's too recent for what we're supporting. One approach would be:

    np.bincount(np.append(pi, np.arange(self._classes.size)), np.append(weights[i], np.zeros(self._classes.size)))

which basically adds the whole range of classes, but weighted with 0.0 so they have no impact beside making sure the returned array is `self._classes.size` long. Though I'm not sure this is more efficient or less kludgy than the loop in the original code I submitted.

Or I'd be happy to submit a wrapper in `utils/fixes.py` around `bincount` (like we have for `unique`).

---
Reply to this email directly or view it on GitHub:
https://github.com/scikit-learn/scikit-learn/pull/970/files#r1207279
I cannot memcpy there because n_classes can be anything (a list, an array, etc).
Thanks, but I suggest we postpone this discussion until the code is more or less finished. This is the module name that the RBM PR currently uses.
this will likely be a lot faster for tiny messages but for larger ones we shoudl be better off looping and writing each buffer so we're avoiding more allocs
You are correct, this was already implemented the way you described. I misunderstood.

Since `getPayload()` is protected and not use anywhere else, maybe we can refactor this later on.
Why'd you drop the 'ap' name on the 3rd argument?
they should -- if they don't then output of realignment is incorrect.

not a bad thing to have a registration for each functional, but for this workflow let's go with the fact that all runs are realigned.
I ran my formatter and I still get the same thing:
The spaces in the declaration are not consistent with the body, e.g.

TiObject::TiObject(const char* objectName, Handle<Value> value)

vs

value_ = Persistent < Value > ::New(value);

I suspect the formatter is treating the '<' as the less than operator, not as the template operator.
-180 and 180 are the same meridian

90 is north pole and -90 is the south pole, which are quite distant

;)
it's better to have a "newline" at the end of the file
This is used in a couple of places, so I suggest we use a class e.g. collections.namedtuple
there are no args for this function, it is all defined by the module
Because the file is checked out to some like /tmp/StarteamFile991088520690484824.tmp, then commited into git, so I don't think it's important for user. I removed `aFile.deleteOnExit()` here and add `file.delete()` there just for reduce the user's disk space usage, otherwise, I just test again with that 2.6GB git repository, at the Java's `OnExit` time, there were more than 16,000 StarteamFile*.tmp files in /tmp/ with 6.1GB total files' size.

Anyway, maybe there's some mechanism I haven't understand from your concern, so I can fix it if you don't agree my description about disk space usage. Do you?
All of these are ```::Rex::ConnectionError```s, why not just rescue that?
In the example, use ``tolerance=4`` or, even better, ``tolerance=4.5`` to show that this is not the order of the approximating polygon.
Use img_as_float with the forced copy flag set to True.
I suppose I'm wondering if this should be called ShadowSupportFragment, even though that would be confusing. Is there a convention we can follow — have other support classes been shadowed already?
Make sure the comment descriptions apply to each preset and aren't copied from examples
Nitpicking - we probably want `0.0` since we append `.0` so humans know we intend floating point, and most users of this type probably use floating point.  Doesn't really matter.  Do whatever.
Prepared statements are actually autorelease, so this should be OK.
I discussed  this with Blain and we agree to keep the native behavior as default, at least for now. For all I know, this feature was initially requested on iOS b/c their dialogs close automatically when home key is pressed.
Shouldn't have any tab group specific method in this class.
Fixed in next update.
Sounds good by the way.  Now who will work on that, haha.
Also put parentheses around the function being integrated.
@splitbrain said, he's generally happy with that in the core. The problem is that it should be done by someone with a better knowledge of PHP than me, as I think it needs to be improved. @splitbrain said there might be a problem with the includes. Also see https://github.com/MrClow/dokuwiki-template-2011/issues/44
So, anyone, please go ahead and do it.
Benchmarking may show differently (though I doubt it), but in general, if speed is your primary concern, using `enforce` is a bad idea. The fact that it's lazy tends to screw up performance. Also, if you're just passing a string to the exception's constructor, use `enforceEx` instead of `enforce`. It's shorter that way.
I'm stunned that this compiles. I was certain that we'd made `1.` illegal. Please make it a proper `1.0`, and fix any other instance of that problem in the unitttest (e.g. the `2.` above).
A botched rebase apparently, as I wasn't doing anything to `popBack` on anything. I'll fix it shortly.
Oh, I see it now.  Thanks! :)
Write comment what this if does.
True, why could that be?

Also, the test case seems not to fail on the original code.
e.g. comments are also 120 chars lenght
This returns data, not a sql string
Done. There probably needs to be more re-arranging. Possibly even alphabetical. This file is going to get large. NB: you might take a look at how hub compiles multiple files down to a single executable.
Jeremy

Are we OK, to close this pull request down now?
Uh oh, turns out it doesn't - Eden must've kept using my database from Frodo when I last rolled back to it and that could've been why I had this problem. 

I'll try to find a way for the script to run the appropriate query by doing a check for database version - I'm not making any promises though as I'm quite new to programming (this would've been my first ever fixed bug, eh) - but I'll try to do it.
The two other images are 340x90, which meets the criteria set in the script (130x80). Perhaps the images have changed since the last spec?
It would be good to escape the source, program, and message with `h()`.
Führe doch hier die Liste der Members auch (analog zum User)
So dass du alle Nutzer einer Firma anzeigen kannst.... könnte doch noch hilfreich werden ;)
Thanks. I updated my comment with comments for IE 6 & 7. I think this is a valid change. Could you please rebase from master so we can merge this? Thanks.
I think we can just replace it with something like...

Specifies the time the gateway will wait to send the result to the reply channel. Only applies when the reply channel itself might block the send (for example a bounded QueueChannel that is currently full).
Right, "theoretically" but that means that 2+ request/reply exchanges would have to happen within a singe millisecond. I don't know of Messaging system that is that fast ;)
Please remove the commented-out code from this.
You don't need to escape a parameter. The module should be escape the parameter. Yes, I will fix it.
Yes, these need to be escaped `:)`
When this code is executed it is done so on a separate thread from the build. You are not necessarily "alone" in the workspace, another build could have started or it could be gone already etc.

I suggest parsing the owners file in the perform method of the publisher since it is called while the build is still running and have access to the workspace. And then just fetch the result from that operation here.
Хотя RowGateway обычно используется совместно с другими объектами, порождающими Zend\\Db\\ResultSet, он может использоваться и независимо.
oops, this should be a valid class name probably debian_6 ?
This was needed so that they were syntax coloured correctly.
Nice! I thought of putting in the new aef:isStandaloneIterration too, but havent had time for it.
Now I can use it for my codes
Is this a widespread convention? What are the advantages of doing it this way?
Update the comments to say returns nothing :).
cool this is really more useful :)
```php
 $provider->setArguments(array($cache, $fallback, $params['lifetime'], $params['locale']));
```
could use incrCounter() from base class.
还有一个问题。如果此文件放到tempdir下，moss脚本会读它并提交（有可能读不到，引发错误）。所以，此文件应该用完后删除它
Naehe
It's not going to give an error but it's wise to include it.

E.g. The core commands all include the App::uses call: https://github.com/cakephp/cakephp/blob/master/lib/Cake/Console/Command/AclShell.php
edited :) and done
Yes I feel that the test should only require things that we use in medley.
However it should be open ended enough that people who want to show us cool stuff they know that we don't make heavy use of yet can do so.

I also think reaching right for the dom manipulation hammer is not a good skill to prioritize. If someone decides to use mustache I'm going to be more impressed than if they have a huge pile of jquery.

so cross browser compatibility is a requirement? That seems a bit much for an interview test. I would much rather get a well written inventive submission than one that works in ie7. There are available hacks to make all of this stuff work on old browsers but I don't think we should limit people to outdated browsers.
I'm not sure the jQuery example is comparable given then it's effectively explicitly documented as an extension point for creating plugins.

To me (and this may be my old school C programmer self speaking) it's just rude to barge into somebody else's namespace, not to mention the potential for future conflict caused by grabbing names for ourselves in a namespace that has been deliberately created to act as a private space for another project.

Anyway, if you say it's OK then I guess that's fine.
While we're making these changes, I think it's worth ripping out `inject_defaults`. Templates make it unnecessary, and presets doubly so.
should be ``{@inheritdoc}``
We don't need to use the script's OnUpdate function to implement the action taken when the area is triggered. By sending a signal, the script can connect the signal with its appropriate function by itself. And we'd better not use the update enabled switch like this.
> Habit of a former DBA with a well-earned mistrust of db abstraction. For this app you won't be summing across millions of rows, and your suggestion is much easier to read. But I would still like to understand how it works. :)

Well I know that postgres will sum and count those rows much faster than building the objects in Ruby and doing it there. Ruby is slow. That's no secret. And Postgres is really fast at those functions. So yes we will hit the database 3 times. Once to get the summarized records, another to get the total count, and one last time to get the total value. 

So in this case I think it is totally acceptable to take a trip to the database for these values. Because I can tell you from experience that this report can take a very long time to run once we've got 2,000 patient records loaded in the database.
This guy could throw an NPE if 'hashedPasscode' is null, since that's the default value we're reading from the Shared Pref file.
This should respect `ARMSTRONG_ADMIN_PROVIDE_STATIC` (see [905d2ae])

[905d2ae]: https://github.com/armstrong/armstrong.core.arm_wells/commit/905d2aea46ca632f884018d5b1cc2559abef8272)
Maybe we should link to the page-per-chapter Spring Reference - htmlSingle takes a long time to load.

http://static.springsource.org/spring-framework/docs/3.1.1.RELEASE/spring-framework-reference/html/mvc.html#mvc-handlermapping
I've taken a look at both managed and remote containers and added the 
headers; I didn't add them to embedded (since it a bit out of scope of 
this pull request). Pushed the changes (with force) to this branch.
Make this work somehow
Ah sorry, thanks for your explanation.
disagree. .bbwpignore should not decide whether to ignore itself or not.
For example .gitingore does not ignore itself
Its built to spec.
Shouldn't you test parameters.
That would in effect allow access to all files, if thats what we want. We still had test cases about not being able to access whitelisted file paths, thats why I made this change.
See note for m_ppgUrl.
Hmm. Can't think what error to throw. I want to create a new one called something like INVALID_SOURCE, INVALID_TARGET.
You are saying that the `test.utils` file tests what is in the `<app>.utils` file? Okay, it makes sense when you state it like that. However as it is only testing the `get_layout_template_name()` method, it made sense to me to name the test after the thing it was testing.

I'll say that `utils.py` and `_utils.py` was extremely confusing. Following the imports was confusing as well. utils to me means supporting code, but utils here was a full test in its own right.

What about moving test support code into `tests/arm_layout_support/utils.py`? Leaving the `tests/` directory only for actual tests? I'm only offering ideas. Sorting through the code was very confusing.
The surrounding `if` is not necessary. The expression `(== (mod n divisor) 0)` already has the right boolean value.
Please remove this from the interface.  It's an implementation detail of the underlying ServiceAlertsServiceImpl.