Prerequisite of a beta or release candidate is automated test coverage. Full list to be determined, but some initial thoughts:

  • Unit tests
    • Deep unit coverage on InsightRemoteEntityQuery
    • Unit coverage on InsightEntityController not currently possible
    • Unit coverage on Insight
    • Unit coverage on clients_connection_new_relic_insights_query
  • Behavioral tests
    • Basic admin configuration tests)
    • Coverage on procedural functions in new_relic_insights.module where appropriate (e.g. on queue handling)
    • Create a fake, local API endpoint to capture events, testing watchdog mostly (since Better Stats is a soft dependency)
    • Coverage on the use of EntityFieldQuery (for remote and local entity querying)
CommentFileSizeAuthor
#56 new_relic_insights-test_behavior_query-2307903-56.patch12.62 KBiamEAP
#53 new_relic_insights-test_behavior_insert-2307903-53.patch12.83 KBiamEAP
#51 new_relic_insights-test_behavior_insert-2307903-51.patch12.76 KBiamEAP
#46 new_relic_insights-test_behavior_insert-2307903-46.patch12.65 KBiamEAP
#45 new_relic_insights-test_behavior_insert-2307903-45.patch11.62 KBiamEAP
#42 new_relic_insights-test_behavior_ui-2307903-42.patch3.9 KBiamEAP
#40 new_relic_insights-tests_unit_insightcontroller-2307903-40.patch3.95 KBiamEAP
#37 new_relic_insights-tests_unit_insight-2307903-37.patch9.72 KBiamEAP
#37 new_relic_insights-tests_unit_insight-2307903-37.interdiff.txt1.94 KBiamEAP
#35 new_relic_insights-tests_unit_insight-2307903-35.patch9.2 KBiamEAP
#35 new_relic_insights-tests_unit_insight-2307903-35.interdiff.txt4.59 KBiamEAP
#33 new_relic_insights-tests_unit_insight-2307903-33.patch3.84 KBiamEAP
#29 new_relic_insights-tests_unit_connection-2307903-29.patch10.85 KBiamEAP
#27 new_relic_insights-tests_unit_connection-2307903-27.patch10.37 KBiamEAP
#25 new_relic_insights-tests_unit_connection-2307903-25.patch9.78 KBiamEAP
#23 new_relic_insights-tests_unit_connection-2307903-23.patch8.92 KBiamEAP
#21 new_relic_insights-tests_unit_connection-2307903-21.patch8.89 KBiamEAP
#19 new_relic_insights-tests_unit_connection-2307903-19.patch8.85 KBiamEAP
#17 new_relic_insights-tests_unit_connection-2307903-17.patch8.84 KBiamEAP
#15 new_relic_insights-tests_unit_connection-2307903-15.patch7.99 KBiamEAP
#13 new_relic_insights-tests_unit_connection-2307903-13.patch7.85 KBiamEAP
#6 new_relic_insights-tests_unit_connection-2307903-6.patch7.74 KBiamEAP
#5 new_relic_insights-tests_unit_remotequery-2307903-5.patch28.37 KBiamEAP
#5 new_relic_insights-tests_unit_remotequery-2307903-5.interdiff.txt11.52 KBiamEAP
#4 new_relic_insights-tests_unit_remotequery-2307903-4.patch18.19 KBiamEAP
#4 new_relic_insights-tests_unit_remotequery-2307903-4.interdiff.txt12.92 KBiamEAP
#3 new_relic_insights-tests_unit_remotequery-2307903-3.patch7.26 KBiamEAP
#3 new_relic_insights-tests_unit_remotequery-2307903-3.interdiff.txt6.24 KBiamEAP
#2 new_relic_insights-tests_unit_remotequery-2307903-2.patch3.89 KBiamEAP
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

iamEAP’s picture

Issue summary: View changes
iamEAP’s picture

Status: Active » Needs review
FileSize
3.89 KB

Just some foundation work on the remote entity query class unit tests.

iamEAP’s picture

Further along, adding the helper assertNRQLContains(), and tests for entity and field conditions, as well as the exceptions for special property conditions.

iamEAP’s picture

Adding an assertDefaultNRQL() helper, and tests for all time conditions and exceptional operators, as well as the execute method.

Remaining:

  • Tests for the buildFromEFQ() method
  • Small gaps in the buildNRQL() method... like multiple property conditions, or multiple in/out conditions (proper use of "AND" and "WHERE" under certain circumstances). Also the ability to target multiple bundles.
iamEAP’s picture

Wrapped up the tests, cleaned out some missing features in the query builder where trivial.

Discovered a relatively major flaw, noted here: #2309343: Handling of "IN" conditions is flawed in InsightRemoteEntityQuery

