23 #include "gtest/gtest.h"
27 TEST(TrySeqTest, SucceedAndThen) {
35 TEST(TrySeqTest, SucceedDirectlyAndThenDirectly) {
37 TrySeq([] {
return 1; }, [](
int i) {
return [
i]() {
return i + 1; }; })(),
41 TEST(TrySeqTest, SucceedAndThenChangeType) {
52 TEST(TrySeqTest, FailAndThen) {
61 TEST(TrySeqTest, RawSucceedAndThen) {
67 TEST(TrySeqTest, RawFailAndThen) {
73 TEST(TrySeqTest, RawSucceedAndThenValue) {
80 std::vector<int>
v{1, 2, 3, 4, 5};
82 [](
int elem,
int accum) {
83 return [elem, accum]() -> absl::StatusOr<int> {
90 TEST(TrySeqIterTest, ErrorAt3) {
91 std::vector<int>
v{1, 2, 3, 4, 5};
93 [](
int elem,
int accum) {
94 return [elem, accum]() -> absl::StatusOr<int> {
99 return absl::CancelledError();
109 int main(
int argc,
char** argv) {