Review market tests documentation #40
Annotations
15 errors and 2 warnings
test (GestaoHospital)
Process completed with exit code 127.
|
test (GestaoHospital)
Process completed with exit code 1.
|
test (Market)
Process completed with exit code 127.
|
test (Market)
Process completed with exit code 1.
|
TestPetstore0DatagenLive.testPlacedPet0OrdersByCategoryAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstore0DatagenLive.java#L1
Strings are different. First diff at line 7 column 44.
failed rules-placed-pet0-orders-by-category-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet0-orders-by-category-order-status.xml.html
expected:<..." ON Customer0.id = [Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE Pet0.category::name = 'Dogs' AND "Order0".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE (Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet0.category::name = 'Dogs' is TRUE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE NOT(Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet0.category::name = 'Dogs' is FALSE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order0".status = 'placed']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE NOT("Order0".status = 'placed') AND (Pet0.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order0".status = 'placed' is FALSE
--(T) Pet0.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
LEFT JOIN "Order0" ON Customer0.id = Order0.customerId
LEFT JOIN Pet0 ON Order0.petId = Pet0.id
WHERE (Order0.customerId IS NULL) AND (Customer0.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet0.category::name = 'Dogs'] ; ["Order0".status = 'placed'] ;
--summary: [Customer0] left [Order0] ON Customer0.id = Order0.customerId
--There exist some row in table Customer0
--which does not join to any table in Order0</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
RIGHT JOIN "Order0" ON Customer0.id = Order0.customerId
RIGHT JOIN Pet0 ON Order0.petId = Pet0.id
WHERE ((Order0.petId IS NULL) AND (Pet0.id IS NOT NULL))
AND (Pet0.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order0".status = 'placed'] ;
--summary: [Order0] right [Pet0] ON Order0].petId = Pet0.id
-...> but was:<..." ON Customer0.id = ["Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE Pet0.category::name = 'Dogs' AND "Order0".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE (Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet0.category::name = 'Dogs' is TRUE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE NOT(Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet0.category::name = 'Dogs' is FALSE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order0".status = 'placed']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE NOT("Order0".status = 'placed') AND (Pet0.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order0".status = 'placed' is FALSE
--(T) Pet0.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
LEFT JOIN "Order0" ON Customer0.id = "Order0".customerId
LEFT JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE ("Order0".customerId IS NULL) AND (Customer0.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet0.category::name = 'Dogs'] ; ["Order0".status = 'placed'] ;
--summary: [Customer0] left [Order0] ON Customer0.id = "Order0".customerId
--There exist some row in table Customer0
--which does not join to any table in Order0</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
RIGHT JOIN "Order0" ON Customer0.id = "Order0".customerId
RIGHT JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE (("Order0".petId IS NULL) AND (Pet0.id IS NOT NULL))
AND (Pet0.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order0".status = 'placed'] ;
--summary: [Order0] right [Pet0] ON "Order0"].petId = Pet0.id
-...>
|
TestPetstore0DatagenLocal.testPlacedPet0OrdersByCategoryAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstore0DatagenLocal.java#L135
Strings are different. First diff at line 7 column 44.
failed rules-placed-pet0-orders-by-category-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet0-orders-by-category-order-status.xml.html
expected:<..." ON Customer0.id = [Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE Pet0.category::name = 'Dogs' AND "Order0".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE (Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet0.category::name = 'Dogs' is TRUE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE NOT(Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet0.category::name = 'Dogs' is FALSE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order0".status = 'placed']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = Order0.customerId
INNER JOIN Pet0 ON Order0.petId = Pet0.id
WHERE NOT("Order0".status = 'placed') AND (Pet0.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order0".status = 'placed' is FALSE
--(T) Pet0.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
LEFT JOIN "Order0" ON Customer0.id = Order0.customerId
LEFT JOIN Pet0 ON Order0.petId = Pet0.id
WHERE (Order0.customerId IS NULL) AND (Customer0.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet0.category::name = 'Dogs'] ; ["Order0".status = 'placed'] ;
--summary: [Customer0] left [Order0] ON Customer0.id = Order0.customerId
--There exist some row in table Customer0
--which does not join to any table in Order0</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
RIGHT JOIN "Order0" ON Customer0.id = Order0.customerId
RIGHT JOIN Pet0 ON Order0.petId = Pet0.id
WHERE ((Order0.petId IS NULL) AND (Pet0.id IS NOT NULL))
AND (Pet0.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order0".status = 'placed'] ;
--summary: [Order0] right [Pet0] ON Order0].petId = Pet0.id
-...> but was:<..." ON Customer0.id = ["Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE Pet0.category::name = 'Dogs' AND "Order0".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE (Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet0.category::name = 'Dogs' is TRUE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet0.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE NOT(Pet0.category::name = 'Dogs') AND ("Order0".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet0.category::name = 'Dogs' is FALSE
--(T) "Order0".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order0".status = 'placed']</location>
<sql>SELECT *
FROM Customer0
INNER JOIN "Order0" ON Customer0.id = "Order0".customerId
INNER JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE NOT("Order0".status = 'placed') AND (Pet0.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order0".status = 'placed' is FALSE
--(T) Pet0.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
LEFT JOIN "Order0" ON Customer0.id = "Order0".customerId
LEFT JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE ("Order0".customerId IS NULL) AND (Customer0.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet0.category::name = 'Dogs'] ; ["Order0".status = 'placed'] ;
--summary: [Customer0] left [Order0] ON Customer0.id = "Order0".customerId
--There exist some row in table Customer0
--which does not join to any table in Order0</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer0
RIGHT JOIN "Order0" ON Customer0.id = "Order0".customerId
RIGHT JOIN Pet0 ON "Order0".petId = Pet0.id
WHERE (("Order0".petId IS NULL) AND (Pet0.id IS NOT NULL))
AND (Pet0.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order0".status = 'placed'] ;
--summary: [Order0] right [Pet0] ON "Order0"].petId = Pet0.id
-...>
|
TestPetstoreDatagenLive.testPlacedPetOrdersByAddressAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLive.java#L1
Strings are different. First diff at line 8 column 42.
failed rules-placed-pet-orders-by-address-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet-orders-by-address-order-status.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Customer_address_xa.zip = '99999' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Customer_address_xa.zip = '99999' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Customer_address_xa.zip = '99999' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Customer_address_xa.zip = '99999')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Customer_address_xa.zip = '99999' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ;
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The following condition in the WHERE holds:
--WHERE "Order".status = 'placed'</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Order.customerId IS NULL) AND (Customer.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Customer_address_xa.zip = '99999'</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ; ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Customer_address_xa.zip = '99999' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Customer_address_xa.zip = '99999' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Customer_address_xa.zip = '99999' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Customer_address_xa.zip = '99999')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Customer_address_xa.zip = '99999' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ;
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The following condition in the WHERE holds:
--WHERE "Order".status = 'placed'</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (("Order".customerId IS NULL) AND (Customer.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Customer_address_xa.zip = '99999'</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ; ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLive.testTotalPetsToDeliverByAddress:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLive.java#L1
Strings are different. First diff at line 8 column 42.
failed rules-total-pets-by-address.xml.
- Visual diffs at: target/diff-petstore-rules-total-pets-by-address.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
HAVING count(distinct Customer_address_xa.zip)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up groups that are different only because of the filed: Customer_address_xa.zip</description>
</fpcrule>
<fpcrule><id>11</id><category>G</category><type>A</type><subtype>A</subtype><location>1.g.1.[SUM("Order".quantity)]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
HAVING count(distinct Customer_address_xa.zip)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up groups that are different only because of the filed: Customer_address_xa.zip</description>
</fpcrule>
<fpcrule><id>11</id><category>G</category><type>A</type><subtype>A</subtype><location>1.g.1.[SUM("Order".quantity)]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLive.testPlacedPetOrdersByCategoryAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLive.java#L1
Strings are different. First diff at line 8 column 42.
failed rules-placed-pet-orders-by-category-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet-orders-by-category-order-status.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Pet.category::name = 'Dogs' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet.category::name = 'Dogs' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet.category::name = 'Dogs' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Pet.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Pet.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet.category::name = 'Dogs'] ; ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Order.petId IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Pet.category::name = 'Dogs'</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Pet.category::name = 'Dogs' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet.category::name = 'Dogs' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet.category::name = 'Dogs' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Pet.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Pet.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet.category::name = 'Dogs'] ; ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (("Order".petId IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Pet.category::name = 'Dogs'</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLive.testTotalOrdersToDeliverByAddress:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLive.java#L1
Strings are different. First diff at line 8 column 42.
failed rules-total-pet-orders-by-address.xml.
- Visual diffs at: target/diff-petstore-rules-total-pet-orders-by-address.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLocal.testPlacedPetOrdersByAddressAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLocal.java#L140
Strings are different. First diff at line 8 column 42.
failed rules-placed-pet-orders-by-address-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet-orders-by-address-order-status.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Customer_address_xa.zip = '99999' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Customer_address_xa.zip = '99999' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Customer_address_xa.zip = '99999' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Customer_address_xa.zip = '99999')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Customer_address_xa.zip = '99999' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ;
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The following condition in the WHERE holds:
--WHERE "Order".status = 'placed'</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Order.customerId IS NULL) AND (Customer.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Customer_address_xa.zip = '99999'</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ; ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Customer_address_xa.zip = '99999' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Customer_address_xa.zip = '99999' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Customer_address_xa.zip = '99999']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Customer_address_xa.zip = '99999') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Customer_address_xa.zip = '99999' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Customer_address_xa.zip = '99999')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Customer_address_xa.zip = '99999' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ;
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The following condition in the WHERE holds:
--WHERE "Order".status = 'placed'</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (("Order".customerId IS NULL) AND (Customer.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Customer_address_xa.zip = '99999'</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Customer_address_xa.zip = '99999'] ; ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Customer_address_xa.zip = '99999' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLocal.testTotalPetsToDeliverByAddress:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLocal.java#L190
Strings are different. First diff at line 8 column 42.
failed rules-total-pets-by-address.xml.
- Visual diffs at: target/diff-petstore-rules-total-pets-by-address.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
HAVING count(distinct Customer_address_xa.zip)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up groups that are different only because of the filed: Customer_address_xa.zip</description>
</fpcrule>
<fpcrule><id>11</id><category>G</category><type>A</type><subtype>A</subtype><location>1.g.1.[SUM("Order".quantity)]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
HAVING count(distinct Customer_address_xa.zip)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up groups that are different only because of the filed: Customer_address_xa.zip</description>
</fpcrule>
<fpcrule><id>11</id><category>G</category><type>A</type><subtype>A</subtype><location>1.g.1.[SUM("Order".quantity)]</location>
<sql>SELECT Customer_address_xa.zip , SUM("Order".quantity)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLocal.testPlacedPetOrdersByCategoryAndOrderStatus:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLocal.java#L125
Strings are different. First diff at line 8 column 42.
failed rules-placed-pet-orders-by-category-order-status.xml.
- Visual diffs at: target/diff-petstore-rules-placed-pet-orders-by-category-order-status.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Pet.category::name = 'Dogs' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet.category::name = 'Dogs' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet.category::name = 'Dogs' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Pet.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Pet.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet.category::name = 'Dogs'] ; ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Order.petId IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Pet.category::name = 'Dogs'</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE Pet.category::name = 'Dogs' AND "Order".status = 'placed'</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>TT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) Pet.category::name = 'Dogs' is TRUE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.1.[Pet.category::name = 'Dogs']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT(Pet.category::name = 'Dogs') AND ("Order".status = 'placed')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) Pet.category::name = 'Dogs' is FALSE
--(T) "Order".status = 'placed' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>S</category><type>T</type><subtype>FT</subtype><location>1.w.2.["Order".status = 'placed']</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'placed') AND (Pet.category::name = 'Dogs')</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'placed' is FALSE
--(T) Pet.category::name = 'Dogs' is TRUE</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [Pet.category::name = 'Dogs'] ; ["Order".status = 'placed'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (("Order".petId IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs')</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: ["Order".status = 'placed'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order
--The following condition in the WHERE holds:
--WHERE Pet.category::name = 'Dogs'</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND (Pet.category::name = 'Dogs' AND "Order".status = 'placed')</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>9</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT *
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order"].petId = Pet.id
...>
|
TestPetstoreDatagenLocal.testTotalOrdersToDeliverByAddress:
st-tdg-test/src/test/java/test4giis/tdrules/tdg/st/test/petstore/TestPetstoreDatagenLocal.java#L176
Strings are different. First diff at line 8 column 42.
failed rules-total-pet-orders-by-address.xml.
- Visual diffs at: target/diff-petstore-rules-total-pet-orders-by-address.xml.html
expected:<...r" ON Customer.id = [Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = Order.customerId
LEFT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = Order.customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Order.petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON Order.petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = Order.customerId
RIGHT JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order.petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = Order.customerId
INNER JOIN Pet ON Order].petId = Pet.id
...> but was:<...r" ON Customer.id = ["Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip</parsedsql>
<fpcrules>
<fpcrule><id>1</id><category>S</category><type>T</type><subtype>FF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE NOT("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(F) "Order".status = 'approved' is FALSE</description>
</fpcrule>
<fpcrule><id>2</id><category>S</category><type>T</type><subtype>TF</subtype><location>1.w.1.[WHERE "Order".status = 'approved']</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>--A set of joined tables such that:
--The WHERE condition fulfills:
--(T) "Order".status = 'approved' is TRUE</description>
</fpcrule>
<fpcrule><id>3</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.1.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Customer_address_xa.fk_xa IS NULL) AND (Customer.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Customer] left [Customer_address_xa] ON Customer.id = Customer_address_xa.fk_xa
--There exist a set of rows joined from tables Customer, Order, Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Customer_address_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>4</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.2.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
LEFT JOIN "Order" ON Customer.id = "Order".customerId
LEFT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".customerId IS NULL) AND (Customer.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Customer] left [Order] ON Customer.id = "Order".customerId
--There exist a set of rows joined from tables Customer, Customer_address_xa
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>5</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.3.[INNER JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ("Order".petId IS NULL) AND (Pet.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Order] right [Pet] ON "Order".petId = Pet.id
--There exist a set of rows joined from tables Pet, Pet_tags_xa, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Order</description>
</fpcrule>
<fpcrule><id>6</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.4.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
INNER JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_tags_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_tags_xa] ON Pet.id = Pet_tags_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_photoUrls_xa, Category Pet_category_xref
--which does not join to any table in Pet_tags_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>7</id><category>J</category><type>L</type><subtype>O</subtype><location>1.j.5.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
INNER JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
INNER JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
INNER JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE ((Pet_photoUrls_xa.fk_xa IS NULL) AND (Pet.id IS NOT NULL))
AND ("Order".status = 'approved')
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--summary: [Pet] left [Pet_photoUrls_xa] ON Pet.id = Pet_photoUrls_xa.fk_xa
--There exist a set of rows joined from tables Customer, Customer_address_xa, Order, Pet, Pet_tags_xa, Category Pet_category_xref
--which does not join to any table in Pet_photoUrls_xa
--The WHERE condition is TRUE.</description>
</fpcrule>
<fpcrule><id>8</id><category>J</category><type>R</type><subtype>O</subtype><location>1.j.6.[LEFT JOIN]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
RIGHT JOIN "Order" ON Customer.id = "Order".customerId
RIGHT JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
RIGHT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE (Pet.category::id IS NULL) AND (Pet_category_xref.id IS NOT NULL)
GROUP BY Customer_address_xa.zip</sql>
<description>
--The JOIN tables fulfill:
--COMMENT: Reduced conditions: [WHERE "Order".status = 'approved'] ;
--summary: [Pet] right [Category Pet_category_xref] ON Pet.category::id = Pet_category_xref.id
--There exist some row in table Category Pet_category_xref
--which does not join to any table in Pet</description>
</fpcrule>
<fpcrule><id>9</id><category>G</category><type>G</type><subtype>G</subtype><location>1.g.[GROUP BY Customer_address_xa.zip]</location>
<sql>SELECT Customer_address_xa.zip , COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order".petId = Pet.id
LEFT JOIN Pet_tags_xa ON Pet.id = Pet_tags_xa.fk_xa
LEFT JOIN Pet_photoUrls_xa ON Pet.id = Pet_photoUrls_xa.fk_xa
LEFT JOIN Category Pet_category_xref ON Pet.category::id = Pet_category_xref.id
WHERE "Order".status = 'approved'
GROUP BY Customer_address_xa.zip
HAVING count(*)>1</sql>
<description>--A set of joined tables such that:
--The WHERE condition is TRUE.
--There exist a set of rows in the input tables that make up a group with at least two rows</description>
</fpcrule>
<fpcrule><id>10</id><category>G</category><type>G</type><subtype>A</subtype><location>1.g.1.[Customer_address_xa.zip]</location>
<sql>SELECT COUNT(*)
FROM Customer
LEFT JOIN Customer_address_xa ON Customer.id = Customer_address_xa.fk_xa
INNER JOIN "Order" ON Customer.id = "Order".customerId
INNER JOIN Pet ON "Order"].petId = Pet.id
...>
|
test (Petstore)
❌ Tests reported 10 failures
|
test (GestaoHospital)
No files were found with the provided path: **/target/site
**/target/surefire-reports
**/target/pit-reports
**/target/out
**/target/*.html
**/target/*.log. No artifacts will be uploaded.
|
test (Market)
No files were found with the provided path: **/target/site
**/target/surefire-reports
**/target/pit-reports
**/target/out
**/target/*.html
**/target/*.log. No artifacts will be uploaded.
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
test-report-ALL
Expired
|
568 KB |
|
test-report-files-Eval
Expired
|
129 KB |
|
test-report-files-Petstore
Expired
|
423 KB |
|