@Test
  public void testPut_ValidateDataOnMember_PrimarySecondary_Datastore() {
    member1.invoke(() -> {
      cache.set(new CacheFactory(getDistributedSystemProperties()).create());
      FixedPartitionAttributes fpa1 = createFixedPartition(QUARTER_1, true, 3);
      FixedPartitionAttributes fpa2 = createFixedPartition(QUARTER_2, false, 3);
      createPartitionedRegion("Quarter", asList(fpa1, fpa2), 1, 40, 12,
          newQuarterPartitionResolver());
    });

    member2.invoke(() -> {
      cache.set(new CacheFactory(getDistributedSystemProperties()).create());
      FixedPartitionAttributes fpa1 = createFixedPartition(QUARTER_2, true, 3);
      FixedPartitionAttributes fpa2 = createFixedPartition(QUARTER_3, false, 3);
      createPartitionedRegion("Quarter", asList(fpa1, fpa2), 1, 40, 12,
          newQuarterPartitionResolver());
    });

    member3.invoke(() -> {
      cache.set(new CacheFactory(getDistributedSystemProperties()).create());
      FixedPartitionAttributes fpa1 = createFixedPartition(QUARTER_3, true, 3);
      FixedPartitionAttributes fpa2 = createFixedPartition(QUARTER_4, false, 3);
      createPartitionedRegion("Quarter", asList(fpa1, fpa2), 1, 40, 12,
          newQuarterPartitionResolver());
    });

    member4.invoke(() -> {
      cache.set(new CacheFactory(getDistributedSystemProperties()).create());
      FixedPartitionAttributes fpa1 = createFixedPartition(QUARTER_4, true, 3);
      FixedPartitionAttributes fpa2 = createFixedPartition(QUARTER_1, false, 3);
      createPartitionedRegion("Quarter", asList(fpa1, fpa2), 1, 40, 12,
          newQuarterPartitionResolver());
    });

    member1.invoke(() -> putThroughDataStore("Quarter"));

    member1.invoke(() -> checkPrimarySecondaryData(QUARTER_1, false));
    member2.invoke(() -> checkPrimarySecondaryData(QUARTER_2, false));
    member3.invoke(() -> checkPrimarySecondaryData(QUARTER_3, false));
    member4.invoke(() -> checkPrimarySecondaryData(QUARTER_4, false));

    member1.invoke(() -> checkPrimaryBucketsForQuarter(6, 3));
    member2.invoke(() -> checkPrimaryBucketsForQuarter(6, 3));
    member3.invoke(() -> checkPrimaryBucketsForQuarter(6, 3));
    member4.invoke(() -> checkPrimaryBucketsForQuarter(6, 3));
  }
This tests validate that datastore member does the put on itself as well as other datastores as
per primary and secondary FixedPartitionAttributes defined on datastores.
geode-core/src/distributedTest/java/org/apache/geode/internal/cache/partitioned/fixed/FixedPartitioningDUnitTest.java