input: Write a function to generate n-grams of the given text with a specified window size. If the window size is greater than the text length, return an empty list. Use the collections.Counter to count the frequency of each n-gram.
  
  from collections import Counter
  
  def generate_ngrams(text, window_size):
      text = text.lower().split(' ')
      if window_size > len(text):
          return []
      ngrams = []
      for n in range(window_size, len(text)+1):
          for i in range(len(text)-n+1):
              ngrams.append(' '.join(text[i:i+n]))
      return Counter(ngrams)
  
  text = "The quick brown fox jumps over the lazy dog"
  window_size = 3
  
  ngrams_count = generate_ngrams(text, window_size)
  
  assert ngrams_count == Counter({'the quick brown': 3,
                                  'quick brown fox': 2,
                                  'over the lazy': 1,
                                  'brown fox jumps': 1,
                                  'fox jumps over': 1,
                                  'the lazy dog': 1,
                                  'jumps over the': 1,
                                  'quick brown fox jumps': 1})
  
  text = "The quick brown fox jumps over the lazy dog"
  window_size = 2
  
  ngrams_count = generate_ngrams(text, window_size)
  
  assert ngrams_count == Counter({'the quick': 2,
                                  'quick brown': 2,
                                  'brown fox': 1,
                                  'fox jumps': 1,
                                  'jumps over': 1,
                                  'over the': 1,
                                  'the lazy': 1,
                                  'lazy dog': 1})
  
  text = ""
  window_size = 3
  
  ngrams_count = generate_ngrams(text, window_size)
  
  assert ngrams_count == []
output: 
  def generate_ngrams(text, window_size):
      text = text.lower().split(' ')
      if window_size > len(text):
          return []
      ngrams = []
      for n in range(window_size, len(text)+1):
          for i in range(len(text)-n+1):
              ngrams.append(' '.join(text[i:i+n]))
      return Counter(ngrams)
  