Global Metrics

path: .metrics.nom.total
old: 41.0
new: 13.0

path: .metrics.nom.functions
old: 38.0
new: 11.0

path: .metrics.nom.closures
old: 3.0
new: 2.0

path: .metrics.loc.blank
old: 55.0
new: 38.0

path: .metrics.loc.cloc
old: 47.0
new: 20.0

path: .metrics.loc.ploc
old: 381.0
new: 152.0

path: .metrics.loc.sloc
old: 483.0
new: 210.0

path: .metrics.loc.lloc
old: 164.0
new: 53.0

path: .metrics.nexits.average
old: 0.0975609756097561
new: 0.2307692307692308

path: .metrics.nexits.sum
old: 4.0
new: 3.0

path: .metrics.cyclomatic.average
old: 1.3111111111111111
new: 1.4666666666666666

path: .metrics.cyclomatic.sum
old: 59.0
new: 22.0

path: .metrics.nargs.average
old: 1.3658536585365857
new: 1.0769230769230769

path: .metrics.nargs.sum
old: 56.0
new: 14.0

path: .metrics.halstead.bugs
old: 4.120980698714347
new: 1.2125068088868731

path: .metrics.halstead.N2
old: 966.0
new: 320.0

path: .metrics.halstead.effort
old: 1374620.2986789283
new: 219385.62181524857

path: .metrics.halstead.difficulty
old: 79.08771929824562
new: 41.666666666666664

path: .metrics.halstead.level
old: 0.01264418811002662
new: 0.024

path: .metrics.halstead.n1
old: 28.0
new: 25.0

path: .metrics.halstead.time
old: 76367.79437105157
new: 12188.090100847145

path: .metrics.halstead.estimated_program_length
old: 1403.0587178631015
new: 748.2528048135991

path: .metrics.halstead.vocabulary
old: 199.0
new: 121.0

path: .metrics.halstead.length
old: 2276.0
new: 761.0

path: .metrics.halstead.n2
old: 171.0
new: 96.0

path: .metrics.halstead.volume
old: 17380.957636357343
new: 5265.254923565966

path: .metrics.halstead.purity_ratio
old: 0.6164581361437177
new: 0.9832494149981592

path: .metrics.halstead.N1
old: 1310.0
new: 441.0

path: .metrics.mi.mi_sei
old: -37.01696703809223
new: -0.3104004658503605

path: .metrics.mi.mi_original
old: 6.545451625352314
new: 34.758656824356706

path: .metrics.mi.mi_visual_studio
old: 3.827749488510125
new: 20.326699897284623

path: .metrics.cognitive.sum
old: 15.0
new: 8.0

path: .metrics.cognitive.average
old: 0.36585365853658536
new: 0.6153846153846154

Spaces Data

Minimal test - lines (24, 25)

path: .spaces[0].spaces[0].metrics.nexits.average
old: null
new: 0.0

path: .spaces[0].spaces[0].metrics.cognitive.average
old: null
new: 0.0

path: .spaces[0].spaces[0].metrics.loc.ploc
old: 6.0
new: 2.0

path: .spaces[0].spaces[0].metrics.loc.sloc
old: 6.0
new: 2.0

path: .spaces[0].spaces[0].metrics.nargs.average
old: null
new: 2.0

path: .spaces[0].spaces[0].metrics.nargs.sum
old: 0.0
new: 2.0

path: .spaces[0].spaces[0].metrics.nom.total
old: 0.0
new: 1.0

path: .spaces[0].spaces[0].metrics.nom.functions
old: 0.0
new: 1.0

path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 117.5188874649111
new: 135.80640507929616

path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: 93.94488402380712
new: 120.32819499625

path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 68.72449559351526
new: 79.41895033876969

path: .spaces[0].spaces[0].metrics.halstead.n2
old: 9.0
new: 8.0

path: .spaces[0].spaces[0].metrics.halstead.vocabulary
old: 15.0
new: 16.0

path: .spaces[0].spaces[0].metrics.halstead.level
old: 0.3
new: 0.2

path: .spaces[0].spaces[0].metrics.halstead.purity_ratio
old: 1.6310777784188053
new: 2.0

path: .spaces[0].spaces[0].metrics.halstead.volume
old: 105.48604608143
new: 96.0

path: .spaces[0].spaces[0].metrics.halstead.estimated_program_length
old: 44.039100017307746
new: 48.0

path: .spaces[0].spaces[0].metrics.halstead.N1
old: 17.0
new: 14.0

path: .spaces[0].spaces[0].metrics.halstead.time
old: 19.53445297804259
new: 26.666666666666668

path: .spaces[0].spaces[0].metrics.halstead.difficulty
old: 3.3333333333333335
new: 5.0

path: .spaces[0].spaces[0].metrics.halstead.bugs
old: 0.016605855385633608
new: 0.020434918197161412

path: .spaces[0].spaces[0].metrics.halstead.effort
old: 351.6201536047667
new: 480.0

path: .spaces[0].spaces[0].metrics.halstead.length
old: 27.0
new: 24.0

path: .spaces[0].spaces[0].metrics.halstead.n1
old: 6.0
new: 8.0

