#include <bits/stdc++.h>
using namespace std;
bool sortbysec(const pair<int, int> &a, const pair<int, int> &b) {
  return (a.second < b.second);
}
int GCD(int a, int b) {
  if (!b) return a;
  return GCD(b, a % b);
}
int LCM(int a, int b) { return (a * b) / GCD(a, b); }
long long n, x, i, j, T, c, ii;
string s, t;
bool f;
vector<long long> v[30];
vector<long long> v1;
vector<long long>::iterator vx;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(NULL);
  cin >> T;
  while (T--) {
    cin >> s >> t;
    for (auto &vi : v) {
      vi.clear();
    }
    f = 0;
    c = 1;
    j = -1;
    for (i = 0; i < s.size(); i++) {
      v[s[i] - 'a'].push_back(i);
    }
    for (i = 0; i < t.size(); i++) {
      ii = t[i] - 'a';
      if (v[ii].empty()) {
        f = 1;
        break;
      }
      vx = upper_bound(v[ii].begin(), v[ii].end(), j);
      x = vx - v[ii].begin();
      if (x >= v[ii].size()) {
        j = -1;
        c++;
        vx = upper_bound(v[ii].begin(), v[ii].end(), j);
        x = vx - v[ii].begin();
      }
      j = v[ii][x];
    }
    if (f)
      cout << "-1\n";
    else
      cout << c << "\n";
  }
  return 0;
}
