// Test "AvgPoolGraphBuilderImpl<ImportTarget::Canonical>"
{
- // TODO: fix indentation
- // clang-format off
-
- // what to test:
- // - there should exist AvgPool2D
- // - input node should be FeatureEncode
- // - following node should be FeatureDecode
- // - stride values should match
- // - window values should match
+ // what to test:
+ // - there should exist AvgPool2D
+ // - input node should be FeatureEncode
+ // - following node should be FeatureDecode
+ // - stride values should match
+ // - window values should match
- using AvgPoolGraphBuilder = AvgPoolGraphBuilderImpl<ImportTarget::Canonical>;
+ using AvgPoolGraphBuilder = AvgPoolGraphBuilderImpl<ImportTarget::Canonical>;
- moco::tf::GraphBuilderRegistry r{&moco::tf::GraphBuilderRegistry::get()};
- r.add("AvgPool", stdex::make_unique<AvgPoolGraphBuilder>());
- moco::tf::Importer importer{&r};
+ moco::tf::GraphBuilderRegistry r{&moco::tf::GraphBuilderRegistry::get()};
+ r.add("AvgPool", stdex::make_unique<AvgPoolGraphBuilder>());
+ moco::tf::Importer importer{&r};
- std::unique_ptr<loco::Graph> graph = importer.import(signature, graph_def);
+ std::unique_ptr<loco::Graph> graph = importer.import(signature, graph_def);
- loco::AvgPool2D *avgpool2d_node =
- moco::tf::test::find_first_node_bytype<loco::AvgPool2D>(graph.get());
- ASSERT_NE(avgpool2d_node, nullptr);
+ loco::AvgPool2D *avgpool2d_node =
+ moco::tf::test::find_first_node_bytype<loco::AvgPool2D>(graph.get());
+ ASSERT_NE(avgpool2d_node, nullptr);
- loco::Node *previous_node = avgpool2d_node->ifm();
- auto following_nodes = loco::succs(avgpool2d_node);
- ASSERT_EQ(following_nodes.size(), 1);
- loco::Node *following_node = *following_nodes.begin();
- ASSERT_NE(following_node, nullptr);
+ loco::Node *previous_node = avgpool2d_node->ifm();
+ auto following_nodes = loco::succs(avgpool2d_node);
+ ASSERT_EQ(following_nodes.size(), 1);
+ loco::Node *following_node = *following_nodes.begin();
+ ASSERT_NE(following_node, nullptr);
- loco::FeatureEncode *enc_node = dynamic_cast<loco::FeatureEncode *>(previous_node);
- loco::FeatureDecode *dec_node = dynamic_cast<loco::FeatureDecode *>(following_node);
+ loco::FeatureEncode *enc_node = dynamic_cast<loco::FeatureEncode *>(previous_node);
+ loco::FeatureDecode *dec_node = dynamic_cast<loco::FeatureDecode *>(following_node);
- ASSERT_NE(enc_node, nullptr);
- ASSERT_NE(dec_node, nullptr);
+ ASSERT_NE(enc_node, nullptr);
+ ASSERT_NE(dec_node, nullptr);
- // attrs inside AvgPool2D
- auto avgpool2d = avgpool2d_node; // TODO remove this new variable
- // convention
- ASSERT_EQ(avgpool2d->convention(), loco::AvgPool2D::Convention::Valid);
+ // attrs inside AvgPool2D
+ auto avgpool2d = avgpool2d_node; // TODO remove this new variable
+ // convention
+ ASSERT_EQ(avgpool2d->convention(), loco::AvgPool2D::Convention::Valid);
- // stride
- ASSERT_EQ(avgpool2d->stride()->vertical(), 3);
- ASSERT_EQ(avgpool2d->stride()->horizontal(), 2);
+ // stride
+ ASSERT_EQ(avgpool2d->stride()->vertical(), 3);
+ ASSERT_EQ(avgpool2d->stride()->horizontal(), 2);
- // window
- ASSERT_EQ(avgpool2d->window()->vertical(), 2);
- ASSERT_EQ(avgpool2d->window()->horizontal(), 3);
- // clang-format on
+ // window
+ ASSERT_EQ(avgpool2d->window()->vertical(), 2);
+ ASSERT_EQ(avgpool2d->window()->horizontal(), 3);
}
// Test "AvgPoolGraphBuilderImpl<ImportTarget::TensorFlow>"