Code

  TestTask(int i, Atomic& aCounter)
      : Runnable("TestThreadPool::Task"), mIndex(i), mCounter(aCounter) {}

Minimal test - lines (22, 43)

path: .spaces[0].metrics.nexits.average
old: 0.0975609756097561
new: 0.3333333333333333

path: .spaces[0].metrics.nexits.sum
old: 4.0
new: 1.0

path: .spaces[0].metrics.nom.functions
old: 38.0
new: 3.0

path: .spaces[0].metrics.nom.closures
old: 3.0
new: 0.0

path: .spaces[0].metrics.nom.total
old: 41.0
new: 3.0

path: .spaces[0].metrics.cognitive.average
old: 0.36585365853658536
new: 0.0

path: .spaces[0].metrics.cognitive.sum
old: 15.0
new: 0.0

path: .spaces[0].metrics.cyclomatic.sum
old: 58.0
new: 4.0

path: .spaces[0].metrics.cyclomatic.average
old: 1.318181818181818
new: 1.0

path: .spaces[0].metrics.mi.mi_sei
old: -37.67143464961376
new: 50.68551865401571

path: .spaces[0].metrics.mi.mi_visual_studio
old: 4.417745750269697
new: 51.06552741556375

path: .spaces[0].metrics.mi.mi_original
old: 7.554345232961182
new: 87.32205188061403

path: .spaces[0].metrics.nargs.average
old: 1.3658536585365857
new: 0.6666666666666666

path: .spaces[0].metrics.nargs.sum
old: 56.0
new: 2.0

path: .spaces[0].metrics.halstead.n1
old: 28.0
new: 16.0

path: .spaces[0].metrics.halstead.length
old: 2268.0
new: 103.0

path: .spaces[0].metrics.halstead.n2
old: 163.0
new: 21.0

path: .spaces[0].metrics.halstead.volume
old: 17185.608581985078
new: 536.5736966597818

path: .spaces[0].metrics.halstead.vocabulary
old: 191.0
new: 37.0

path: .spaces[0].metrics.halstead.effort
old: 1414069.8300710667
new: 7154.315955463758

path: .spaces[0].metrics.halstead.estimated_program_length
old: 1332.4486269572783
new: 156.23866587835397

path: .spaces[0].metrics.halstead.level
old: 0.01215329555621831
new: 0.075

path: .spaces[0].metrics.halstead.bugs
old: 4.199452270554493
new: 0.12376299843684384

path: .spaces[0].metrics.halstead.N2
old: 958.0
new: 35.0

path: .spaces[0].metrics.halstead.difficulty
old: 82.28220858895706
new: 13.333333333333334

path: .spaces[0].metrics.halstead.time
old: 78559.43500394815
new: 397.46199752576433

path: .spaces[0].metrics.halstead.N1
old: 1310.0
new: 68.0

path: .spaces[0].metrics.halstead.purity_ratio
old: 0.5874993946019745
new: 1.516880251246155

path: .spaces[0].metrics.loc.cloc
old: 37.0
new: 0.0

path: .spaces[0].metrics.loc.lloc
old: 164.0
new: 5.0

path: .spaces[0].metrics.loc.sloc
old: 462.0
new: 22.0

path: .spaces[0].metrics.loc.ploc
old: 372.0
new: 19.0

path: .spaces[0].metrics.loc.blank
old: 53.0
new: 3.0

Code

class TestTask final : public Runnable {
 public:
  TestTask(int i, Atomic& aCounter)
      : Runnable("TestThreadPool::Task"), mIndex(i), mCounter(aCounter) {}

  NS_IMETHOD Run() override {
    printf("###(%d) running from thread: %p\n", mIndex,
           (void*)PR_GetCurrentThread());
    int r = (int)((float)rand() * 200 / float(RAND_MAX));
    PR_Sleep(PR_MillisecondsToInterval(r));
    printf("###(%d) exiting from thread: %p\n", mIndex,
           (void*)PR_GetCurrentThread());
    ++mCounter;
    return NS_OK;
  }

 private:
  ~TestTask() = default;

  int mIndex;
  Atomic& mCounter;
};

Minimal test - lines (39, 39)

path: .spaces[0].spaces[2].metrics.nom.total
old: 4.0
new: 1.0

path: .spaces[0].spaces[2].metrics.nom.functions
old: 4.0
new: 1.0

path: .spaces[0].spaces[2].metrics.mi.mi_visual_studio
old: 59.44632030188664
new: 91.5288617268536

path: .spaces[0].spaces[2].metrics.mi.mi_original
old: 101.65320771622616
new: 156.51435355291963

path: .spaces[0].spaces[2].metrics.mi.mi_sei
old: 71.46282596766476
new: 150.2034495661308

path: .spaces[0].spaces[2].metrics.cyclomatic.sum
old: 5.0
new: 1.0

path: .spaces[0].spaces[2].metrics.halstead.time
old: 74.66666666666667
new: 2.1541354172676304

path: .spaces[0].spaces[2].metrics.halstead.bugs
old: 0.040595533925441296
new: 0.00381864321284214

