You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
[tests] stop sharing the root buck repo in java tests
Summary:
When multiple buck java tests use the same `buck-out` they sometimes fail. This isn't surprising, as they presumably clobber each other's output when running on the same files.
Since there is no reason to have this global, shared buck repo, create one for each test, inside the test directory. Also, clean up the Makefiles a bit -- they provide bogus compile targets, for example, and have mostly wrong source dependencies.
That done, remove the `testlock` crutch which enforces mutual exclusion between tests, from the buck/java tests.
I do not understand why the buck clang tests can share the global repo without failure, but there you go.
Reviewed By: jvillard
Differential Revision: D15579133
fbshipit-source-id: 7eff79173
6 years ago
|
|
|
/*
|
|
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
[tests] stop sharing the root buck repo in java tests
Summary:
When multiple buck java tests use the same `buck-out` they sometimes fail. This isn't surprising, as they presumably clobber each other's output when running on the same files.
Since there is no reason to have this global, shared buck repo, create one for each test, inside the test directory. Also, clean up the Makefiles a bit -- they provide bogus compile targets, for example, and have mostly wrong source dependencies.
That done, remove the `testlock` crutch which enforces mutual exclusion between tests, from the buck/java tests.
I do not understand why the buck clang tests can share the global repo without failure, but there you go.
Reviewed By: jvillard
Differential Revision: D15579133
fbshipit-source-id: 7eff79173
6 years ago
|
|
|
*
|
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package genrule.module1;
|
|
|
|
|
|
|
|
import genrule.annotations.Nullable;
|
|
|
|
|
|
|
|
public abstract class Class1 {
|
|
|
|
|
|
|
|
public @Nullable Object field1;
|
|
|
|
|
|
|
|
public int x;
|
|
|
|
public @Nullable Class1 field2;
|
|
|
|
|
|
|
|
public static @Nullable String returnsNull() {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
void localNPE1() {
|
|
|
|
Object obj = null;
|
|
|
|
obj.toString();
|
|
|
|
}
|
|
|
|
|
|
|
|
public abstract @Nullable Object abstractMayReturnNull();
|
|
|
|
|
|
|
|
public native @Nullable Object nativeMayReturnNull();
|
|
|
|
|
|
|
|
public Object unannotatedReturnNull() {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static class Sub {
|
|
|
|
public Object subtypingInconsistency(@Nullable Object object) {
|
|
|
|
return new Object();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|