16 #include "tensorflow_serving/batching/threadsafe_status.h"
18 #include "tensorflow/core/lib/core/status_test_util.h"
19 #include "tensorflow/core/platform/errors.h"
20 #include "tensorflow/core/platform/test.h"
21 #include "tensorflow/core/protobuf/error_codes.pb.h"
23 namespace tensorflow {
27 TEST(ThreadSafeStatus, DefaultOk) {
28 ThreadSafeStatus status;
29 TF_EXPECT_OK(status.status());
32 TEST(ThreadSafeStatus, Update) {
33 ThreadSafeStatus status;
34 TF_EXPECT_OK(status.status());
36 status.Update(errors::FailedPrecondition(
"original error"));
37 EXPECT_EQ(status.status().code(), error::FAILED_PRECONDITION);
39 status.Update(absl::OkStatus());
40 EXPECT_EQ(status.status().code(), error::FAILED_PRECONDITION);
42 status.Update(errors::Internal(
"new error"));
43 EXPECT_EQ(status.status().code(), error::FAILED_PRECONDITION);
46 TEST(ThreadSafeStatus, Move) {
47 ThreadSafeStatus status;
48 TF_EXPECT_OK(std::move(status).status());