# Copyright 2003 by Iddo Friedberg.  All rights reserved.
# This code is part of the Biopython distribution and governed by its
# license.  Please see the LICENSE file that should have been included
# as part of this package.

from __future__ import print_function

from Bio.SeqUtils import CodonUsage
import os
import sys

# first make a CAI object
X = CodonUsage.CodonAdaptationIndex()
# now generate an index from a file
if os.path.exists("./CodonUsage/HighlyExpressedGenes.txt"):
    X.generate_index("./CodonUsage/HighlyExpressedGenes.txt")
elif os.path.exists("./Tests/CodonUsage/HighlyExpressedGenes.txt"):
    X.generate_index("./Tests/CodonUsage/HighlyExpressedGenes.txt")
else:
    print("Cannot find the file HighlyExpressedGene.txt\nMake sure you run the tests from within the Tests folder")
    sys.exit()
# alternatively you could use any predefined dictionary like this:
# from CaiIndices import SharpIndex # you can save your dictionary in this file.
# X.SetCaiIndex(SharpIndex)

print("The current index used:")
X.print_index()

print("-" * 60)
print("codon adaptation index for test gene: %.2f" % X.cai_for_gene("ATGAAACGCATTAGCACCACCATTACCACCACCATCACCATTACCACAGGTAACGGTGCGGGCTGA"))
