| 24 | using ::testing::ElementsAre; |
| 25 | |
| 26 | TEST(TfliteDriverTest, SimpleTest) { |
| 27 | std::unique_ptr<TestRunner> runner(new TfLiteDriver()); |
| 28 | |
| 29 | runner->SetModelBaseDir("tensorflow/lite"); |
| 30 | runner->LoadModel("testdata/multi_add.bin"); |
| 31 | ASSERT_TRUE(runner->IsValid()); |
| 32 | |
| 33 | ASSERT_THAT(runner->GetInputs(), ElementsAre(0, 1, 2, 3)); |
| 34 | ASSERT_THAT(runner->GetOutputs(), ElementsAre(5, 6)); |
| 35 | |
| 36 | for (int i : {0, 1, 2, 3}) { |
| 37 | runner->ReshapeTensor(i, "1,2,2,1"); |
| 38 | } |
| 39 | ASSERT_TRUE(runner->IsValid()); |
| 40 | |
| 41 | runner->AllocateTensors(); |
| 42 | |
| 43 | runner->SetInput(0, "0.1,0.2,0.3,0.4"); |
| 44 | runner->SetInput(1, "0.001,0.002,0.003,0.004"); |
| 45 | runner->SetInput(2, "0.001,0.002,0.003,0.004"); |
| 46 | runner->SetInput(3, "0.01,0.02,0.03,0.04"); |
| 47 | |
| 48 | runner->ResetTensor(2); |
| 49 | |
| 50 | runner->SetExpectation(5, "0.101,0.202,0.303,0.404"); |
| 51 | runner->SetExpectation(6, "0.011,0.022,0.033,0.044"); |
| 52 | |
| 53 | runner->Invoke(); |
| 54 | ASSERT_TRUE(runner->IsValid()); |
| 55 | |
| 56 | ASSERT_TRUE(runner->CheckResults()); |
| 57 | EXPECT_EQ(runner->ReadOutput(5), "0.101,0.202,0.303,0.404"); |
| 58 | EXPECT_EQ(runner->ReadOutput(6), "0.011,0.022,0.033,0.044"); |
| 59 | } |
| 60 | |
| 61 | TEST(TfliteDriverTest, SingleAddOpTest) { |
| 62 | std::unique_ptr<TestRunner> runner(new TfLiteDriver( |
nothing calls this directly
no test coverage detected