aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValentin Popov <info@valentineus.link>2019-05-09 19:35:59 +0300
committerValentin Popov <info@valentineus.link>2019-05-09 19:35:59 +0300
commitd441f44698a1ed0bf6cf33c74f910f05ab7d6a08 (patch)
tree1ad55cf66e27ed9c2ba18aaa1f1eaf5f6b675f71
parentcb6d5c7e13c0eee799b0e9fcb42432eaad674117 (diff)
downloadlocal_webhooks-d441f44698a1ed0bf6cf33c74f910f05ab7d6a08.tar.xz
local_webhooks-d441f44698a1ed0bf6cf33c74f910f05ab7d6a08.zip
Added get a total count records
Signed-off-by: Valentin Popov <info@valentineus.link>
-rw-r--r--classes/local/api.php12
-rw-r--r--tests/api_test.php30
2 files changed, 42 insertions, 0 deletions
diff --git a/classes/local/api.php b/classes/local/api.php
index c937aa5..ea70a91 100644
--- a/classes/local/api.php
+++ b/classes/local/api.php
@@ -188,6 +188,18 @@ final class api {
}
/**
+ * Get a total count of existing records.
+ *
+ * @return int
+ * @throws \dml_exception
+ */
+ public static function get_total_count(): int {
+ global $DB;
+
+ return $DB->count_records(LW_TABLE_SERVICES);
+ }
+
+ /**
* Update an existing record in the database.
*
* @param \local_webhooks\local\record $service
diff --git a/tests/api_test.php b/tests/api_test.php
index 955c284..648c7e8 100644
--- a/tests/api_test.php
+++ b/tests/api_test.php
@@ -307,6 +307,36 @@ final class local_webhooks_api_testcase extends advanced_testcase {
}
/**
+ * Testing get a total count of existing records.
+ *
+ * @throws \coding_exception
+ * @throws \dml_exception
+ */
+ public function test_total() {
+ $this->resetAfterTest();
+
+ $record = new record();
+ $record->header = 'application/json';
+ $record->status = true;
+ $record->token = '967b2286-0874-4938-b088-efdbcf8a79bc';
+ $record->events = [
+ '\core\event\course_created',
+ '\core\event\course_deleted',
+ '\core\event\course_updated',
+ '\core\event\course_viewed',
+ ];
+
+ $total = random_int(5, 20);
+ for ($i = 0; $i < $total; $i++) {
+ $record->name = 'Example name #' . $i;
+ $record->point = 'http://example.org/test_' . $i;
+ api::create_service($record);
+ }
+
+ self::assertEquals($total, api::get_total_count());
+ }
+
+ /**
* Testing of the service update.
*
* @group local_webhooks