iamEAP’s picture

Tests for the clients connection class.

Status: Needs review » Needs work

The last submitted patch, 6: new_relic_insights-tests_unit_connection-2307903-6.patch, failed testing.

Status: Needs work » Needs review

  • iamEAP committed 93c0b67 on 7.x-1.x
    Adding unit test coverage for InsightRemoteEntityQuery. [#2307903]
    
iamEAP’s picture

Issue summary: View changes
iamEAP’s picture

Status: Needs review » Needs work

The last submitted patch, 6: new_relic_insights-tests_unit_connection-2307903-6.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
7.85 KB

Status: Needs review » Needs work

The last submitted patch, 13: new_relic_insights-tests_unit_connection-2307903-13.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
7.99 KB

Status: Needs review » Needs work

The last submitted patch, 15: new_relic_insights-tests_unit_connection-2307903-15.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
8.84 KB

Status: Needs review » Needs work

The last submitted patch, 17: new_relic_insights-tests_unit_connection-2307903-17.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
8.85 KB

Status: Needs review » Needs work

The last submitted patch, 19: new_relic_insights-tests_unit_connection-2307903-19.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
8.89 KB

Status: Needs review » Needs work

The last submitted patch, 21: new_relic_insights-tests_unit_connection-2307903-21.patch, failed testing.

Status: Needs review » Needs work

The last submitted patch, 23: new_relic_insights-tests_unit_connection-2307903-23.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
9.78 KB

Status: Needs review » Needs work

The last submitted patch, 25: new_relic_insights-tests_unit_connection-2307903-25.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
10.37 KB

Status: Needs review » Needs work

The last submitted patch, 27: new_relic_insights-tests_unit_connection-2307903-27.patch, failed testing.

iamEAP’s picture

  • iamEAP committed 090568d on 7.x-1.x
    Adding unit test coverage for the clients connection class. [#2307903]
    
iamEAP’s picture

iamEAP’s picture

Status: Needs review » Needs work
iamEAP’s picture

Status: Needs work » Needs review
FileSize
3.84 KB

Tests for the Insight class.

Status: Needs review » Needs work

The last submitted patch, 33: new_relic_insights-tests_unit_insight-2307903-33.patch, failed testing.

iamEAP’s picture

Status: Needs review » Needs work

The last submitted patch, 35: new_relic_insights-tests_unit_insight-2307903-35.patch, failed testing.

iamEAP’s picture

  • iamEAP committed 57f5a6e on 7.x-1.x
    Adding unit test coverage for the Insight entity class. [#2307903]
    
iamEAP’s picture

iamEAP’s picture

Unfortunately, testing of the entity controller is not really possible, due to RemoteEntityAPIDefaultController::pack() directly calling entity_get_info()...

Attaching the patch for reference, but will not pursue any further.

iamEAP’s picture

Issue summary: View changes
iamEAP’s picture

Status: Needs work » Needs review
FileSize
3.9 KB

Here's UI test cases for what's implemented so far.

  • iamEAP committed b02d5ad on 7.x-1.x
    Adding UI behavior test coverage. [#2307903]
    
iamEAP’s picture

Issue summary: View changes
Status: Needs review » Needs work
iamEAP’s picture

Status: Needs work » Needs review
FileSize
11.62 KB

Coverage for inserting insights events.

iamEAP’s picture

Another try... At least locally, on some sites, timeout of 5 seconds may not be enough.

The last submitted patch, 45: new_relic_insights-test_behavior_insert-2307903-45.patch, failed testing.

Status: Needs review » Needs work

The last submitted patch, 46: new_relic_insights-test_behavior_insert-2307903-46.patch, failed testing.

Status: Needs work » Needs review

Status: Needs review » Needs work

The last submitted patch, 46: new_relic_insights-test_behavior_insert-2307903-46.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
12.76 KB

Status: Needs review » Needs work

The last submitted patch, 51: new_relic_insights-test_behavior_insert-2307903-51.patch, failed testing.

iamEAP’s picture

Status: Needs work » Needs review
FileSize
12.83 KB

  • iamEAP committed 65d0688 on 7.x-1.x
    Adding test coverage for Insight event insertion. [#2307903]
    
iamEAP’s picture

Issue summary: View changes
Status: Needs review » Needs work
iamEAP’s picture

Status: Needs work » Needs review
FileSize
12.62 KB

Query (via EntityFieldQuery) coverage.

  • iamEAP committed 3c00506 on 7.x-1.x
    Adding test coverage for Insights querying (via EntityFieldQuery). [#...
iamEAP’s picture

Issue summary: View changes
Status: Needs review » Fixed

The long slog is over.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.