You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by cc...@apache.org on 2016/01/09 01:18:43 UTC

[10/10] incubator-mynewt-larva git commit: Some more client-side ATT tests.

Some more client-side ATT tests.


Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/commit/3e94452f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/tree/3e94452f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/diff/3e94452f

Branch: refs/heads/master
Commit: 3e94452f3608a48906484aab096b7238ceeb959b
Parents: 26ff749
Author: Christopher Collins <cc...@gmail.com>
Authored: Fri Jan 8 16:16:49 2016 -0800
Committer: Christopher Collins <cc...@gmail.com>
Committed: Fri Jan 8 16:18:10 2016 -0800

----------------------------------------------------------------------
 net/nimble/host/src/test/ble_att_clt_test.c | 94 ++++++++++++++++++++++++
 1 file changed, 94 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-mynewt-larva/blob/3e94452f/net/nimble/host/src/test/ble_att_clt_test.c
----------------------------------------------------------------------
diff --git a/net/nimble/host/src/test/ble_att_clt_test.c b/net/nimble/host/src/test/ble_att_clt_test.c
index 3e820a1..6f28e68 100644
--- a/net/nimble/host/src/test/ble_att_clt_test.c
+++ b/net/nimble/host/src/test/ble_att_clt_test.c
@@ -212,10 +212,104 @@ TEST_CASE(ble_att_clt_test_tx_write)
     ble_att_clt_test_case_tx_write_req_or_cmd(1);
 }
 
+TEST_CASE(ble_att_clt_test_tx_read)
+{
+    struct ble_att_read_req req;
+    struct ble_l2cap_chan *chan;
+    struct ble_hs_conn *conn;
+    int rc;
+
+    ble_att_clt_test_misc_init(&conn, &chan);
+
+    /*** Success. */
+    req.barq_handle = 1;
+    rc = ble_att_clt_tx_read(conn, &req);
+    TEST_ASSERT(rc == 0);
+
+    /*** Error: handle of 0. */
+    req.barq_handle = 0;
+    rc = ble_att_clt_tx_read(conn, &req);
+    TEST_ASSERT(rc == BLE_HS_EINVAL);
+}
+
+TEST_CASE(ble_att_clt_test_rx_read)
+{
+    struct ble_l2cap_chan *chan;
+    struct ble_hs_conn *conn;
+    uint8_t buf[1024];
+    int rc;
+
+    ble_att_clt_test_misc_init(&conn, &chan);
+
+    /*** Basic success. */
+    buf[0] = BLE_ATT_OP_READ_RSP;
+    buf[1] = 0;
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 2);
+    TEST_ASSERT(rc == 0);
+
+    /*** Larger response. */
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 20);
+    TEST_ASSERT(rc == 0);
+
+    /*** Zero-length response. */
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 1);
+    TEST_ASSERT(rc == 0);
+}
+
+TEST_CASE(ble_att_clt_test_tx_read_blob)
+{
+    struct ble_att_read_blob_req req;
+    struct ble_l2cap_chan *chan;
+    struct ble_hs_conn *conn;
+    int rc;
+
+    ble_att_clt_test_misc_init(&conn, &chan);
+
+    /*** Success. */
+    req.babq_handle = 1;
+    req.babq_offset = 0;
+    rc = ble_att_clt_tx_read_blob(conn, &req);
+    TEST_ASSERT(rc == 0);
+
+    /*** Error: handle of 0. */
+    req.babq_handle = 0;
+    req.babq_offset = 0;
+    rc = ble_att_clt_tx_read_blob(conn, &req);
+    TEST_ASSERT(rc == BLE_HS_EINVAL);
+}
+
+TEST_CASE(ble_att_clt_test_rx_read_blob)
+{
+    struct ble_l2cap_chan *chan;
+    struct ble_hs_conn *conn;
+    uint8_t buf[1024];
+    int rc;
+
+    ble_att_clt_test_misc_init(&conn, &chan);
+
+    /*** Basic success. */
+    buf[0] = BLE_ATT_OP_READ_BLOB_RSP;
+    buf[1] = 0;
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 2);
+    TEST_ASSERT(rc == 0);
+
+    /*** Larger response. */
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 20);
+    TEST_ASSERT(rc == 0);
+
+    /*** Zero-length response. */
+    rc = ble_hs_test_util_l2cap_rx_payload_flat(conn, chan, buf, 1);
+    TEST_ASSERT(rc == 0);
+}
+
 TEST_SUITE(ble_att_clt_suite)
 {
     ble_att_clt_test_tx_find_info();
     ble_att_clt_test_rx_find_info();
+    ble_att_clt_test_tx_read();
+    ble_att_clt_test_rx_read();
+    ble_att_clt_test_tx_read_blob();
+    ble_att_clt_test_rx_read_blob();
     ble_att_clt_test_tx_write();
 }