code: def test_add():
      stats1 = ActivityStats()
      stats2 = ActivityStats()
      stats1.files += 1
      stats2.files += 1
      stats2.urls += 1
      assert_equal(stats1, ActivityStats(files=1))
      assert_equal(stats2, ActivityStats(files=1, urls=1))
  
      stats1 += stats2
      assert_equal(stats1, ActivityStats(files=2, urls=1))
      assert_equal(stats1.get_total(), ActivityStats(files=2, urls=1))
  
      stats3 = stats1 + stats2
      # no changes to stats1 or stats2
      assert_equal(stats1, ActivityStats(files=2, urls=1))
      assert_equal(stats1.get_total(), ActivityStats(files=2, urls=1))
      assert_equal(stats2, ActivityStats(files=1, urls=1))
      assert_equal(stats3.get_total(), ActivityStats(files=3, urls=2))
  
imports: from ...tests.utils_pytest import assert_equal, assert_in, assert_not_equal, assert_raises
  from ..stats import _COUNTS, ActivityStats
label_desc: Use image node_id 3 for calling a global function with example usage: test_add() without return types