TEST_F(WPA2DecryptTest, AccessPointFoundCallback) {
    using namespace std::placeholders;

    Crypto::WPA2Decrypter decrypter;
    decrypter.add_ap_data("libtinstest", "NODO");
    decrypter.add_ap_data("Induction", "Coherer");
    decrypter.ap_found_callback(std::bind(&WPA2DecryptTest::ap_found, this, _1, _2));
    for(size_t i = 0; i < 7; ++i) {
        RadioTap radio(ccmp_packets[i], ccmp_packets_size[i]);
        decrypter.decrypt(radio);
    }
    for(size_t i = 0; i < 7; ++i) {
        RadioTap radio(tkip_packets[i], tkip_packets_size[i]);
        decrypter.decrypt(radio);
    }

    ASSERT_EQ(2U, access_points_.size());
    ap_data data = access_points_[0];
    EXPECT_EQ("Coherer", data.ssid);
    EXPECT_EQ(address_type("00:0c:41:82:b2:55"), data.bssid);

    data = access_points_[1];
    EXPECT_EQ("NODO", data.ssid);
    EXPECT_EQ(address_type("00:1b:11:d2:1b:eb"), data.bssid);
}