path: .spaces[0].spaces[2].metrics.halstead.level
old: 0.125
new: 0.4

path: .spaces[0].spaces[2].metrics.halstead.estimated_program_length
old: 48.0
new: 11.60964047443681

path: .spaces[0].spaces[2].metrics.halstead.purity_ratio
old: 1.1428571428571428
new: 1.9349400790728015

path: .spaces[0].spaces[2].metrics.halstead.vocabulary
old: 16.0
new: 6.0

path: .spaces[0].spaces[2].metrics.halstead.volume
old: 168.0
new: 15.509775004326936

path: .spaces[0].spaces[2].metrics.halstead.N2
old: 16.0
new: 1.0

path: .spaces[0].spaces[2].metrics.halstead.effort
old: 1344.0
new: 38.77443751081734

path: .spaces[0].spaces[2].metrics.halstead.n2
old: 8.0
new: 1.0

path: .spaces[0].spaces[2].metrics.halstead.n1
old: 8.0
new: 5.0

path: .spaces[0].spaces[2].metrics.halstead.difficulty
old: 8.0
new: 2.5

path: .spaces[0].spaces[2].metrics.halstead.N1
old: 26.0
new: 5.0

path: .spaces[0].spaces[2].metrics.halstead.length
old: 42.0
new: 6.0

path: .spaces[0].spaces[2].metrics.nargs.average
old: 0.5
new: 0.0

path: .spaces[0].spaces[2].metrics.nargs.sum
old: 2.0
new: 0.0

path: .spaces[0].spaces[2].metrics.loc.ploc
old: 11.0
new: 1.0

path: .spaces[0].spaces[2].metrics.loc.blank
old: 2.0
new: 0.0

path: .spaces[0].spaces[2].metrics.loc.lloc
old: 2.0
new: 0.0

path: .spaces[0].spaces[2].metrics.loc.sloc
old: 13.0
new: 1.0

Code

  ~TestTask() = default;

Minimal test - lines (27, 36)

path: .spaces[0].spaces[1].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[1].metrics.nexits.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[1].metrics.mi.mi_original
old: 112.49163496416077
new: 104.45942039911944

path: .spaces[0].spaces[1].metrics.mi.mi_sei
old: 86.8957314904869
new: 75.1040556513368

path: .spaces[0].spaces[1].metrics.mi.mi_visual_studio
old: 65.78458185038642
new: 61.087380350362245

path: .spaces[0].spaces[1].metrics.nom.total
old: 2.0
new: 1.0

path: .spaces[0].spaces[1].metrics.nom.functions
old: 2.0
new: 1.0

path: .spaces[0].spaces[1].metrics.halstead.vocabulary
old: 13.0
new: 25.0

path: .spaces[0].spaces[1].metrics.halstead.n1
old: 7.0
new: 10.0

path: .spaces[0].spaces[1].metrics.halstead.purity_ratio
old: 1.2557592663832202
new: 1.610923506719323

path: .spaces[0].spaces[1].metrics.halstead.effort
old: 604.4051539630451
new: 1676.4320845086756

path: .spaces[0].spaces[1].metrics.halstead.level
old: 0.17142857142857143
new: 0.15789473684210528

path: .spaces[0].spaces[1].metrics.halstead.difficulty
old: 5.833333333333333
new: 6.333333333333333

path: .spaces[0].spaces[1].metrics.halstead.time
old: 33.57806410905806
new: 93.13511580603752

path: .spaces[0].spaces[1].metrics.halstead.estimated_program_length
old: 35.161259458730164
new: 91.8226398830014

path: .spaces[0].spaces[1].metrics.halstead.bugs
old: 0.02382854463669668
new: 0.047040224739276104

path: .spaces[0].spaces[1].metrics.halstead.volume
old: 103.6123121079506
new: 264.6998028171593

path: .spaces[0].spaces[1].metrics.halstead.N1
old: 18.0
new: 38.0

path: .spaces[0].spaces[1].metrics.halstead.n2
old: 6.0
new: 15.0

path: .spaces[0].spaces[1].metrics.halstead.N2
old: 10.0
new: 19.0

path: .spaces[0].spaces[1].metrics.halstead.length
old: 28.0
new: 57.0

path: .spaces[0].spaces[1].metrics.cyclomatic.sum
old: 3.0
new: 1.0

path: .spaces[0].spaces[1].metrics.loc.sloc
old: 8.0
new: 10.0

path: .spaces[0].spaces[1].metrics.loc.ploc
old: 7.0
new: 10.0

path: .spaces[0].spaces[1].metrics.loc.blank
old: 1.0
new: 0.0

path: .spaces[0].spaces[1].metrics.loc.lloc
old: 0.0
new: 5.0

Code

  NS_IMETHOD Run() override {
    printf("###(%d) running from thread: %p\n", mIndex,
           (void*)PR_GetCurrentThread());
    int r = (int)((float)rand() * 200 / float(RAND_MAX));
    PR_Sleep(PR_MillisecondsToInterval(r));
    printf("###(%d) exiting from thread: %p\n", mIndex,
           (void*)PR_GetCurrentThread());
    ++mCounter;
    return NS_OK;
  }