@Test
    public void testCrossSelfJoin() {

        // {A} x {B}
        // ---------------------------------------------------------------------
        assertEquals(asList(),
            Seq.of().crossSelfJoin().toList());

        assertEquals(asList(
            tuple(1, 1)),
            Seq.of(1).crossSelfJoin().toList());

        assertEquals(asList(
            tuple(1, 1),
            tuple(1, 2),
            tuple(2, 1),
            tuple(2, 2)),
            Seq.of(1, 2).crossSelfJoin().toList());

        assertEquals(asList(
            tuple(1, 1),
            tuple(1, 2),
            tuple(1, 3),
            tuple(2, 1),
            tuple(2, 2),
            tuple(2, 3),
            tuple(3, 1),
            tuple(3, 2),
            tuple(3, 3)),
            Seq.of(1, 2, 3).crossSelfJoin().toList());

    }
@author Lukas Eder
@author Roman Tkalenko
jOOL-java-8/src/test/java/org/jooq/lambda/SeqTest.java