input: Write a function to generate sample data for a web application using Python's faker library. The function should return a list of tuples with three columns of data: name, email, and age, for 10 individuals. Each tuple should contain a fake name, a fake email, and an age between 18 and 60 years.
  assert generate_samples() == [('John Doe', 'john.doe@example.com', 30), ('Jane Smith', 'jane.smith@example.com', 25), ('Alice Johnson', 'alice.johnson@example.com', 45), ('Bob Brown', 'bob.brown@example.com', 32), ('Charlie Davis', 'charlie.davis@example.com', 22), ('Eve White', 'eve.white@example.com', 28), ('Frank Black', 'frank.black@example.com', 50), ('Grace Green', 'grace.green@example.com', 40), ('Henry Blue', 'henry.blue@example.com', 27), ('Ivy Red', 'ivy.red@example.com', 35)]
output: 
  from faker import Faker
  import random
  
  def generate_samples():
      fake = Faker()
      samples = []
      for _ in range(10):
          name = fake.name()
          email = fake.email()
          age = random.randint(18, 60)
          samples.append((name, email, age))
      return samples
  