// Path: app/src/main/java/org/secuso/privacyfriendlymemory/model/MemoGameCard.java
// public class MemoGameCard {
// 
//     private final int matchingId;
//     private final int resImageID;
//     private final Uri imageUri;
// 
//     public MemoGameCard(int matchingId, @DrawableRes int resImageID, Uri imageUri){
//         this.matchingId = matchingId;
//         this.resImageID = resImageID;
//         this.imageUri = imageUri;
//     }
// 
// 
//     public int getMatchingId() {
//         return matchingId;
//     }
// 
// 
//     public int getResImageID() {
//         return resImageID;
//     }
// 
//     public Uri getImageUri(){ return imageUri; }
// }
// 
// Path: app/src/main/java/org/secuso/privacyfriendlymemory/model/MemoGameDeck.java
// public class MemoGameDeck {
// 
//     // mapping between position(k), card(v)
//     private Map<Integer, MemoGameCard> deck   = new HashMap<>();
// 
//     public MemoGameDeck(List<Integer> imagesResIds){
//         // generate for each image two cards with the same matching id
//         int matchingId = 1;
//         List<MemoGameCard> cards = new LinkedList<>();
//         for(Integer imageResId : imagesResIds){
//             for(int i = 0; i<=1;i++) {
//                 MemoGameCard card = new MemoGameCard(matchingId, imageResId, null);
//                 cards.add(card);
//             }
//             matchingId++;
//         }
// 
//         // generate random position for cards and map between position and card
//         Collections.shuffle(cards);
// 
//         Integer position = 0;
//         for(MemoGameCard card : cards){
//             deck.put(position, card);
//             position++;
//         }
//     }
// 
//     public MemoGameDeck(Set<Uri> imageUris){
//         // generate for each image two cards with the same matching id
//         int matchingId = 1;
//         List<MemoGameCard> cards = new LinkedList<>();
//         for(Uri imageUri : imageUris){
//             for(int i = 0; i<=1;i++) {
//                 MemoGameCard card = new MemoGameCard(matchingId, 0, imageUri);
//                 cards.add(card);
//             }
//             matchingId++;
//         }
// 
//         // generate random position for cards and map between position and card
//         Collections.shuffle(cards);
// 
//         Integer position = 0;
//         for(MemoGameCard card : cards){
//             deck.put(position, card);
//             position++;
//         }
//     }
//     
//     public Map<Integer, MemoGameCard> getDeck(){
//         return deck;
//     }
// 
// 
// }


import org.junit.Before;
import org.junit.Test;
import org.secuso.privacyfriendlymemory.model.MemoGameCard;
import org.secuso.privacyfriendlymemory.model.MemoGameDeck;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import static org.junit.Assert.assertEquals;
package org.secuso.privacyfriendlymemory;





/**
 * Created by Hannes on 21.05.2016.
 */
public class MemoGameDeckTest {

    private Map<Integer, MemoGameCard> cardMapping        = new HashMap<>();
    private final static List<Integer> IMAGE_RES_IDS    = new LinkedList<>();

    static{
        IMAGE_RES_IDS.add(1);
        IMAGE_RES_IDS.add(2);
        IMAGE_RES_IDS.add(3);
    }

    @Before
    public void setupMapping(){
// Path: app/src/main/java/org/secuso/privacyfriendlymemory/model/MemoGameCard.java
// public class MemoGameCard {
// 
//     private final int matchingId;
//     private final int resImageID;
//     private final Uri imageUri;
// 
//     public MemoGameCard(int matchingId, @DrawableRes int resImageID, Uri imageUri){
//         this.matchingId = matchingId;
//         this.resImageID = resImageID;
//         this.imageUri = imageUri;
//     }
// 
// 
//     public int getMatchingId() {
//         return matchingId;
//     }
// 
// 
//     public int getResImageID() {
//         return resImageID;
//     }
// 
//     public Uri getImageUri(){ return imageUri; }
// }
// 
// Path: app/src/main/java/org/secuso/privacyfriendlymemory/model/MemoGameDeck.java
// public class MemoGameDeck {
// 
//     // mapping between position(k), card(v)
//     private Map<Integer, MemoGameCard> deck   = new HashMap<>();
// 
//     public MemoGameDeck(List<Integer> imagesResIds){
//         // generate for each image two cards with the same matching id
//         int matchingId = 1;
//         List<MemoGameCard> cards = new LinkedList<>();
//         for(Integer imageResId : imagesResIds){
//             for(int i = 0; i<=1;i++) {
//                 MemoGameCard card = new MemoGameCard(matchingId, imageResId, null);
//                 cards.add(card);
//             }
//             matchingId++;
//         }
// 
//         // generate random position for cards and map between position and card
//         Collections.shuffle(cards);
// 
//         Integer position = 0;
//         for(MemoGameCard card : cards){
//             deck.put(position, card);
//             position++;
//         }
//     }
// 
//     public MemoGameDeck(Set<Uri> imageUris){
//         // generate for each image two cards with the same matching id
//         int matchingId = 1;
//         List<MemoGameCard> cards = new LinkedList<>();
//         for(Uri imageUri : imageUris){
//             for(int i = 0; i<=1;i++) {
//                 MemoGameCard card = new MemoGameCard(matchingId, 0, imageUri);
//                 cards.add(card);
//             }
//             matchingId++;
//         }
// 
//         // generate random position for cards and map between position and card
//         Collections.shuffle(cards);
// 
//         Integer position = 0;
//         for(MemoGameCard card : cards){
//             deck.put(position, card);
//             position++;
//         }
//     }
//     
//     public Map<Integer, MemoGameCard> getDeck(){
//         return deck;
//     }
// 
// 
// }


// Path: app/src/test/java/org/secuso/privacyfriendlymemory/MemoGameDeckTest.java
import org.junit.Before;
import org.junit.Test;
import org.secuso.privacyfriendlymemory.model.MemoGameCard;
import org.secuso.privacyfriendlymemory.model.MemoGameDeck;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import static org.junit.Assert.assertEquals;

package org.secuso.privacyfriendlymemory;





/**
 * Created by Hannes on 21.05.2016.
 */
public class MemoGameDeckTest {

    private Map<Integer, MemoGameCard> cardMapping        = new HashMap<>();
    private final static List<Integer> IMAGE_RES_IDS    = new LinkedList<>();

    static{
        IMAGE_RES_IDS.add(1);
        IMAGE_RES_IDS.add(2);
        IMAGE_RES_IDS.add(3);
    }

    @Before
    public void setupMapping(){
        MemoGameDeck deck = new MemoGameDeck(IMAGE_RES_IDS);