| BackLINQ | Microsoft | LINQBridge | LINQ-SQO | Mono | Method under test | Test condition | Expected result |
| PASS | PASS | PASS | FAIL | PASS | Aggregate | Add func on integers | Returns total |
| PASS | PASS | PASS | PASS | PASS | Aggregate | Add func on integers with seed | Returns total |
| PASS | PASS | PASS | FAIL | PASS | Aggregate | Empty source | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | Aggregate | Null func | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Aggregate | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | All | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | All | Some source elements not satifying predicate | Returns false |
| PASS | PASS | PASS | PASS | PASS | All | Source elements satisfying predicate | Returns true |
| PASS | PASS | PASS | FAIL | PASS | Any | Empty source | Returns false |
| PASS | PASS | PASS | FAIL | PASS | Any | Non empty source | Returns true |
| PASS | PASS | PASS | PASS | PASS | Any | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Any(Predicate) | Empty source | Returns false |
| PASS | PASS | PASS | PASS | PASS | Any(Predicate) | Non empty source | Returns true |
| PASS | PASS | PASS | PASS | PASS | AsEnumerable | Non null source | Returns source reference |
| PASS | PASS | PASS | PASS | PASS | AsEnumerable | Null source | Returns null |
| PASS | PASS | FAIL | PASS | PASS | Average | Array of doubles | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Array of floats | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Array of nullable floats | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Decimals | Returns toleratable average |
| PASS | PASS | PASS | PASS | PASS | Average | Empty array of nullable integers | Returns null |
| PASS | PASS | FAIL | PASS | PASS | Average | Empty source | Throws InvalidOperationException |
| PASS | PASS | FAIL | PASS | PASS | Average | Longs | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Nullable decimals | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Nullable doubles | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Nullable ints | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average | Nullable longs | Returns average |
| PASS | PASS | FAIL | PASS | PASS | Average(Selector) | Array of persons | Average age |
| PASS | PASS | PASS | PASS | PASS | Cast | Integers | Yields upcasted objects |
| PASS | PASS | PASS | PASS | PASS | Cast | Invalid source | Throws InvalidCastException |
| PASS | PASS | FAIL | FAIL | PASS | Cast | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Cast | Object source containing integers | Yields downcasted integers |
| PASS | PASS | FAIL | FAIL | PASS | Concat | First source null | Throws ArgumentNullException |
| PASS | PASS | FAIL | FAIL | PASS | Concat | Second source null | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Concat | Two lists | Correct order |
| PASS | PASS | PASS | PASS | PASS | Contains | Ints containing passed value | Returns true |
| PASS | PASS | PASS | PASS | PASS | Contains | Ints that do not contain passed value | Returns false |
| PASS | PASS | PASS | PASS | PASS | Contains | List of ints containing passed value | Returns true |
| PASS | PASS | PASS | PASS | PASS | Count | Ints | Returns number of elements |
| PASS | PASS | PASS | PASS | PASS | Count(Predicate) | Strings | Counts only strings with even length |
| PASS | PASS | PASS | FAIL | PASS | DefaultIfEmpty(DefaultValue) | Integers | Yields integers in order |
| PASS | PASS | PASS | FAIL | PASS | DefaultIfEmpty | Empty integers source | Returns zero |
| PASS | PASS | PASS | FAIL | PASS | DefaultIfEmpty | Empty integers source with non zero default | Return non zero default |
| PASS | PASS | PASS | FAIL | PASS | DefaultIfEmpty | Inegers | Yields integers in order |
| PASS | PASS | PASS | PASS | PASS | Distinct | Integers with some duplicates | Yields integers in source order without duplicates |
| PASS | PASS | FAIL | PASS | PASS | Distinct | Mixed source strings with case ignoring comparer | Yields first case of each distinct string in source order |
| PASS | PASS | FAIL | FAIL | PASS | Distinct | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | ElementAt | Index out of range | Throws ArgumentOutOfRangeException |
| PASS | PASS | PASS | PASS | PASS | ElementAt | Integers | Returns correct values |
| PASS | PASS | PASS | PASS | PASS | ElementAt | Negative index | Throws ArgumentOutOfRangeException |
| PASS | PASS | PASS | PASS | PASS | ElementAtOrDefault | Int array | Returns correct value |
| PASS | PASS | PASS | PASS | PASS | ElementAtOrDefault | Integers | Returns zero if index out of range |
| PASS | PASS | PASS | PASS | PASS | ElementAtOrDefault | List of ints | Returns correct element |
| PASS | PASS | FAIL | PASS | PASS | ElementAtOrDefault | Negative index | Returns default |
| PASS | PASS | PASS | PASS | PASS | ElementAtOrDefault | Object array | Returns correct value |
| PASS | PASS | PASS | PASS | PASS | ElementAtOrDefault | Object array | Returns null if index out of range |
| PASS | PASS | PASS | PASS | PASS | Empty | | Yields empty source |
| PASS | PASS | FAIL | FAIL | PASS | Except(second) | Argument null | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Except(Second) | Valid argument | Returns correct enumerable |
| PASS | PASS | FAIL | PASS | PASS | Except | Second arg comparer arg | Comparer is used |
| PASS | PASS | PASS | FAIL | PASS | First | Empty source | Throws InvalidOperationException |
| PASS | PASS | PASS | FAIL | PASS | First | Integers | Returns first |
| PASS | PASS | PASS | PASS | PASS | First | Integers with evens predicate | First even integer |
| PASS | PASS | PASS | PASS | PASS | First | Integers with non matching predicate | Throws InvalidOperationException |
| PASS | PASS | PASS | FAIL | PASS | FirstOrDefault | Empty boolean source | Returns false |
| PASS | PASS | PASS | FAIL | PASS | FirstOrDefault | Objects | Returns first reference |
| PASS | PASS | PASS | PASS | PASS | FirstOrDefault(Predicate) | No matches in array | Returns default value of type |
| PASS | PASS | PASS | PASS | PASS | FirstOrDefault(Predicate) | Null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | FirstOrDefault(Predicate) | Valid predicate | Returns first matching item |
| PASS | PASS | PASS | FAIL | PASS | GroupBy(KeySelector) | Null as key selector | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | GroupBy(KeySelector) | Valid arguments | Correct case sensitive grouping |
| PASS | PASS | PASS | PASS | PASS | GroupBy(KeySelector) | Valid arguments | Correct grouping |
| PASS | PASS | PASS | PASS | PASS | GroupBy(KeySelector, Comparer) | Keys that differ in casing non case sensitive string comparer | Correct grouping |
| PASS | PASS | PASS | PASS | PASS | GroupBy(KeySelector, ElementSelector) | Valid arguments | Correct grouping and projection |
| PASS | PASS | FAIL | PASS | PASS | GroupBy(KeySelector, ElementSelector, ResultSelector) | Valid arguments | Correct grouping and transforming |
| PASS | PASS | FAIL | PASS | PASS | GroupBy(KeySelector, ElementSelector, ResultSelector, Comparer) | Valid arguments | Correct grouping and transforming |
| PASS | PASS | FAIL | PASS | PASS | GroupBy(KeySelector, ResultSelector) | Valid arguments | Correct grouping processing |
| PASS | PASS | FAIL | PASS | PASS | GroupBy(KeySelector, ResultSelector, Comparer) | Valid arguments | Correct grouping and transforming |
| PASS | PASS | PASS | PASS | PASS | GroupByKey(KeySelector, ElementSelector, Comparer) | Valid arguments | Correct grouping and processing |
| PASS | PASS | PASS | FAIL | PASS | GroupJoin(Inner, OuterKeySelector, InnerKeySelector, ResultSelector) | Pass null as outer key selector | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | GroupJoin(Inner, OuterKeySelector, InnerKeySelector, ResultSelector) | Valid arguments | Correct grouping and joining |
| PASS | PASS | FAIL | PASS | PASS | GroupJoin(Inner, OuterKeySelector, InnerKeySelector, ResultSelector, Comparer) | Valid arguments | Correct grouping and joining |
| PASS | PASS | PASS | PASS | PASS | Intersect | Integer sources | Yields common set |
| PASS | PASS | FAIL | FAIL | PASS | Intersect | Null second source | Throws ArgumentNullException |
| PASS | PASS | FAIL | PASS | PASS | Intersect | String sources with mixed casing and case insensitive comparer | Yields common set from first source |
| PASS | PASS | PASS | FAIL | PASS | Join(Inner, OuterKeySelector, InnerKeySelector, ResultSelector) | Passing pets and owners | Pets are correctly assigned to owners |
| PASS | PASS | PASS | FAIL | PASS | Join(Inner, OuterKeySelector, InnerKeySelector, ResultSelector) | Pass null as argument | Throws ArgumentNullException |
| PASS | PASS | FAIL | FAIL | PASS | Join(Inner, OuterKeySelector, InnerKeySelector, ResultSelector, Comparer) | Pet owners names casing is inconsistent | Case insensitive join is performed |
| PASS | PASS | FAIL | FAIL | FAIL | Last | Empty integer list optimization | Throws InvalidOperationException |
| PASS | PASS | FAIL | FAIL | FAIL | Last | Integer list optimization | Returns last element without enumerating |
| PASS | PASS | PASS | FAIL | PASS | Last | Integers | Returns last element |
| PASS | PASS | PASS | PASS | PASS | Last(Predicate) | List of ints | Returns last matching element |
| PASS | PASS | PASS | PASS | PASS | Last(Predicate) | No matching element | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | Last(Predicate) | Null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | FAIL | PASS | LastOrDefault | Empty source | Returns zero |
| PASS | PASS | PASS | FAIL | PASS | LastOrDefault | Non empty list | Returns last element |
| PASS | PASS | PASS | PASS | PASS | LastOrDefault(Predicate) | No matching element | Returns zero |
| PASS | PASS | PASS | PASS | PASS | LastOrDefault(Predicate) | Valid arguments | Retuns last matching element |
| PASS | PASS | PASS | PASS | PASS | LongCount(Predicate) | Null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | LongCount(Predicate) | Valid arguments | Returns correct numer of matching elements |
| PASS | PASS | PASS | PASS | PASS | LongCount | Valid argument | Returns correct number of elements |
| PASS | PASS | FAIL | FAIL | PASS | Max | Empty list | Throws InvalidOperationException |
| PASS | PASS | PASS | FAIL | PASS | Max | Empty nullable integer array | Returns null |
| PASS | PASS | FAIL | FAIL | PASS | Max | Integers | Returns max value |
| PASS | PASS | FAIL | FAIL | PASS | Max | List with nullable type | Returns maximum |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable decimals | Returns max value |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable doubles | Returns max value |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable floats | Returns max value |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable integer array with nulls only | Returns null |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable list | Returns max non null value |
| PASS | PASS | FAIL | FAIL | PASS | Max | Nullable longs | Returns max value |
| PASS | PASS | FAIL | FAIL | PASS | Max(Selector) | List of objects | Returns max selected value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Empty list | Throws InvalidOperationException |
| PASS | PASS | FAIL | FAIL | PASS | Min | Integers with some null | Returns minimum non null value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Nullable decimals | Returns minimum non null value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Nullable doubles | Returns minimum non null value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Nullable floats | Returns minimum non null value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Nullable longs | Returns minimum non null value |
| PASS | PASS | FAIL | FAIL | PASS | Min | Strings with length selector | Returns minimum non null string length |
| PASS | PASS | PASS | PASS | PASS | OfType | Enumerable with elements of different types | Only decimals are returned |
| PASS | PASS | PASS | PASS | PASS | OrderBy(KeySelector) | Array of persons | Persons are ordered by age |
| PASS | PASS | FAIL | PASS | FAIL | OrderBy(KeySelector) | Data with duplicate keys | Yields stably sorted data |
| PASS | PASS | PASS | PASS | PASS | OrderBy(KeySelector) | Null as key selector | Throws ArgumentNullException |
| PASS | PASS | FAIL | PASS | PASS | OrderBy(KeySelector, Comparer) | Array of persons and reversecomparer | Persons are ordered by age using reversecomparer |
| PASS | PASS | PASS | PASS | PASS | OrderByDescending(KeySelector) | Array of persons | Persons are ordered by age descending |
| PASS | PASS | FAIL | FAIL | PASS | Range | Negative count | Throws ArgumentOutOfRangeException |
| PASS | PASS | FAIL | FAIL | PASS | Range | Produce range that leads to overflow | Throws ArgumentOutOfRangeException |
| PASS | PASS | PASS | PASS | PASS | Range | Start10 count5 | Ints from10 to14 |
| PASS | PASS | FAIL | FAIL | PASS | Repeat | Pass negative count | Throws ArgumentOutOfRangeException |
| PASS | PASS | PASS | PASS | PASS | Repeat | String argument count2 | Return value contains string argument twice |
| PASS | PASS | PASS | PASS | PASS | Reverse | Series of ints | Ints are correctly reversed |
| PASS | PASS | PASS | PASS | PASS | Select | Array of persons | Age of persons is selected according to passed lambda expression |
| PASS | PASS | PASS | PASS | PASS | Select(Selector) | Lambda that takes index as argument | Return value contains elements multiplied by index |
| PASS | PASS | PASS | PASS | FAIL | SelectMany(CollectionSelector, ResultSelector) | Array of pet owner | Result contains element for each pet a pet owner has |
| PASS | PASS | PASS | PASS | PASS | SelectMany(Selector3) | Array of pet owners | Selector uses element index argument |
| PASS | PASS | PASS | PASS | PASS | SelectMany(Selector) | Array of persons | Returns a sequence with all letters of firstnames |
| PASS | PASS | PASS | FAIL | FAIL | SequenceEqual | Different sequences | Returns true |
| PASS | PASS | PASS | FAIL | FAIL | SequenceEqual | Equal sequences | Returns true |
| PASS | PASS | FAIL | FAIL | FAIL | SequenceEqual | Floats with tolerant comparer | Comparer is used |
| PASS | PASS | PASS | PASS | FAIL | SequenceEqual | Longer second sequence | Returns false |
| PASS | PASS | PASS | PASS | PASS | SequenceEqual | Null first sequence | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | SequenceEqual | Null second sequence | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | FAIL | SequenceEqual | Shorter second sequence | Returns false |
| PASS | PASS | PASS | FAIL | PASS | Single | Empty source | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | Single(Predicate) | Array of int with only one element satisfying condition | Returns only this element |
| PASS | PASS | PASS | PASS | PASS | Single(Predicate) | More than one element satisfied condition | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | Single(Predicate) | No element satisfies condition | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | Single(Predicate) | Pass null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Single(Predicate) | Source is empty | Throws InvalidOperationException |
| PASS | PASS | PASS | FAIL | PASS | Single | Source with more than one element | Throws InvalidOperationException |
| PASS | PASS | PASS | FAIL | PASS | Single | Source with one element | Returns single element |
| PASS | PASS | PASS | FAIL | PASS | SingleOrDefault | Empty source | Returns zero |
| PASS | PASS | PASS | FAIL | PASS | SingleOrDefault | More than one element in source | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | SingleOrDefault(Predicate) | Empty source | Returns zero |
| PASS | PASS | PASS | PASS | PASS | SingleOrDefault(Predicate) | More than one element satisfies condition | Throws InvalidOperationException |
| PASS | PASS | PASS | PASS | PASS | SingleOrDefault(Predicate) | No element satisfies condition | Returns zero |
| PASS | PASS | PASS | PASS | PASS | SingleOrDefault(Predicate) | One element satisfies condition | Returns correct element |
| PASS | PASS | PASS | PASS | PASS | SingleOrDefault(Predicate) | Pass null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | FAIL | PASS | SingleOrDefault | Source with one element | Returns single element |
| PASS | PASS | PASS | FAIL | PASS | Skip | Ints from one to ten and fife as second arg | Ints from six to ten |
| PASS | PASS | PASS | FAIL | PASS | Skip | Pass negative value as count | Same behavior as microsoft implementation |
| PASS | PASS | PASS | FAIL | PASS | SkipWhile(Predicate3) | Ints from one to nine | Elements are skipped while index less than five |
| PASS | PASS | PASS | FAIL | PASS | SkipWhile(Predicate) | Array of ints with elements not satisfying condition at the end | Ints at the end are part of result |
| PASS | PASS | PASS | FAIL | PASS | SkipWhile(Predicate) | Ints from one to five | Elements are skipped as long as condition is satisfied |
| PASS | PASS | FAIL | FAIL | PASS | SkipWhile(Predicate) | Pass null as predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | FAIL | PASS | SkipWhile(Predicate) | Predicate always true | Empty result |
| PASS | PASS | PASS | PASS | PASS | Sum | Decimals | Returns sum |
| PASS | PASS | PASS | PASS | PASS | Sum | Doubles | Returns sum |
| PASS | PASS | PASS | PASS | PASS | Sum | Floats | Returns sum |
| PASS | PASS | PASS | PASS | PASS | Sum | Ints from one to ten | Result is fifty five |
| PASS | PASS | PASS | PASS | PASS | Sum | Longs | Returns sum |
| PASS | PASS | PASS | PASS | FAIL | Sum | Nullable decimals | Returns sum |
| PASS | PASS | PASS | PASS | FAIL | Sum | Nullable doubles | Returns sum |
| PASS | PASS | PASS | PASS | FAIL | Sum | Nullable floats | Returns sum |
| PASS | PASS | PASS | PASS | FAIL | Sum | Nullable ints as arguments | Returns correct sum |
| PASS | PASS | PASS | PASS | FAIL | Sum | Nullable longs | Returns sum |
| PASS | PASS | PASS | PASS | PASS | Sum(Selector) | String array | Result is sum of string lengthes |
| PASS | PASS | PASS | PASS | FAIL | Sum | Sum of arguments causes overflow | Throws OverflowException |
| PASS | PASS | PASS | FAIL | PASS | Take | Count bigger than list | Returns all elements |
| PASS | PASS | PASS | FAIL | PASS | Take | Ints from one to six and three as count | Ints from one to three are returned |
| PASS | PASS | PASS | PASS | PASS | TakeWhile | Ints from one to ten and condition that square is smaller than50 | Ints from one to seven |
| PASS | PASS | FAIL | FAIL | PASS | TakeWhile | Pass null as predicate | Throws ArgumentNullException |
| PASS | PASS | FAIL | PASS | FAIL | ThenBy(KeySelector) | Data with duplicate keys | Yields stably sorted data |
| PASS | PASS | PASS | PASS | PASS | ThenBy | Null key selector | Throws ArgumentNullException |
| PASS | PASS | FAIL | PASS | PASS | ThenBy | Null source | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | ThenByDescending(KeySelector, Comparer) | String array | Correct ordering |
| PASS | PASS | PASS | PASS | PASS | ToArray | Ints from one to ten | Result is int array containing all elements |
| PASS | PASS | PASS | PASS | PASS | ToDictionary(KeySelector) | Duplicate keys | Throws ArgumentException |
| PASS | PASS | PASS | PASS | PASS | ToDictionary(KeySelector) | Key selector yields null | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | ToDictionary(KeySelector) | Valid arguments | Key selector is used for keys in dictionary |
| PASS | PASS | PASS | PASS | PASS | ToDictionary(KeySelector, ElementSelector) | Ints from one to ten | Key selector and element selector are used for dictionary elements |
| PASS | PASS | PASS | PASS | PASS | ToList | Ints from one to ten | Returns list of ints containing all elements |
| PASS | PASS | PASS | PASS | PASS | ToLookup(KeySelector) | Strings | Returns lookup array with string length as key |
| PASS | PASS | PASS | PASS | PASS | ToLookup(KeySelector, ElementSelector) | Strings | Element selector is used |
| PASS | PASS | FAIL | FAIL | PASS | Union(Second) | Pass null as argument | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Union(Second) | Valid int arguments | No duplicates and in source order |
| PASS | PASS | FAIL | PASS | PASS | Union(Second, Comparer) | Upper case and lower case strings | Passed comparer is used |
| PASS | PASS | PASS | PASS | PASS | Where | Integers with evens predicate | Yields even integers |
| PASS | PASS | FAIL | FAIL | PASS | Where | Null predicate | Throws ArgumentNullException |
| PASS | PASS | PASS | PASS | PASS | Where | Strings with even index predicate | Yields elements with even index |